souliss / bindingopenhab

Binding to connect your Souliss Network to openHAB
10 stars 6 forks source link

T51 can't using. #12

Closed brutevinch closed 8 years ago

brutevinch commented 8 years ago

i try to use T51 with float variable. Binding only see T52 item. Here is debug OH:

2015-10-29 16:46:46.332 [DEBUG] [.o.b.s.i.n.udp.UDPServerThread:62 ]- HEX: [24 23 17 86 47 66 00 31 00 00 00 18 E0 4D 8A 50 CA 61 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ] 2015-10-29 16:46:46.334 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:65 ]- decodeMacaco: Received functional code: 0x31 2015-10-29 16:46:46.335 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:75 ]- Souliss_UDP_function_subscribe_resp / Souliss_UDP_function_poll_resp 2015-10-29 16:46:46.337 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:71 ]- request to updateTIMESTAMP. Node: 0 2015-10-29 16:46:46.339 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:80 ]- updateTIMESTAMP: MeteostationUpdate ( 153) = 2015-10-29T16:46:46.339TMT 2015-10-29 16:46:46.340 [DEBUG] [.s.i.n.t.SoulissGenericTypical:100 ]- Update State. Name: TempOut, Typ: 0x52, Node: 0, Slot: 0. New State: 23.5 2015-10-29 16:46:46.342 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:318 ]- decodeStateRequest: TempOut (0x52) = 23.5 2015-10-29 16:46:46.344 [DEBUG] [.s.i.n.t.SoulissGenericTypical:100 ]- Update State. Name: Pressure, Typ: 0x52, Node: 0, Slot: 4. New State: 741.0 2015-10-29 16:46:46.345 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:318 ]- decodeStateRequest: Pressure (0x52) = 741.0 2015-10-29 16:46:46.642 [DEBUG] [b.s.i.network.typicals.Monitor:105 ]- Put on Bus Events - TempOut = 23.5 2015-10-29 16:46:46.644 [DEBUG] [.s.i.n.typicals.StateTraslator:97 ]- translate states: NumberItem_0x52_0x17 -> null 2015-10-29 16:46:46.652 [DEBUG] [b.s.i.network.typicals.Monitor:75 ]- Put on Bus Events - MeteostationUpdate = 2015-10-29T16:46:46.339TMT 2015-10-29 16:46:46.657 [DEBUG] [b.s.i.network.typicals.Monitor:105 ]- Put on Bus Events - Pressure = 741.0 2015-10-29 16:46:46.658 [DEBUG] [.s.i.n.typicals.StateTraslator:97 ]- translate states: NumberItem_0x52_0x2E5 -> null 2015-10-29 16:46:47.611 [DEBUG] [s.i.network.udp.SendDispatcher:217 ]- POP: 0 packets in memory 2015-10-29 16:46:47.612 [DEBUG] [s.i.network.udp.SendDispatcher:228 ]- POP: 0 force frame sent 2015-10-29 16:46:47.614 [DEBUG] [s.i.network.udp.SendDispatcher:232 ]- Pop frame HEX: [0C 0B 17 66 00 86 47 25 00 00 00 01 ] - Delay for 'SendDispatcherThread' setted to 100 mills. 2015-10-29 16:46:47.615 [DEBUG] [s.i.network.udp.SendDispatcher:257 ]- SendDispatcherThread - Functional Code 0x25 - Packet: HEX: [0C 0B 17 66 00 86 47 25 00 00 00 01 ] - Elementi rimanenti in lista: 0 2015-10-29 16:46:47.822 [DEBUG] [.o.b.s.i.n.udp.UDPServerThread:61 ]- Packet received 2015-10-29 16:46:47.831 [DEBUG] [.o.b.s.i.n.udp.UDPServerThread:62 ]- HEX: [0D 0C 17 86 47 66 00 35 00 00 00 01 FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ]

Here is Arduino config: float temperatureFloat; float humidityFloat;

define TEMPERATURE 0

define HUMIDITY 2

Set_T52(TEMPERATURE); Set_T51(HUMIDITY);

Logic_Temperature(TEMPERATURE); Logic_Temperature(HUMIDITY);

