Poêle connecté HWAM

Bonjour tout le monde

J’ai en ma possession un poêle connecté Hwam, il est relié en wifi à ma box, commandé via une application sur iPhone, le tout en wifi, impossible à distance via 4G.
Il y a également un petit capteur bluetooth je pense qui sert de sonde température ambiante pour ajuster les vannes du poêle.

J’ai trouvé ce travail sur Github en python pour Home Assistant.

Est-ce qu’un gentil dev de passage dans le coin se sentirait de regarder ça ensemble pour rentrer ça dans Gladys ?
Je sais, on est sur du matos exotique, les clients de ce poêle sont rares et encore plus ceux sous Gladys… :stuck_out_tongue:

Pendant une seconde j’ai pensé que tu parlais d’une poêle de cuisine :sweat_smile: Je me suis dis “à quoi ça sert ?!” :joy:

Je suis assez occupé sur les scènes dans la v4 de mon côté, j’aurais pas le temps là !

1 « J'aime »

Si t’as des infos sur l’api c’est pas de refus.

C’est un petit problème ça, j’arrive pas à trouver.
Les seules infos que j’ai viennent du dépôt github pour home assistant.
J’ai essayé de contacter le constructeur mais pas de nouvelles…

Faudrait que tu check ces URL pour voir comment est gérée l’authentification.

0 ! Faut juste être sur le local je pense…

Retour de http://192.168.1.179/get_stove_data

{
   "updating":0,
   "message_id":176,
   "phase":0,
   "night_lowering":0,
   "new_fire_wood_hours":0,
   "new_fire_wood_minutes":0,
   "burn_level":5,
   "operation_mode":2,
   "maintenance_alarms":0,
   "safety_alarms":0,
   "refill_alarm":0,
   "remote_refill_alarm":0,
   "time_since_remote_msg":33,
   "version_major":1,
   "version_minor":9,
   "version_build":9,
   "remote_version_major":1,
   "remote_version_minor":4,
   "remote_version_build":0,
   "day":15,
   "month":2,
   "year":2020,
   "hours":7,
   "minutes":24,
   "seconds":51,
   "night_begin_hour":22,
   "night_begin_minute":0,
   "night_end_hour":6,
   "night_end_minute":0,
   "stove_temperature":6600,
   "room_temperature":1900,
   "oxygen_level":1600,
   "valve1_position":103,
   "valve2_position":101,
   "valve3_position":0,
   "algorithm":"TEST DATA",
   "doorOpen":false
}

Du coup pour un petit dev aguerri, ça doit pas être bien violent à intégrer dans Gladys, au moins pour la récup de datas… :stuck_out_tongue:

Ouai ça devrai pas être compliqué. :blush:

J’ai mis en forme le json pour que ça soit plus lisible.

Tu pourra poster le résultat de toutes les URL get*?

http://192.168.1.179/esp/get_current_accesspoint

HTTP/1.1 200 OK
Content-Type: text/json
Access-Control-Allow-Origin: *
Connection: close


HTTP/1.1 200 OK
Content-Type: text/json
Access-Control-Allow-Origin: *
Connection: close

{"ssid":"WiWi"}

http://192.168.1.179/esp/get_identification

{"ip":"192.168.1.179", "name":"Popo"}

http://192.168.1.179/get_live_data

Il me fait dl un fichier vide qui s’appelle get_live_data

Popo? :grin:

Le fichier j’ai cru comprendre que c’était du xml

« Poele » :stuck_out_tongue:

Pour le fichier, j’ai ouvert avec VScode, le format est pas supporté… oO
Quand j’ai forcé l’ouverture, il y a effectivement des datas mais le rendu est du chinois…

D’après ce que j’ai pu comprendre, le “get_live_data” est rendu sous forme de binaire… C’est pour ça que c’est pas human readable. Mais pas certain que ces infos te soient utiles dans un premier temps.
Dans l’absolu, si tu veux pouvoir controler le niveau de chauffe de ton poêle, il semblerait que la route “/set_burn_level” soit ton ami.
Dans postman, tu dois pouvoir effectuer une requête POST sur cette URL en spécifiant dans le body :

{
"level": 1
}

La question, est quelle plage de “level” est à ta disposition.
J’imagine qu’en réglant ton poêle à la main sur les valeurs MIN puis MAX, et en interrogeant " /get_stove_data" avant et après les changements, tu devrais pouvoir déduire les valeurs seuils depuis la réponse à la clé “burn_level”
Ca devrait te permettre de régler ton poele sur “plus ou moins fort”.
My 2 cents

bonjour,

je viens sur ce sujet qui m’interesse car j’ai un poele hwam.
Les commandes get fonctionnent, mais la commande post set_burn_level ne fonctionne pas. Lorsque la requete est executée, elle donne une réponse OK, mais le résultat est que pour différentes valeurs testées, j’obtiens toujours le résultat level = 0

Y a t’il un moyen de trouver la bonne commande ou le bon paramètre ? je suis prêt à aider, ben que je ne sois pas un expert.

cordialement

a y est j’ai trouvé le bon formatage :
{“level”:1}

et mettre header : accept application /json

Un dév qui a développé un script : pystove · PyPI
et un fil interessant : [gelöst] Wert (JSON) an URL senden

1 « J'aime »