sebcmenu / JsHeatzy

Standalone javascript application to programm Heatzy Pilote
3 stars 0 forks source link

Don't work with 1st version of Heatzy Pilote Hardware #1

Open patlehibou opened 3 years ago

patlehibou commented 3 years ago

With a 1st version of Heatzy Pilote Hardware (bought in 2018) the schedule isn't loaded from server and is empty. The changes made disappear after logout and log in again. And they don't appear on the phone App.

sebcmenu commented 3 years ago

Well, i only own version bought in 2019, so i can't test and see what is wrong. The application is only based on API proposed by Heatzy, so it may be related to the way their IoT Cloud talks with the "1st version". Did you notice the "Save" button on the top right, to push your changes to the server before login out ? Even I sometimes forget to use it and have to set the changes again...

patlehibou commented 3 years ago

Here are some screenshots to explain the issue : We see the schedule for all my Heatzy pilots (2nd generation like yours) except for "Salle de bain" (1st generation) who's blank : image If I select "Chambre Quentin" I see the schedule et can edit it. But if I select "Salle de bain" whose schedule is empty and add something : image it seems to be Ok when I click "save", image but the schedule isn't modified on the phone App, and when I reload the page, the schedule is empty again : image I worked in may 2018 to interface my first Heatzy pilot (the one who's "Salle de bain' now) with an IPX800 automate server from GCE (see this article on the Heatzy's blog : https://heatzy.com/blog/20/5/2018/intgration-dun-boitier-heatzy-pilote-avec-un-ipx800-v4-de-gce), and it worked fine. I work again with Heatzy's APIs to let an ESP8266 based IoT pilot my Heatzy devices, and will have to interface my 1st generation one and the three 2nd generation. Maybe we can work together to solve this issue if you want...

Arnaud-Delattre commented 2 years ago

Great job Seb,! Juste pour vous dire que j'ai rencontré les mêmes symptômes que Pat. Je peux programmer à l'aide de l'interface de Sébastien mes 2 derniers boitiers Heatzy commandés sur le site Heatzy en février 2021, avec la référence HE001 sur le bon de commande. Mais impossible de programmer mes 2 premiers boitiers, commandés sur le site Leroy-Merlin en septembre 2019, qui ont pourtant aussi la référence HE0001 (avec un 0 de plus toutefois) au dos du boitier.

Savez-vous s'il y a un moyen de connaître la version de firmware des boitiers, puis de les upgrader ?

J'aimerai pouvoir utiliser l'interface de Sébastien pour la programmation, car elle permet, contrairement à l'application mobile, de choisir "Off" pour des plages horaires , ce qui me serait très utile pour faire fonctionner le "Hors-Gel" en heures creuses et l'arrêter en heures pleines quand la maison est inoccupée.

Arnaud-Delattre commented 2 years ago

Je viens de voir dans la doc API que les ordres Post n'étaient pas tout à fait les mêmes pour les pilotes de 1ère génération et ceux de 2ème et 3ème. Peut-être l'explication du pb ? Capture d’écran 2022-01-09 182000

patlehibou commented 2 years ago

Bonjour Arnaud, Oui le problème semble exactement celui-là mais je n'ai pas pris le temps d'investiguer plus jusqu'à présent. Par contre par rapport à votre idée de couper complètement le chauffage en journée plutôt que de le mettre hors gel, à mon humble avis ce n'est pas une bonne idée car :

Pour ma part, dans ma résidence secondaire, j'ai programmé ma domotique pour que la température des pièces ne descende pas sous les 10° (la domotique repasse les radiateurs en éco le temps que ça remonte vers 12° puis repasse en Hors Gel). Notre maison s'en est porté beaucoup mieux depuis que nous l'avons fait. Évidemment cela a un coup en énergie, mais qui peut se compenser par un moindre besoin de réfection des tapisseries, murs moins endommagés à terme car moins humides, outre les aspects désagréables d'une maison humide, avec des traces de moisissures et les problèmes respiratoires ou d'allergies que cela peut occasionner... Donc je n'ai pas cherché plus car je n'ai qu'un seul pilote de 1ère génération (celui de la salle de bain) et j'utilise surtout l'app pour piloter à distance. Mais si je me remets à chercher et que je trouve qqchose, je posterai mes infos. De ce que m'avait répondu Heatzy quand j'avais posé comme vous la question d'un upgrade, ce n'est pas possible car ce n'est pas seulement une évolution software entre la 1ère et 2ème génération, mais une évolution hardware aussi. Bien sincèrement

Arnaud-Delattre commented 2 years ago

Merci Pat pour votre retour et vos conseils. Pour mon cas , c'est aussi une résidence secondaire, mais dans une région au climat très sec (les Alpes du Sud) et aussi assez froid (1100m d'altitude). Donc aucun souci d'humidité (taux d'hygrométrie < 50% la plupart du temps). Mais si je pouvais maintenir hors-gel à 3 ou 4 degrés en moyenne au lieu de 7,5, je pourrai faire des économies.

