Petit résumé :
Je possède deux radiateurs Sauter Malao et j'ai récupéré les infos JSON via l'API Cozytouch, j'avais suivi quelques forums sur le sujet et au lieu de rapatrier simplement les infos sur Domoticz je me suis dit que d'essayer de faire un script qui fait le boulot d'un plugin pourrait servir à d'autres.
Avec l'aide de DreamL j'ai récupéré également les données d'un chauffe eau Thermor.
Je vous laisse tester, vos remarques sont les bienvenues pour amélioration ou correction.
Télécharger le script : (voir nouveau script V3 dans les prochaines pages du forum) Placer le dans /etc/home/<utilisateur>/Domoticz/scripts
Perso je fais cette manip. avec WinSCP en me connectant sur le raspberry.
Assurez vous d'avoir les droits d’éxécution sur le fichier (Avec WinSCP : Clic droit sur le fichier puis propriétés).
Ouvrez le script et entrer votre login/mot de passe dans la partie "paramètres", enregistrer et fermer.
Le script a besoin de ces modules, il faut veiller à les installer :
Code : Tout sélectionner
sudo pip install requests shelves Code : Tout sélectionner
sudo nano /etc/crontab -e Code : Tout sélectionner
*/1 * * * * <utilisateur> python/home/<utilisateur>/domoticz/scripts/cozytouch.py1) A chaque exécution, le script contrôle que le matériel virtuel dummy Cozytouch est présent.
Attention il contrôle aussi le nom, ne le renommé pas.
Si le matériel est absent le script créé automatiquement un matériel virtuel dummy nommé "Cozytouch_V + numéro de version", ainsi qu'un fichier "cozytouch_save" qui va être créer dans le même répertoire que le script. Ce fichier a fonction de tampon de sauvegarde pour le script.
Toutes les créations de devices Cozytouch vont s'appuyer sur ce matériel virtuel.
NB : Si vous supprimer le matériel virtuel dummy Cozytouch, le script va supprimer le fichier "cozytouch_save", cela revient à repartir de zéro.
2) Le script a besoin de connaitre :
- L'adresse IP et le port de votre Domoticz (par défaut 127.0.0.1:8080)
Votre login/mot de passe Cozytouch
Il ajoute automatiquement ce qu'il connait, c'est à dire :
- radiateur(s), vérifié: Sauter Malao
et/ou chauffe eau, vérifié: Thermor
3) Le script va rafraîchir les données à chaque appel du cron, toutes les minutes, et transmettre les changements de consigne si vous en demandez (pour l'instant, sur un radiateur uniquement).
Pour un radiateur :
Tous les dispositifs sont nommés radiateur_+numéro de position dans les données JSON Cozytouch.
- Un switch sélecteur informant de l'état (Off, Eco, Confort, Hors gel)
Une mesure de température
Un compteur d'énergie en kWh
Une consigne de température confort
Une consigne de température éco, qui est une consigne d'abaissement de la consigne confort
On trace la demande dans les logs : NB :
Pour l'instant je n'ai pas intégré l'état "dérogation" qui est une modification de consigne pendant qu'un radiateur est mode programmation.
Je n'ai pas vérifié si le compteur d'énergie fonctionne correctement.
J'ai un décalage avec les mesures de température affichées par l'appli Cozytouch, 1°C environ (l'application prévient qu'elle arrondie)
Pour un chauffe eau :
Tous les dispositifs sont nommés chauffe eau_+numéro de position dans les données JSON Cozytouch.
- Un switch sélecteur informant de l'état (Auto, manu, manu+ECO)
Un état Marche/Arret
Une mesure de température (je suppose que c'est la température de l'eau dispo ?)
Un compteur d'énergie en kWh
Un compteur de temps de fonctionnement de la pompe à chaleur
Une indication de la quantité d'eau restante (pas certain que ce soit ça)