Misol WS2310 / FineOffset / Alecto Lux & UV Values

Post here about devices that are not yet or not fully supported

Moderators: rtenklooster, Voyager, BertB, Stuntteam

Post Reply
Message
Author
CMarkwardt
New user
Posts: 4
Joined: 04 Jun 2018, 22:19

Misol WS2310 / FineOffset / Alecto Lux & UV Values

#1 Post by CMarkwardt » 08 Nov 2022, 15:42

Hi--

I have a MISOL WS2310 weather station that produces temp / humidity / wind / rain, and also UV and total light intensity.
This is the product:
http://www.misolie.net/misol-profession ... p-607.html

The temp / humidity / wind / rain part works great as "DKW2012" and all values are good.

However the UV and lux part does not. Instead it comes as an "Alecto V5" packet (rain and temperature). The values are "close" to the correct values, but not exactly. For Lux, I get lux-like values in the total rain field, but the values that wrap around (missing upper bits). The UV index data comes in the temperature field but is scaled weirdly. Also, the data is very sporadic, sometimes coming through for hours, sometimes not, suggesting a checksum/formatting check is failing when the bits are in certain ranges.

When I look at the following code for rtl_433
https://github.com/merbanan/rtl_433/blo ... t_wh1080.c
I see a similar layout. The temp / humidity / wind / rain come in msg_type == 0, and the UV + lux comes in msg_type == 2. But somehow RFLink is not parsing that third message type, and instead parsing as Alecto V5.

Can this be fixed?
Thanks,
Craig

User avatar
Stuntteam
Site Beheer
Posts: 791
Joined: 27 Jan 2016, 16:46

Re: Misol WS2310 / FineOffset / Alecto Lux & UV Values

#2 Post by Stuntteam » 08 Nov 2022, 20:11

I would need to see debug data to fix the code.
see https://www.rflink.nl/develop.php
-=# RFLink Gateway Development Team #=-
Introduction: http://www.nemcon.nl/blog2/
Generic Support forum: http://www.esp8266.nu/forum/viewforum.php?f=8

CMarkwardt
New user
Posts: 4
Joined: 04 Jun 2018, 22:19

Re: Misol WS2310 / FineOffset / Alecto Lux & UV Values

#3 Post by CMarkwardt » 09 Nov 2022, 16:08

I did capture data in debug mode, and can confirm that this data is in "WH3080 UV/Light msg" format, as described in rtl_433 here, 
https://github.com/merbanan/rtl_433/blo ... t_wh1080.c
but I think the timings are different.   I did confirm that the other part of the weather stations reports, which show up as DKW2012 (temp, hum, wind, etc) is being reported correctly at the bit level.

I'll post a more full capture below, but basically the timing is  
short=390us=1  
long=1380us=0
(same as DKW2012) with 128 pulses.  I then get samples of the following form
DARK

Code: Select all

;;; 11111111 01110000 00010000 01010101 00000000 00000000 00000000 11111001
;;;    f   f TYPE{  id=1 }{UV} 55h=85OK {<---- LUX ------------->} {Chksum}  
BRIGHT

Code: Select all

;;; 11111111 01110000 00010000 01010101 00000000 10101101 11000000 00000001
;;;    f   f TYPE{  id=1 }{UV} 55h=85OK {<---- LUX ------------->} {Chksum}
;;; 11111111 01110000 00010000 01010101 00000001 00001100 00110100 00001010
;;;    f   f TYPE{  id=1 }{UV} 55h=85OK {<---- LUX ------------->} {Chksum}
;;; 11111111 01110000 00010000 01010101 00000001 01001110 11001110 00000011
;;;    f   f TYPE{  id=1 }{UV} 55h=85OK {<---- LUX ------------->} {Chksum}
I.e. in hex the format is 

Code: Select all

  ff   T I   I U   55   L L   L L   L L   C C
where  
ff = preamble 0xff  
T = sensor type = 0x7  
II = sensor id = 0x01 in this case  
U = UV index value = 0x0 in this case  
55 = sensor OK = 0x55  
LLLLLL = lux value (24-bit word)  
CC = checksum
This is the same bit number and layout as described in rtl_433.



