v1.12.1: S88 ecrit toujours + code d'etat, plus de CO2 perime transmis
Probleme vu sur pro100: sonde S88 muette (panne cablage) mais write_data.py n'ecrivait rien -> la base gardait la derniere valeur (487 ppm d'hier) et la loop d'envoi la transmettait en boucle. - data_S88: nouvelle colonne s88_status (0=OK, 0xFF=sonde muette), comme npm_status/noise_status. Migration via create_db.py + set_config.py + self-heal. - S88/write_data.py: ecrit DESORMAIS une ligne a chaque cycle (CO2=0 + 0xFF si pas de reponse). Connexion SQLite timeout=10 (anti database-is-locked). - SARA_send_data_v2.py: lit s88_status; si 0xFF -> bytes 81-82 restent 0xFFFF (CO2 absent) au lieu d'envoyer une valeur perimee. Compatible bases non migrees. - database.html + launcher.php: badge statut + colonne dans les exports CSV. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -161,13 +161,22 @@ CREATE TABLE IF NOT EXISTS data_MHZ19 (
|
||||
""")
|
||||
|
||||
# Create a table S88 (Senseair S88 CO2 sensor)
|
||||
# s88_status: 0 = OK, 0xFF (255) = sensor not responding (no Modbus reply)
|
||||
cursor.execute("""
|
||||
CREATE TABLE IF NOT EXISTS data_S88 (
|
||||
timestamp TEXT,
|
||||
CO2 INTEGER
|
||||
CO2 INTEGER,
|
||||
s88_status INTEGER DEFAULT 0
|
||||
)
|
||||
""")
|
||||
|
||||
# Add s88_status column to existing databases (migration)
|
||||
try:
|
||||
cursor.execute("ALTER TABLE data_S88 ADD COLUMN s88_status INTEGER DEFAULT 0")
|
||||
print("Added s88_status column to data_S88")
|
||||
except:
|
||||
pass # Column already exists
|
||||
|
||||
# Create a table CCS811 (AMS CCS811 air-quality sensor: eCO2 + TVOC)
|
||||
cursor.execute("""
|
||||
CREATE TABLE IF NOT EXISTS data_CCS811 (
|
||||
|
||||
Reference in New Issue
Block a user