Doc: parser Miotiq dans README + mise a jour error_flags.md
- README: ajout section parser Miotiq avec firmware version (bytes 69-71) - error_flags.md: parser mis a jour (version_major/minor/patch + reserved 22) - error_flags.md: correction note init bytes 66-68 a 0x00 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
43
README.md
43
README.md
@@ -237,6 +237,49 @@ Taille par paquet : 100 bytes payload + 8 bytes UDP header + 20 bytes IP header
|
|||||||
|
|
||||||
> Note : ces chiffres ne comptent que l'UDP vers Miotiq. Les envois HTTP (AirCarto) et HTTPS (uSpot) consomment des donnees supplementaires.
|
> Note : ces chiffres ne comptent que l'UDP vers Miotiq. Les envois HTTP (AirCarto) et HTTPS (uSpot) consomment des donnees supplementaires.
|
||||||
|
|
||||||
|
### Parser Miotiq
|
||||||
|
|
||||||
|
```
|
||||||
|
16|device_id|string|||W
|
||||||
|
2|signal_quality|hex2dec|dB||
|
||||||
|
2|version|hex2dec|||W
|
||||||
|
4|ISO_68|hex2dec|ugm3|x/10|
|
||||||
|
4|ISO_39|hex2dec|ugm3|x/10|
|
||||||
|
4|ISO_24|hex2dec|ugm3|x/10|
|
||||||
|
4|ISO_54|hex2dec|degC|x/100|
|
||||||
|
4|ISO_55|hex2dec|%|x/100|
|
||||||
|
4|ISO_53|hex2dec|hPa||
|
||||||
|
4|noise_cur_leq|hex2dec|dB|x/10|
|
||||||
|
4|noise_cur_level|hex2dec|dB|x/10|
|
||||||
|
4|max_noise|hex2dec|dB|x/10|
|
||||||
|
4|ISO_03|hex2dec|ppb||
|
||||||
|
4|ISO_05|hex2dec|ppb||
|
||||||
|
4|ISO_21|hex2dec|ppb||
|
||||||
|
4|ISO_04|hex2dec|ppb||
|
||||||
|
4|ISO_08|hex2dec|ppb||
|
||||||
|
4|npm_ch1|hex2dec|count||
|
||||||
|
4|npm_ch2|hex2dec|count||
|
||||||
|
4|npm_ch3|hex2dec|count||
|
||||||
|
4|npm_ch4|hex2dec|count||
|
||||||
|
4|npm_ch5|hex2dec|count||
|
||||||
|
4|npm_temp|hex2dec|°C|x/10|
|
||||||
|
4|npm_humidity|hex2dec|%|x/10|
|
||||||
|
4|battery_voltage|hex2dec|V|x/100|
|
||||||
|
4|battery_current|hex2dec|A|x/100|
|
||||||
|
4|solar_voltage|hex2dec|V|x/100|
|
||||||
|
4|solar_power|hex2dec|W||
|
||||||
|
4|charger_status|hex2dec|||
|
||||||
|
4|wind_speed|hex2dec|m/s|x/10|
|
||||||
|
4|wind_direction|hex2dec|degrees||
|
||||||
|
2|error_flags|hex2dec|||
|
||||||
|
2|npm_status|hex2dec|||
|
||||||
|
2|device_status|hex2dec|||
|
||||||
|
2|version_major|hex2dec|||
|
||||||
|
2|version_minor|hex2dec|||
|
||||||
|
2|version_patch|hex2dec|||
|
||||||
|
22|reserved|skip|||
|
||||||
|
```
|
||||||
|
|
||||||
### Byte 66 — error_flags
|
### Byte 66 — error_flags
|
||||||
|
|
||||||
| Bit | Masque | Description |
|
| Bit | Masque | Description |
|
||||||
|
|||||||
@@ -247,7 +247,10 @@ def set_device_status(self, status):
|
|||||||
2|error_flags|hex2dec|||
|
2|error_flags|hex2dec|||
|
||||||
2|npm_status|hex2dec|||
|
2|npm_status|hex2dec|||
|
||||||
2|device_status|hex2dec|||
|
2|device_status|hex2dec|||
|
||||||
28|reserved|skip|||
|
2|version_major|hex2dec|||
|
||||||
|
2|version_minor|hex2dec|||
|
||||||
|
2|version_patch|hex2dec|||
|
||||||
|
22|reserved|skip|||
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -310,9 +313,9 @@ if sara_rebooted:
|
|||||||
|
|
||||||
## Notes
|
## Notes
|
||||||
|
|
||||||
- La payload est initialisee a 0xFF (tous bytes a 255). Le script doit explicitement
|
- Les bytes 66-68 sont initialises a 0x00 dans le constructeur SensorPayload
|
||||||
ecrire 0x00 dans les bytes 66-67 quand tout va bien, sinon Miotiq interpretera
|
(0x00 = aucune erreur/aucun flag). Les bytes 69-71 restent a 0xFF si le
|
||||||
255 = toutes les erreurs.
|
fichier VERSION est absent ou malformed.
|
||||||
- Le NPM status n'est pas encore lu par `get_data_modbus_v3.py`. Il faut d'abord
|
- Le NPM status n'est pas encore lu par `get_data_modbus_v3.py`. Il faut d'abord
|
||||||
ajouter la lecture du registre de status Modbus et le stocker en SQLite.
|
ajouter la lecture du registre de status Modbus et le stocker en SQLite.
|
||||||
- Les flags du byte 66 sont determines par le script d'envoi en analysant les
|
- Les flags du byte 66 sont determines par le script d'envoi en analysant les
|
||||||
|
|||||||
Reference in New Issue
Block a user