FULL DUMP ==============================================;; includes DKW2012 values which are sampled properly
$ miniterm.py /dev/tty.RFLink 57600
--- Miniterm on /dev/tty.RFLink  57600,8,N,1 ---
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
20;00;Nodo RadioFrequencyLink - RFLink Gateway V1.1 - R48;
...
20;0B;RFDEBUG=ON;
...
20;2F;DEBUG;Pulses=128;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,6990;
20;30;Alecto V5;ID=0001;TEMP=813b;RAIN=0700;BAT=OK;
;;; 11111111 01110000 00010000 01010101 00000000 10101101 11000000 00000001
;;;    f   f TYPE{  id=1 }{UV} 55h=85OK {<---- LUX ------------->} {Chksum}
...
20;68;DEBUG;Pulses=176;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,6990;
20;69;DKW2012;ID=0001;TEMP=009b;HUM=44;WINSP=0018;WINGS=003d;RAIN=0018;WINDIR=0002;BAT=OK;
...
20;78;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,6990;
20;79;Alecto V5;ID=0001;TEMP=813b;RAIN=fb00;BAT=OK;
...
20;9C;DEBUG;Pulses=128;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,6990;
20;9D;Alecto V5;ID=0001;TEMP=813b;RAIN=e000;BAT=OK;
...
80,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,6990;
20;A7;DKW2012;ID=0001;TEMP=009a;HUM=45;WINSP=000c;WINGS=0025;RAIN=0018;WINDIR=0002;BAT=OK;
...
20;C6;DEBUG;Pulses=128;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,390,870,390,6990;
20;C7;Alecto V5;ID=0001;TEMP=813b;RAIN=da00;BAT=OK;
...
20;E1;DEBUG;Pulses=176;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,390,870,1380,6990;
20;E2;DKW2012;ID=0001;TEMP=0099;HUM=45;WINSP=0000;WINGS=0018;RAIN=0018;WINDIR=0002;BAT=OK;
...
20;EA;DEBUG;Pulses=128;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,390,6990;
20;EB;Alecto V5;ID=0001;TEMP=813b;RAIN=ce00;BAT=OK;
...
0,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,6990;
20;17;Alecto V5;ID=0001;TEMP=813b;RAIN=c500;BAT=OK;
...
20;21;DEBUG;Pulses=176;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,390,870,390,6990;
20;22;DKW2012;ID=0001;TEMP=009a;HUM=44;WINSP=0000;WINGS=0018;RAIN=0018;WINDIR=0002;BAT=OK;
...
20;37;DEBUG;Pulses=128;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,6990;
20;38;Alecto V5;ID=0001;TEMP=813b;RAIN=c500;BAT=OK;
...
20;58;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,6990;
20;59;Alecto V5;ID=0001;TEMP=813b;RAIN=c500;BAT=OK;
...
20;7B;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,6990;
20;7C;Alecto V5;ID=0001;TEMP=813b;RAIN=c500;BAT=OK;
...
20;83;DEBUG;Pulses=176;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,6990;
20;84;DKW2012;ID=0001;TEMP=0099;HUM=45;WINSP=000c;WINGS=0025;RAIN=0018;WINDIR=0002;BAT=OK;
...
20;9D;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,390,870,390,870,390,870,390,870,1380,870,1380,870,390,6990;
20;9E;Alecto V5;ID=0001;TEMP=813b;RAIN=a700;BAT=OK;
...
20;C1;DEBUG;Pulses=128;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,390,870,390,6990;
20;C2;Alecto V5;ID=0001;TEMP=813b;RAIN=9800;BAT=OK;
...
20;C5;DEBUG;Pulses=176;Pulses(uSec)=240,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,6990;
20;C6;DKW2012;ID=0001;TEMP=0098;HUM=45;WINSP=000c;WINGS=0025;RAIN=0018;WINDIR=0002;BAT=OK;
...
20;E4;DEBUG;Pulses=128;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,6990;
20;E5;Alecto V5;ID=0001;TEMP=813b;RAIN=9500;BAT=OK;
...
20;04;DEBUG;Pulses=176;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,390,870,390,870,390,870,390,870,390,6990;
20;05;DKW2012;ID=0001;TEMP=0098;HUM=45;WINSP=0000;WINGS=0018;RAIN=0018;WINDIR=0002;BAT=OK;
...
20;0D;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,6990;
20;0E;Alecto V5;ID=0001;TEMP=813b;RAIN=8600;BAT=OK;
...
20;37;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,390,870,390,6990;
20;38;Alecto V5;ID=0001;TEMP=813b;RAIN=7a00;BAT=OK;
...
20;3D;DEBUG;Pulses=176;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,390,870,390,870,390,870,390,870,390,6990;
20;3E;DKW2012;ID=0001;TEMP=0098;HUM=45;WINSP=0000;WINGS=0018;RAIN=0018;WINDIR=0002;BAT=OK;
...
20;5B;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,1380,6990;
20;5C;Alecto V5;ID=0001;TEMP=813b;RAIN=6e00;BAT=OK;
...
20;7D;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,1380,870,390,870,390,870,390,870,390,6990;
20;7E;Alecto V5;ID=0001;TEMP=813b;RAIN=6500;BAT=OK;
...
20;DB;DEBUG;Pulses=128;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,390,870,390,6990;
20;DC;Alecto V5;ID=0001;TEMP=813b;RAIN=5300;BAT=OK;
...
20;0A;DEBUG;Pulses=130;Pulses(uSec)=30,0,210,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,390,870,390,6990;
20;0B;Alecto V5;ID=0001;TEMP=813b;RAIN=5300;BAT=OK;
...
20;0E;DEBUG;Pulses=176;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,6990;
20;0F;DKW2012;ID=0001;TEMP=0096;HUM=45;WINSP=0018;WINGS=0049;RAIN=0018;WINDIR=0002;BAT=OK;
...
20;34;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,390,870,390,6990;
20;35;Alecto V5;ID=0001;TEMP=813b;RAIN=4d00;BAT=OK;
...
20;4A;DEBUG;Pulses=176;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,6990;
20;4B;DKW2012;ID=0001;TEMP=0095;HUM=45;WINSP=0018;WINGS=0025;RAIN=0018;WINDIR=0002;BAT=OK;
...
20;5C;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,6990;
20;5D;Alecto V5;ID=0001;TEMP=813b;RAIN=3200;BAT=OK;
...
20;98;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,390,870,390,6990;
20;99;Alecto V5;ID=0001;TEMP=813b;RAIN=2c00;BAT=OK;
...
20;A1;DEBUG;Pulses=176;Pulses(uSec)=240,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,1380,6990;
20;A2;DKW2012;ID=0001;TEMP=0094;HUM=46;WINSP=0000;WINGS=0018;RAIN=0018;WINDIR=0002;BAT=OK;
...
20;BD;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,390,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,390,870,390,6990;
20;BE;Alecto V5;ID=0001;TEMP=813b;RAIN=1a00;BAT=OK;
...
20;E5;DEBUG;Pulses=128;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,390,6990;
20;E6;Alecto V5;ID=0001;TEMP=813b;RAIN=1400;BAT=OK;
...
20;08;DEBUG;Pulses=176;Pulses(uSec)=300,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,390,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,390,870,1380,870,390,870,1380,6990;
20;09;DKW2012;ID=0001;TEMP=0054;HUM=55;WINSP=000c;WINGS=0018;RAIN=0018;WINDIR=0004;BAT=OK;
...
20;B5;DEBUG;Pulses=128;Pulses(uSec)=240,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,6990;
20;B6;Alecto V5;ID=0001;TEMP=813b;RAIN=2403;BAT=OK;
;;; 11111111 01110000 00010000 01010101 00000001 00001100 00110100 00001010
;;;    f   f TYPE{  id=1 }{UV} 55h=85OK {<---- LUX ------------->} {Chksum}
... DARK
20;25;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,390,870,390,870,1380,870,1380,870,390,6990;
20;26;Alecto V5;ID=0001;TEMP=813b;RAIN=0000;BAT=OK;
;;; 11111111 01110000 00010000 01010101 00000000 00000000 00000000 11111001
;;;    f   f TYPE{  id=1 }{UV} 55h=85OK {<---- LUX ------------->} {Chksum}
... FLASHLIGHT
20;4E;DEBUG;Pulses=128;Pulses(uSec)=270,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,1380,870,1380,870,390,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,390,6990;
20;4F;Alecto V5;ID=0001;TEMP=813b;RAIN=e200;BAT=OK;
...
20;02;DEBUG;Pulses=130;Pulses(uSec)=30,60,210,870,390,870,390,870,390,870,390,870,390,870,390,870,390,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,1380,870,390,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,390,870,390,870,1380,870,1380,870,390,870,390,870,390,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,1380,870,390,870,390,6990;
20;03;Alecto V5;ID=0001;TEMP=813b;RAIN=ea03;BAT=OK;
;;; 11111111 01110000 00010000 01010101 00000001 01001110 11001110 00000011
;;;    f   f TYPE{  id=1 }{UV} 55h=85OK {<---- LUX ------------->} {Chksum}

