Correction de valeurs erronnées dans Domoticz
Rédigé par Nicolas Sulek
Aucun commentaire
Classé dans : Logiciel
Il peut arriver que Domoticz reçoive des valeurs totalement erronnées, par exemple, une consommation électrique de 7834658181252W.
![Erreur consommation électrique Domoticz Erreur consommation électrique Domoticz](https://sulek.fr/data/images/domoticz_conso_elec1.png)
Pour corriger ça, il faut aller modifier la base SQLite de Domoticz.
Ouverture de la base
La base de données se trouve à la racine du répertoire de Domoticz et s'appelle domoticz.db.file domoticz.db domoticz.db: SQLite 3.x databasePour la manipuler, il faut installer sqlite3 et procéder ainsi :
cd /home/domoticz/domoticz sqlite3 sqlite> .open domoticz.db sqlite> .headers on sqlite> .mode columnOn peut voir toutes les tables qu'utilisent Domoticz :
sqlite> .tables BackupLog LightSubDevices SceneTimers Cameras LightingLog Scenes CamerasActiveDevices Meter SetpointTimers CustomImages Meter_Calendar SharedDevices DeviceStatus MultiMeter Temperature DeviceToPlansMap MultiMeter_Calendar Temperature_Calendar EnoceanSensors MySensors Timers EventActions MySensorsVars ToonDevices EventMaster Notifications UV EventRules Percentage UV_Calendar Fan Percentage_Calendar UserVariables Fan_Calendar Plans Users FibaroLink Preferences WOLNodes Floorplans Rain Wind Hardware Rain_Calendar Wind_Calendar HttpLink SceneDevices ZWaveNodesLes deux tables à modifier :
- Meter enregistrant les consommation instantanées
- Meter_Calendar enregistrant la consommation totale.
Cas de la table Meter
Dans mon cas, l'erreur s'est produite le 2015-11-01 à 19:45:01 :sqlite> select * from Meter where date="2015-11-01 19:45:01"; DeviceRowID Value Usage Date ----------- ------------- ---------- ------------------- 17 7834658181252 498 2015-11-01 19:45:01On modifie en mettant une valeur arbitraire (j'ai pris la moyenne de la valeur précédant l'erreur et la suivante) :
sqlite> update Meter set Value=53137011 where date="2015-11-01 19:45:01";
Cas de la table Meter_Calendar
Pour cette table, il faut agir vite, car elle se base sur les valeurs de la table Meter qui ne sont conservées que 24h.select * from Meter_Calendar where Date="2015-11-01"; DeviceRowID Value Counter Date ----------- ----------- ----------- ---------- 17 78346070209 78346581812 2015-11-01
- Value correspond à la consommation totale sur 24h
- Counter correspond à la consommation totale sur l'année.
Pour éditer la base, il suffit ensuite de faire :
update Meter_Calendar set Counter=511372 where date="2015-11-01"; update Meter_Calendar set Value=28000 where date="2015-11-01";Et on obtient de nouveau des graphiques cohérents :
![Consommation électrique normale Domoticz Consommation électrique normale Domoticz](https://sulek.fr/data/images/domoticz_conso_elec2.png)