Souliss_ImportAnalog(memory_map, HUMIDITY, &humidityFloat); Souliss_ImportAnalog(memory_map, PRESSURE, &pressureFloat);

Here is Item: Number TempOut "Температура [%.1f °C]" (gClimate) {souliss="T52:0:0", autoupdate=false} Number HumidityOut "Влажность [%.1f %%]" (gClimate)// {souliss="T51:0:2", autoupdate=false}

juanpintom commented 8 years ago

Use T52 for TEMP and T53 for HUMIDITY ;)

Regards

2015-10-29 12:52 GMT+01:00 brutevinch notifications@github.com:

i try to use T51 with float variable. Binding only see T52 item. Here is debug OH:

2015-10-29 16:46:46.332 [DEBUG] [.o.b.s.i.n.udp.UDPServerThread:62 ]- HEX: [24 23 17 86 47 66 00 31 00 00 00 18 E0 4D 8A 50 CA 61 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ] 2015-10-29 16:46:46.334 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:65 ]- decodeMacaco: Received functional code: 0x31 2015-10-29 16:46:46.335 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:75 ]- Souliss_UDP_function_subscribe_resp / Souliss_UDP_function_poll_resp 2015-10-29 16:46:46.337 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:71 ]- request to updateTIMESTAMP. Node: 0 2015-10-29 16:46:46.339 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:80 ]- updateTIMESTAMP: MeteostationUpdate ( 153) = 2015-10-29T16:46:46.339TMT 2015-10-29 16:46:46.340 [DEBUG] [.s.i.n.t.SoulissGenericTypical:100 ]- Update State. Name: TempOut, Typ: 0x52, Node: 0, Slot: 0. New State: 23.5 2015-10-29 16:46:46.342 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:318 ]- decodeStateRequest: TempOut (0x52) = 23.5 2015-10-29 16:46:46.344 [DEBUG] [.s.i.n.t.SoulissGenericTypical:100 ]- Update State. Name: Pressure, Typ: 0x52, Node: 0, Slot: 4. New State: 741.0 2015-10-29 16:46:46.345 [DEBUG] [.b.s.i.n.udp.UDPSoulissDecoder:318 ]- decodeStateRequest: Pressure (0x52) = 741.0 2015-10-29 16:46:46.642 [DEBUG] [b.s.i.network.typicals.Monitor:105 ]- Put on Bus Events - TempOut = 23.5 2015-10-29 16:46:46.644 [DEBUG] [.s.i.n.typicals.StateTraslator:97 ]- translate states: NumberItem_0x52_0x17 -> null 2015-10-29 16:46:46.652 [DEBUG] [b.s.i.network.typicals.Monitor:75 ]- Put on Bus Events - MeteostationUpdate = 2015-10-29T16:46:46.339TMT 2015-10-29 16:46:46.657 [DEBUG] [b.s.i.network.typicals.Monitor:105 ]- Put on Bus Events - Pressure = 741.0 2015-10-29 16:46:46.658 [DEBUG] [.s.i.n.typicals.StateTraslator:97 ]- translate states: NumberItem_0x52_0x2E5 -> null 2015-10-29 16:46:47.611 [DEBUG] [s.i.network.udp.SendDispatcher:217 ]- POP: 0 packets in memory 2015-10-29 16:46:47.612 [DEBUG] [s.i.network.udp.SendDispatcher:228 ]- POP: 0 force frame sent 2015-10-29 16:46:47.614 [DEBUG] [s.i.network.udp.SendDispatcher:232 ]- Pop frame HEX: [0C 0B 17 66 00 86 47 25 00 00 00 01 ] - Delay for 'SendDispatcherThread' setted to 100 mills. 2015-10-29 16:46:47.615 [DEBUG] [s.i.network.udp.SendDispatcher:257 ]- SendDispatcherThread - Functional Code 0x25 - Packet: HEX: [0C 0B 17 66 00 86 47 25 00 00 00 01 ] - Elementi rimanenti in lista: 0 2015-10-29 16:46:47.822 [DEBUG] [.o.b.s.i.n.udp.UDPServerThread:61 ]- Packet received 2015-10-29 16:46:47.831 [DEBUG] [.o.b.s.i.n.udp.UDPServerThread:62 ]- HEX: [0D 0C 17 86 47 66 00 35 00 00 00 01 FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ]