CMarkwardt
New user
Posts: 4
Joined: 04 Jun 2018, 22:19

Re: Misol WS2310 / FineOffset / Alecto Lux & UV Values / WH3080

#4 Post by CMarkwardt » 13 Nov 2024, 22:30

Hi, this topic has been inactive for a while. I have been using perl code to capture the debug output for the "WH3080" and parse it with success.

This has been used for about two years. You have my permission to adapt it for RFlink firmware purposes.

RFLinkDebug_trim() trims any pulses smaller than 60 usec at the leader or trailer.

RFLinkDebug_mark() extracts the pulses based on timings
  • 165-500 usec = one
  • 1200-1600 usec = zero
  • 700-1100 usec = space

Code: Select all

    # WH3080 Lux/UV data
    # https://www.letscontrolit.com/forum/viewtopic.php?t=9339
    # https://github.com/merbanan/rtl_433/blob/master/src/devices/fineoffset_wh1080.c
    if ($npulses >= 128 && $npulses <= 136) {
        my ($s,@t);

        #                                    ___0xff__ type    ID       UV   status0x55 ______________lux____________  checksum
        state $wh3080uv_re = RFLinkDebug_re("1111 1111 0111(bbbb bbbb)(bbbb)(bbbb bbbb)(bbbb bbbb bbbb bbbb bbbb bbbb)(bbbb bbbb)");

        @t = RFLinkDebug_getpulses($msg);
        @t = RFLinkDebug_trim(60,@t);
        $s = RFLinkDebug_mark(165,500,1200,1600,700,1100,@t);
        # Log3 undef, 1, "RFLinkDebug: WH1080UV:npulses=$npulses:s=$s:t=".join(",",@t);
        if (scalar(@t) > 0 &&
            ($s =~ m/$wh3080uv_re/)) {
            my ($id,$bat,$uvindex,$status,$luxraw,$lux,$checksum,$calcsum);
            my (@bytes);
            @bytes = unpack("C*",pack("B64",$s));
            # Log3 undef, 1, sprintf("RFLinkDebug: WH3080UV:hex=%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x",@bytes);
            $checksum = oct("0b".$5);
            # Log3 undef, 1, "RFLinkDebug: WH3080UV:$s";
            if ($checksum == $checksum) {
                $id = oct("0b".$1);
                $uvindex = oct("0b".$2);
                $status = (oct("0b".$3) == 0x55) ? "OK" : "ERROR";
                $luxraw = oct("0b".$4);
                # Log3 undef, 1, sprintf("RFLinkDebug: WH3080UV:id=$id:uvindex=$uvindex:luxraw=$luxraw:checksum=%02x:calcsum=%02x",$c\
hecksum,$checksum);
                my $rflinkstr = sprintf("WH1080UV;ID=%02x%02x;UV=%04X;LUX=%04X",
                                        $id, 0, $uvindex*16, int(($luxraw/16.0 + 0.5)));
                # Log3 undef, 1, "RFLinkDebug: $rflinkstr";
                Dispatch($iohash, "RFLINK;".$rflinkstr, { RAWMSG => $rflinkstr });
                return $hash->{NAME};
            }
        }
    }
  }

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest