souliss/bindingopenhab

T51 can't using.

brutevinch opened this issue · 9 comments

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}

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
#12.

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

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

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
#12 (comment)
.

@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.

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

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
#12 (comment)
.

@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

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