MUST HAVE z Łosia 2025 czyli stacja pogodowa
Tutaj jest trochę o połączeniu i sterowaniu CC1101:
https://github.com/LSatan

Stacja wysyła 30milisekundowe ramki co 12.5 sekundy (ok 4000 bodów/s) - w ramkach jest conajmniej kierunek i siła wiatru.

Co 48 takich ramek, a więc co 10 minut wysyłany jest pakiet(?) 30 ramek. <== To nie jest prawda. Do "rozmowy" włączyło sie inne urządzenie.

Wysyłane pakiety mają długość 198 bitów = 33 bajty = 66 półbajty(nibble)
Bajty 1-6 to preambuła (0xAAAAAAAAAAAA)
Bajty 7-8 to synchronizacja (0x2DD4) - ta wartość jest identyczna jak w stacji Bresser 6-in-1, czy kodowanie też jest identyczne?

Bajty 9-10 to suma kontrolna

Bajty 11-33 (lub 13-33) są XOR-owane maską 0xAA

Bajty 11-12 to identyfikator stacji

Bajty 13 i połówka 14 to kierunek wiatru w stopniach - kodowanie BCD + XOR maską 0xAA (
Przykład: 10011111 11001010
XOR 0xAAAA: 00110101 01000000
Wiatr wieje z azymutu 354° ( 0011 0101 0100 )

Bajty 16 i połówka 17 to prędkość wiatru w porywach (m/s)

Bajty połówka 17 i 18 średnia prędkość wiatru

Bajty 20-22 (a może 19-22) to sumaryczny opad w mikrometrach. Jedno wychylenie miseczki zbierającej wodę, oznacza
opad 0,01 cala czyli 0,254mm=254um.

Bajty 23 i połowka 24 to temperatura z dokładnością do 1 miejsca po przecinku
Ujemna temperatura jest kodowana prawdopodobnie (nie sprawdzałem) przez dodanie liczby 600
Dane 000-599 oznaczają temperatury od 00,0 do 60,0°C
Dane 600-999 oznaczają temperatury od -40,0 do -00,1°C

Druga połowka bajtu 24 oznacza stan baterii (nie kondensatora) 0=bateria ok, 6=niski stan baterii

Bajt 25 oznacza wilgotność powietrza (2 cyfry 00-99%)

Bajty 26-28 to oświetlenie w luksach 6 cyfr 0-999999Lx

Bajt 29 i połówka 30 to index UV z dokładnością do 1 miejsca po przecinku 0,0-99,9



  PRZEJDŹ NA FORUM