Hitta formel 4byte till värde
Re: Hitta formel 4byte till värde
Jag använder Universial Radio Hacker när jag ska dekoda signaler. Den arbetar iof med radio signaler, men du kanske kan få in din rådata i det steget. Anledningen att jag gillar URH så mycket är att man kan leka med datat, organisera, pussla och manipulera.
Edit: nä, man verkar inte kunna stoppa in rådata själv. Så nwm.
Edit: nä, man verkar inte kunna stoppa in rådata själv. Så nwm.
Re: Hitta formel 4byte till värde
Vet inget om Elektrolux luftrenare, men allmänt så ifall det finns någon form av bakåtkompatibilitet så är det väl inte osannolikt att det är t.ex. ett 32-bit heltal eller som också föreslogs ett flyttal och det räknas om i MCU för att ge data kompatibvel med de de använde när de byggde med en stenåldersmikrokontroller, analog givare och ADC.
Re: Hitta formel 4byte till värde
Det kan mycket väl vara något fel i tabellen. Värdet som jag läser ut från APPen verkar vara lite filtrerad/fördröjd samt kan lätt smyga sig in ett copy/paste fel.
Efter lite mera efterforskning så verkar endast Byte0 och 1 vara relaterat till TVOC.
Verkar vara 2 skalfaktorer beroende på mätvärdet(0,9/0,6). Gäller bara att hitta när det skal växlas.
Kod: Markera allt
Byte0 Byte1 Byte2 Byte3 Value Byte0*256+Byte1 Diff Value/G Resultat Skalfaktor Err
3 255 8 100 921 1023 0,9 920,7 0,9 -0,3
3 230 8 88 998 998 1,0 898,2 0,9 -99,8
3 242 8 94 909 1010 0,9 909 0,9 0
4 12 8 106 932 1036 0,9 932,4 0,9 0,4
4 21 8 112 941 1045 0,9 940,5 0,9 -0,5
4 33 8 114 964 1057 0,9 951,3 0,9 -12,7
5 82 9 0 1226 1362 0,9 1225,8 0,9 -0,2
11 56 1863 2872 0,6 1723,2 0,6 -139,8
12 70 1885 3142 0,6 1885,2 0,6 0,2
12 148 1920 3220 0,6 1932 0,6 12
12 233 1955 3305 0,6 1983 0,6 28
13 39 2008 3367 0,6 2020,2 0,6 12,2
13 66 2036 3394 0,6 2036,4 0,6 0,4
13 140 2068 3468 0,6 2080,8 0,6 12,8
13 159 2084 3487 0,6 2092,2 0,6 8,2
Re: Hitta formel 4byte till värde
Vore bättre om du svarade på våra frågor i stället för denna gissningslek.
Att man skulle använda två olika skalfaktorer, det tror jag överhuvudtaget inte på, utan du har tolkat dina data fel.
Varför loggar du inte data till en textfil i stället.
Att man skulle använda två olika skalfaktorer, det tror jag överhuvudtaget inte på, utan du har tolkat dina data fel.
Varför loggar du inte data till en textfil i stället.
Re: Hitta formel 4byte till värde
Jag får ta och öppna upp och kolla vad det är för sensor som används, kan vara intressant.
-
- Inlägg: 7826
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Hitta formel 4byte till värde
https://chat.openai.com/ föreslår följande lösning:
(utifrån den tabell som finns i första inlägget)
Value = (Byte0 * 256^3) + (Byte1 * 256^2) + (Byte2 * 256^1) + Byte3
(utifrån den tabell som finns i första inlägget)
Value = (Byte0 * 256^3) + (Byte1 * 256^2) + (Byte2 * 256^1) + Byte3
Re: Hitta formel 4byte till värde
Delar man det på 72800 sen så blir det ungefär rätt förutom nummer 2.
EDIT: En något udda skalning kan man tycka, men med data för byte 2 och 3 även för de sista posterna kanske det går att se om det är en rimlig tanke ens.
EDIT: En något udda skalning kan man tycka, men med data för byte 2 och 3 även för de sista posterna kanske det går att se om det är en rimlig tanke ens.
Re: Hitta formel 4byte till värde
Med formeln : Value = ((Byte0 * 256^3) + (Byte1 * 256^2) + (Byte2 * 256^1) + Byte3)/72800 får du dessa värden för de första 7 posterna:
920,9543407
898,4486813
909,2514011
932,6572802
940,7593407
951,5620055
1226,130989
Kan post nr två ha varit 898 istället? I såna fall är det bara ett värde som ligger lite fel, 964. De andra hamnar inom felmarginalen skulle jag säga.
920,9543407
898,4486813
909,2514011
932,6572802
940,7593407
951,5620055
1226,130989
Kan post nr två ha varit 898 istället? I såna fall är det bara ett värde som ligger lite fel, 964. De andra hamnar inom felmarginalen skulle jag säga.
Re: Hitta formel 4byte till värde
Efter lite focus på annat så gjorde jag en djupare undersökning.
Sensorn är en CCS811
https://lawicel-shop.se/tillverkare/spa ... ut-ccs811/
Den skickar ut tVOC samt eCO2, så mina fyra byte var tVOC msb/lsb samt eCO2 msb/lsb.
Men fortfarande så så avvek rapporterat värde från APPen med värdet jag fick fram från dom 2byten.
Värdena matchar sålänge msb <2.
Varje gång msb ökar över 2 så ändras skalningen.
Exempelvis;
msb=3 skalfaktor 0.9
msb=4 skalfaktor 0.6
Sålänge msb>2 är skalfaktorn mellan 0.6-0.9 beronde på msb värdet.
Jag kopplade in en i2c sniffer direkt mot sensorn för att se vad den skickar. Och den skickar samma som jag läserut i dom 4byten. Så det är altså någon typ av skalningen som görs för att visa lägre värden än vad sensor verkligen rapporterar.
Så jag struntar i att matcha vad APPen visar eftersom det övernstämmer inte med "verkligt" värde.
Sensorn är en CCS811
https://lawicel-shop.se/tillverkare/spa ... ut-ccs811/
Den skickar ut tVOC samt eCO2, så mina fyra byte var tVOC msb/lsb samt eCO2 msb/lsb.
Men fortfarande så så avvek rapporterat värde från APPen med värdet jag fick fram från dom 2byten.
Värdena matchar sålänge msb <2.
Varje gång msb ökar över 2 så ändras skalningen.
Exempelvis;
msb=3 skalfaktor 0.9
msb=4 skalfaktor 0.6
Sålänge msb>2 är skalfaktorn mellan 0.6-0.9 beronde på msb värdet.
Jag kopplade in en i2c sniffer direkt mot sensorn för att se vad den skickar. Och den skickar samma som jag läserut i dom 4byten. Så det är altså någon typ av skalningen som görs för att visa lägre värden än vad sensor verkligen rapporterar.
Så jag struntar i att matcha vad APPen visar eftersom det övernstämmer inte med "verkligt" värde.