Here is Arduino config: float temperatureFloat; float humidityFloat;

define TEMPERATURE 0

define HUMIDITY 2

Set_T52(TEMPERATURE); Set_T51(HUMIDITY);

Logic_Temperature(TEMPERATURE); Logic_Temperature(HUMIDITY);

Souliss_ImportAnalog(memory_map, HUMIDITY, &humidityFloat); Souliss_ImportAnalog(memory_map, PRESSURE, &pressureFloat);

Here is Item: Number TempOut "Температура [%.1f °C]" (gClimate) {souliss="T52:0:0", autoupdate=false} Number HumidityOut "Влажность [%.1f %%]" (gClimate)// {souliss="T51:0:2", autoupdate=false}

— Reply to this email directly or view it on GitHub https://github.com/souliss/bindingopenhab/issues/12.

brutevinch commented 8 years ago

Ok, what about pressure which is float variable? and what about another float var data which is not in category "Typicals"?

marcolino7 commented 8 years ago

Hi @brutevinch all T5X are macros of T51, so everyone is a float. To pass float from Souliss to OHab you can use T52 temperature or T53 humidity, and change label on openhab sitemap. For example I use a T52 to pass Voltage and Power.

Marco

juanpintom commented 8 years ago

Souliss_Logic_T58 - Pressure measure (0, 1500) hPa

Regards

2015-10-29 16:54 GMT+01:00 brutevinch notifications@github.com:

Ok, what about pressure which is float variable? and what about another float var data which is not in category "Typicals"?

— Reply to this email directly or view it on GitHub https://github.com/souliss/bindingopenhab/issues/12#issuecomment-152223303 .

brutevinch commented 8 years ago

@marcolino7 Thank you for explanation!!!!!! OH can't read T58. Strange crutch....why developer made T5n if we can use only T52?)))) Let me ask you another question: in code i must write Logic_Temperature(); Is there any documentation about Logic_XXX? what makes this function? What if it's not Temperature? for ex: Logic_Distance(); ? Thank you for your spent time.

marcolino7 commented 8 years ago

Hi @brutevinch, you can open SpeakEasy.h and T5n.cpp for available macros and typicals in base/ directory. Base code is on T51, that pass raw float value to SoulissAPP. All other T5n are macros of T51 and only effect is to ochange the behaviour of SoulissAPP. So if you need to read a value does not match a Typical, you can use T51, and you get raw value in SoulissAPP. If you need to pass this value to OpenHab, i have issue using T51 in the binding, so I used T52 even to pass Voltage, Power.

Regards

juanpintom commented 8 years ago

Sorry I had misunderstood :P on OH you can use a T52 as Marco said.

Regards

2015-10-29 17:34 GMT+01:00 brutevinch notifications@github.com:

@marcolino7 https://github.com/marcolino7 Thank you for explanation!!!!!! OH can't read T58. Strange crutch....why developer made T5n if we can use only T52?)))) Let me ask you another question: in code i must write Logic_Temperature(); Is there any documentation about Logic_XXX? what makes this function? What if it's not Temperature? for ex: Logic_Distance(); ? Thank you for your spent time.

— Reply to this email directly or view it on GitHub https://github.com/souliss/bindingopenhab/issues/12#issuecomment-152238824 .

marcolino7 commented 8 years ago

@brutevinch fixing your example you can use:

float temperatureFloat; float humidityFloat;

define TEMPERATURE 0

define HUMIDITY 2

Set_T52(TEMPERATURE); Set_T53(HUMIDITY);

Logic_Temperature(TEMPERATURE); Logic_Temperature(HUMIDITY);

Souliss_ImportAnalog(memory_map, HUMIDITY, &humidityFloat); Souliss_ImportAnalog(memory_map, PRESSURE, &pressureFloat);

Here is Item: Number TempOut "Температура [%.1f °C]" (gClimate) {souliss="T52:0:0", autoupdate=false} Number HumidityOut "Влажность [%.1f %%]" (gClimate) {souliss="T53:0:2", autoupdate=false}

This work fine for me

brutevinch commented 8 years ago

Thank you dudes! Best wishes and peace to you! Wish you good day! I'll close issue.