v1.11.0: CCS811 en daemon + fix filtrage + I2C 10kHz requis
Vérif terrain sur pro100 : à 100 kHz le CCS811 renvoie des valeurs corrompues 0x8000 (32768) par clock-stretching, et le modèle oneshot-reset-toutes-les-10s ne donne que le 1er échantillon post-init (garbage). Refonte : - CCS811/daemon.py: service long-running (Type=simple, Restart=always). Init 1x, boucle lecture/écriture 10s, filtre eCO2 dans [400,8192], re-init auto sur erreurs I2C répétées. Remplace write_data.py (supprimé). - CCS811/get_data.py: lit la dernière ligne data_CCS811 au lieu du capteur (évite la collision I2C avec le daemon -> corruption observée). - setup_services.sh: service daemon + self-heal suppression de l'ancien .timer; activation hors boucle timers. - launcher.php: .timer -> .service (map statut + allowedServices x2). - update_firmware.sh: redémarre le daemon à l'OTA. - doc: README (archi daemon + I2C 10kHz confirmé requis), CLAUDE.md, changelog. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1681,9 +1681,10 @@ if ($type == "get_systemd_services") {
|
||||
'description' => 'Reads CO2 concentration from MH-Z19 sensor',
|
||||
'frequency' => 'Every 2 minutes'
|
||||
],
|
||||
'nebuleair-ccs811-data.timer' => [
|
||||
'description' => 'Reads eCO2/TVOC from CCS811 air-quality sensor',
|
||||
'frequency' => 'Every 10 seconds'
|
||||
'nebuleair-ccs811-data.service' => [
|
||||
'display_name' => 'CCS811',
|
||||
'description' => 'Reads TVOC/eCO2 from CCS811 air-quality sensor (daemon)',
|
||||
'frequency' => 'Continuous (daemon)'
|
||||
],
|
||||
'nebuleair-s88-data.timer' => [
|
||||
'description' => 'Reads CO2 concentration from Senseair S88 sensor',
|
||||
@@ -1776,7 +1777,7 @@ if ($type == "restart_systemd_service") {
|
||||
'nebuleair-noise-data.timer',
|
||||
'nebuleair-mhz19-data.timer',
|
||||
'nebuleair-s88-data.timer',
|
||||
'nebuleair-ccs811-data.timer',
|
||||
'nebuleair-ccs811-data.service',
|
||||
'nebuleair-db-cleanup-data.timer',
|
||||
'nebuleair-wifi-powersave.timer',
|
||||
'nebuleair-cpu-power.service',
|
||||
@@ -1843,7 +1844,7 @@ if ($type == "toggle_systemd_service") {
|
||||
'nebuleair-noise-data.timer',
|
||||
'nebuleair-mhz19-data.timer',
|
||||
'nebuleair-s88-data.timer',
|
||||
'nebuleair-ccs811-data.timer',
|
||||
'nebuleair-ccs811-data.service',
|
||||
'nebuleair-db-cleanup-data.timer',
|
||||
'nebuleair-wifi-powersave.timer',
|
||||
'nebuleair-cpu-power.service',
|
||||
|
||||
Reference in New Issue
Block a user