patlehibou commented 2 years ago

Effectivement, le problème n'est pas le même que pour moi en Vendée... ;-) Je comprends mieux votre souhait de pouvoir piloter vos radiateurs via l'interface de Seb. Si je trouve un moment, je vais me repencher sur la question pour pouvoir également piloter des modules v.1

sebcmenu commented 2 years ago

Bonjour à tous les deux, j'ai été pas mal occupé et ai laissé un peu ce sujet de côté. J'ai un peu regardé l'API, et je ne vois pas de fonctionnalité qui permettent de gérer la programmation sur les V1. Il y a bien, comme indiqué par Arnaud, le truc pour pousser directement l'ordre (hors programmation), avec un format différent des V2/V3, mais je ne vois pas la possibilité de programmer dans l'API, donc soit c'est pas/mal documenté, soit c'est just pas possible parce que le truc ne sait pas faire. Pour répondre à cette question, j'ai besoin de vous (j'ai pas de V1) : est-ce que , via l'appli mobile, vous savez programmer vos V1 ? Si c'est le cas, j'irai demander à Heatzy comment (si?) c'est sensé fonctionner via les APIs, et j'adapterai le code pour gérer le cas (ça devrait pas être compliqué, juste une histoire d'adapter l'interface back). Merci de votre réponse.

patlehibou commented 2 years ago

Bonjour Seb, Effectivement l'app mobile permet de gérer la V1. Les seules fonctionnalités qui ne sont pas gérées sont :

Pour ma part j'avais programmé pour pouvoir récupérer les états de ma V1 (la seule que j'avais à l'époque) depuis mon IPX800 de GCE et les modifier via l'interface. Cela s'appuyait sur un serveur NodeJS relais, car l'IPX800 V4 ne savait pas gérer correctement les requêtes POST (pas possibilité de paramétrer les Headers notamment). Le détail se trouve ici sur le Wiki de GCE. J'ai conservé la documentation des APIs qui m'avaient servies au développement, elle est jointe ci-dessous, je pense que ça pourra aider... 2017-03 Heatzy - API Documentation.pdf A votre disposition pour essayer d'avancer sur ce point et faire des tests avec ma V1. Bien cordialement

patlehibou commented 2 years ago

Bonjour, Je croyais avoir répondu à ce message, mais visiblement il n'a pas dû passer, ou je suis resté trop longtemps sans activité sur la page et je n'étais pas revenu dessus depuis. Pour répondre à la question de la programmation d'une V1 via l'app c'est "oui" et l'interface est la même que pour les V2/V3. La seule différence est que la V1 ne sait pas gérer les modes "verrouilage" et "vacances". A votre disposition pour essayer d'avancer sur le sujet. Je vais avoir un peu de vacances ces prochaines semaines mais malheureusement je n'aurai pas mes boitiers sous la main. Et je ne peux pas m'aventurer à les piloter à distances. Une fois où je l'ai fait, l'un des pilotes a perdu la connexion alors qu'il était en mode confort (en plein début du confinement de fin 2020) et j'ai complètement perdu la main dessus. Je vous laisse imaginer la conso électrique dans un appartement non occupé ! Patrice