From bd2e1f1eda19ca2b700a540fc2251b771c78164a Mon Sep 17 00:00:00 2001 From: PaulVua Date: Wed, 18 Mar 2026 13:24:26 +0100 Subject: [PATCH] v1.6.0: envoi npm_status dans payload UDP (byte 67) - Lecture npm_status depuis derniere mesure en base (rowid DESC, pas de moyenne) - Independant du RTC (pas de dependance au timestamp) - Byte 67 du payload UDP = registre status NextPM Co-Authored-By: Claude Opus 4.6 (1M context) --- VERSION | 2 +- changelog.json | 17 +++++++++++++++++ loop/SARA_send_data_v2.py | 5 +++++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 4cda8f1..dc1e644 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.5.2 +1.6.0 diff --git a/changelog.json b/changelog.json index 646afc5..7ba4654 100644 --- a/changelog.json +++ b/changelog.json @@ -1,5 +1,22 @@ { "versions": [ + { + "version": "1.6.0", + "date": "2026-03-18", + "changes": { + "features": [ + "Payload UDP Miotiq: envoi npm_status (byte 67) — registre status NextPM en temps reel" + ], + "improvements": [ + "npm_status lu depuis la derniere mesure en base (rowid DESC, pas de moyenne ni de timestamp)" + ], + "fixes": [], + "compatibility": [ + "Necessite mise a jour du parser Miotiq pour decoder le byte 67 (npm_status)" + ] + }, + "notes": "Le capteur envoie maintenant le registre status du NextPM dans chaque trame UDP (byte 67). La valeur est prise de la derniere mesure sans moyenne (un code erreur ne se moyenne pas). Utilise rowid pour eviter toute dependance au RTC." + }, { "version": "1.5.2", "date": "2026-03-18", diff --git a/loop/SARA_send_data_v2.py b/loop/SARA_send_data_v2.py index d0d7704..4e7c135 100755 --- a/loop/SARA_send_data_v2.py +++ b/loop/SARA_send_data_v2.py @@ -846,6 +846,11 @@ try: payload_csv[18] = npm_temp payload_csv[19] = npm_hum + # npm_status: last value only (no average), use rowid (not timestamp) + npm_status_value = rows[0][7] if rows and rows[0][7] is not None else 0 + payload.set_npm_status(npm_status_value) + print(f"NPM status: 0x{npm_status_value:02X}") + #add data to payload UDP payload.set_npm_core(PM1, PM25, PM10) payload.set_npm_internal(npm_temp, npm_hum)