Présentation du thermostat wifi BHT-6000

Ça y est j’ai enfin réussi à récupérer le token.
Après un nième essai ce midi, impossible de récupérer quoi que ce soit avec la méthode du « tuya-cli list-app ». Pour ma part, il a fallu que j’installe l’application Jinvoo Smart (depuis le play store) sur laquelle j’ajoute le thermostat d’après la manip’ normale. Ensuite j’installe l’application Packet capture (qui demande d’installer un certificat), et je lance une capture de trames sur l’application Jinvoo. Je refresh l’application la liste des périphériques sur Jinvoo et je retourne sur Packet capture. J’ouvre les trames capturées, et parmis elle, la requête JSON en clair, ou l’on récupère le deviceID et la localKey.

Par rapport à l’intégration sur jeedom via Wifilightv2, pas de soucis particulier. Tout réponds bien : l’interface physique, le téléphone ou les commandes via le widget jeedom, tout est récupercuté partout quasi-instantanément.

Voici la liste des commandes que je récupère :

Bon après plusieurs essais, je me rends compte qu’il manque la remontée de deux infos, dont une primordiale : l’état du relais du thermostat (la primordiale) et la température cible en mode auto.

En théorie, l’état du relais est égal à « température relevée < température de consigne », mais en vrai j’aurai bien aimé avoir cette info, pour monitorer sur graphe que mon chauffage se met en route aux bons moments (donc quand la température descend en dessous de la consigne, modulo l’hystérésis), et du coup adapter si le comportement n’est pas satisfaisant.

Et pour la température cible, j’aurai aimé avoir quelle température le thermostat doit atteindre dans sa programmation journalière. Et donc pas seulement une température de consigne uniquement pour le mode manuel.

A moins que j’ai loupé quelque chose ?

Bonjour je regarde ce feed attentivement depuis quelque temps, j’ai commandé le thermostat, pour l’instant je wait et je me documente.

Actuellement mon chauffage est entièrement géré par jeedom, et ça marche bien.

Mon but est d’avoir une interface plus “WAF” pour que l’on puisse communiquer avec la gestion de jeedom sans forcement via un téléphone ou une tablette, avoir un accès rapide, et le thermostat fixé au mur est une bonne solution, “ comme avant” me dit ma femme.

Pour répondre à ta question @Dreaky il semblerait en effet que cette information ne soit pas présente dans les diverses lectures que j’ai pu faire.

Ce thermostat peut aussi être flashé pour pouvoir interagir avec lui via MQTT, ce qui me semble beaucoup mieux (pour moi), et propre. Vous trouverez ici un firmware:

Dans la documentation, @Dreaky , tu pourras y voir que pour avoir l’information du contacteur, il faut faire une modification hardware pour avoir l’information sur l’ESP.

Moi de mon côté je pense que je n’en aurais pas besoin, je ne vais pas utiliser le contacteur. Seulement afficher des informations et récupérer les informations de consigne et/ou eco/normal pour interagir avec jeedom.

Le seul problème a mon gout afin d’utiliser le firmware MQTT, c’est que le firmware ne déclenche pas une information instantanée lors du changement de consigne sur le thermostat… il faut attendre 5 min… Peut-être que cela résolut plus tard.

Pour l’instant je vais partir sur l’intégration avec le milightv2 comme décris ici on verra…

@Dreaky Tu me confirmes toi que lors du changement de consigne sur le thermostat remonte sur jeedom ?

Bien à vous !

Merci pour l’info, je vais voir si la modif hardware/software vaut le coup ou pas. Mais en vrai, ça me fait un peu chier de devoir ouvrir la bête pour ce qui était à la base (pour une fois) un truc « prêt à l’emploi ».

Absolument, et c’est quasi-instantané chez moi. Et idem sur le téléphone, les chaque source de modif (le thermostat lui même, jeedom et l’appli sur téléphone) sont prises en compte et bien répercutées sur les deux autres.

@Dreaky merci de ton retour.
Par contre, je pense que tu peux oublier la modification hardware si tu flash pas le thermostat.
La modification consiste à envoyer l’information sur une PIN de l’ESP, mais il faut ensuite que le firmware en place capte l’information pour la traiter convenablement. Ce qui veut dire que dans le firmware d’origine ce n’est surement pas le cas… IMHO

Oui bien entendu :slight_smile:

Question subsidiaire plutôt lié à jeedom :
Comment envoie-t-on une valeur numérique à l’aide d’une commande de type slider sur un widget virtuel ? Mon idée est de reproduire le widget créé par @RaphV57 pour régler la valeur de consigne :

Comment configure-t-on un tel widget pour renvoyer la valeur à travers le slider de l’objet wifilightv2 ?

J’ai utilisé l’application « Tuya Smart » je ne sais pas quel était la version lors de mon 1er téléchargement sur le google play mais là je suis en 3.14.7! Et mon smartphone n’est pas rooté.
Attention il y a d’autres applications au nom très similaire: « Smart Life - Smart Living », « LifeSmart »… C’est pas ça le problème à ton avis?
https://www.domotique-info.fr/wp-content/uploads/2019/05/xdomotique-info-app-tuya-smart-android-1.jpg.pagespeed.ic.CfutO6L5OX.jpg

Ta méthode semble plus simple! Je l’ajoute au 1er post

Ces deux infos ne sont effectivement pas remontées. C’est dommage, on est d’accord.

Dans le virtuel:


Dans les commandes de l’équipement:

Néanmoins, le slider du virtuel ne bouge pas si la température est mise à jour depuis une autre source. La valeur numérique change bien, évidemment.
De mon côté, j’ai viré ce slider car je me suis rendu compte que je ne touchais jamais la consigne manu.

Actuellement mon virtuel intègre un bouton pour passer en mode manu + consigne à 17°C puis relancer le mode auto en fin d’après-midi. J’aurai pu aussi appeler ce bouton « ce dimanche c’est repas de famille »! :smile:
image image

1 « J'aime »

vu qu’il existe différent modèle pour différent besoin (planché chauffant,circulateur 3 vitesses,…)

https://www.amazon.fr/BHT-6000-GCLW-Hebdomadaire-Programmable-Thermostat-Fonctionne/dp/B07H6YP65G

Le contrôle précis du confort maintient la température à 0,5 0.5 du niveau que vous avez défini

ou pour une consigne à 21°C: Marche à 20,5°C, arrêt à 21,5°C
-0.5 + 0.5 = 1 sinon je trouve énorme 2 degré

bonjour a tous,
j’ai essayé toutes vos methodes pour le connecter a jeedom mais impossible.

des idées ?

merci

Tu arrives à récupérer l’ID et le token?

Non c’est bien mon soucis
J’ai essayer la méthode du proxy et du qrcode, celle de l’appli avec packet capture et me suis inscrit sur le site de tuya pour avoir les accès développeur (en attente de validation)

Merci

Premier soucis avec le thermostat apparu hier. Je ne récupère plus rien depuis wifilightv2, car le champs « connecté » me renvoie un « -3 », qui correspond d’après la doc à un « périphérique non connecté ».

Pourtant le thermostat est toujours pilotable via l’appli mobile sans problème, et est toujours connecté à ma freebox.
J’ai activé le mode debug dans wifilightv2, et voici ce que j’obtiens :

[2020-02-05 09:49:50][DEBUG] : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Search for devices <<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[2020-02-05 09:49:50][DEBUG] : ****** Device listenable BHT-6000 - Class: Tuya_Therm_V2 *****
[2020-02-05 09:49:50][DEBUG] :    Socket updated @192.168.0.2
[2020-02-05 09:49:50][DEBUG] :    Connection impossible. Err=115 : Operation now in progress
[2020-02-05 09:49:50][DEBUG] :    Update device @192.168.0.2 channel:1
[2020-02-05 09:49:50][DEBUG] : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> End <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

Qu’est-ce que cela veut-dire ?

Une désactivation/réactivation du plugin wifilightv2 ainsi qu’Un redémarrage de jeedom n’a pas résolu le problème.

Ton thermostat aurait pas changé d’ip par hasard ?

Non j’avais bien fait gaffe à lui attribuer un bail statique d’IP (comme pour tous mes périph wifi).

Entre temps j’ai effectué d’autres recherche.
Je suis notamment tombé sur ce poste qui relate les mêmes problèmes que moi (sans donner de solution néanmoins).

Du coup j’ai essayé de m’en sortir par moi même.
Voilà ce que j’ai tenté :

  • Désactivation/Réactivation du plugin : sans effet
  • Reboot de la box jeedom : sans effet
  • Reboot du wifi de la freebox : sans effet
  • Reboot complet de la freebox : sans effet
  • Changement d’ip du thermostat : sans effet
  • Débranchement/rebranchement électrique du thermostat : hourra !

Pour debug et pour infos, voici les logs correspondants :

Changement d’ip du thermostat (passage de 192.168.0.2 à 192.168.0.17 ):

[2020-02-05 13:09:35][DEBUG] : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Search for devices <<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[2020-02-05 13:09:35][DEBUG] : ****** Device listenable BHT-6000 - Class: Tuya_Therm_V2 *****
[2020-02-05 13:09:36][DEBUG] :    Socket updated @[192.168.0.17](http://192.168.0.17/)
[2020-02-05 13:09:36][DEBUG] :    Connection impossible. Err=115 : Operation now in progress
[2020-02-05 13:09:36][DEBUG] :    ADD New device @[192.168.0.17](http://192.168.0.17/) channel:1
[2020-02-05 13:09:36][DEBUG] : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> End <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

[2020-02-05 13:10:37][DEBUG] : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Search for devices <<<<<<<<<<<<<<<<<<<<<<<<<<<<<
[2020-02-05 13:10:37][DEBUG] : ****** Device listenable BHT-6000 - Class: Tuya_Therm_V2 *****
[2020-02-05 13:10:37][DEBUG] :    Socket updated @192.168.0.17
[2020-02-05 13:10:37][DEBUG] :    Connection impossible. Err=115 : Operation now in progress
[2020-02-05 13:10:37][DEBUG] :    Update device @192.168.0.17 channel:1
[2020-02-05 13:10:37][DEBUG] : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> End <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

Débranchement électrique :

[2020-02-05 13:12:20][DEBUG] : ////// Receive from :192.168.0.17 //////
[2020-02-05 13:12:20][DEBUG] :     Receive after decode :}F3l=
[2020-02-05 13:12:20][DEBUG] :    No data returned
[2020-02-05 13:12:20][DEBUG] : ///////////////// End ///////////////////

Rebranchement :

[2020-02-05 13:12:39][DEBUG] : ////// Receive from :192.168.0.17 //////
[2020-02-05 13:12:39][DEBUG] :     Receive after decode :{"devId":"47163522cc50e3e6bc92","dps":{"1":true,"2":44,"3":37,"4":"0","5":false,"6":false,"102":0,"103":"1","104":true}}}F3l=
[2020-02-05 13:12:39][DEBUG] :     Read Json OK
[2020-02-05 13:12:39][DEBUG] :     State is:array(50) {   ["Intensity"]=>   int(-1)   ["White"]=>   int(-1)   ["White2"]=>   int(-1)   ["Color"]=>   int(-1)   ["Prog"]=>   int(-1)   ["Speed"]=>   int(-1)   ["On"]=>   int(1)   ["Play"]=>   int(-1)   ["Saturation"]=>   int(-1)   ["Kelvin"]=>   int(-1)   ["Connected"]=>   int(-1)   ["AmbColor"]=> ...
[2020-02-05 13:12:39][DEBUG] :     +++ Update state - On:1 - Auto:0 - ConsTemp:22 - Temp:18.5

A voir si ça tient dans le temps. Mais j’aimerai autant éviter de devoir le reboot électriquement chaque semaine, m’voyez :sweat_smile:

D’autre ont eu le même soucis pour l’id et le token ?
Merci

Normalement la méthode avec l’appli Packet capture et Jinvoo Smart, tu devrais pouvoir y arriver sans problème.

Déinstall sur ton téléphone toutes les applis déjà testé et tous les certificats. Réinstall proprement Packet capture (avec le certificat qu’il propose) et l’appli Jinvoo Smart sur laquelle tu link ton thermostat.
Déconnecte toi de ton wifi local (passe par la 3/4G) et ensuite lance la capture avec packet capture. Fais un simple refresh de la liste sur Jinvoo et retourne sur packet capture. Tu devrais avoir une trame de capturée avec une taille de 16 ko. Normalement c’est celle qui contient les infos JSON là ou tu pourras récupérer le deviceID et la local key.


hum je reteste avec tout en neuf,
pour packet capture si je vais dans settings, generate certificates, il m’indique impossible de créé le certificat (peut être pour ça que ça voulais pas)

des idées pour avoir le certificat ? merci

en essayant sans le certificats, j’ai beaucoup de no data, et quelques fichiers de 7.1Ko (genre 1/50)
quand j’ouvre, j’ai l’impression qu 'il decode pas du tout

j’ai essayer avec httpcanary, c’est mieux j’ai des choses mais pas de fichiers de 16Ko, rien de plus gros que 8.52Ko,
ca m’a l’air mieux, j’arrive a lire la consigne mais c’est tout pour le moment

dans les logs ca donne ca

[2020-02-07 19:51:53][DEBUG] :     Cmd : {"t":"1581101513","devId":"23928535","dps":{"1":false},"uid":""}
[2020-02-07 19:51:53][DEBUG] :     Try to connect to : 127.0.0.1  6900
[2020-02-07 19:51:53][DEBUG] :     Connect OK!
[2020-02-07 19:51:53][DEBUG] :     Cmd : {"gwId":"23928535","devId":"23928535"}
[2020-02-07 19:51:53][DEBUG] :     Try to connect to : 127.0.0.1  6900
[2020-02-07 19:51:53][DEBUG] :     Connect OK!
[2020-02-07 19:51:53][DEBUG] :    Send cmd to device @192.168.1.105
[2020-02-07 19:51:53][DEBUG] :     Try to connect to : 192.168.1.105  6668
[2020-02-07 19:51:53][DEBUG] :     Connect OK!
[2020-02-07 19:51:53][DEBUG] : !!!!!!!!! End !!!!!!!!!!
[2020-02-07 19:51:53][DEBUG] :    Send cmd to device @192.168.1.105
[2020-02-07 19:51:53][DEBUG] :     Try to connect to : 192.168.1.105  6668
[2020-02-07 19:51:53][DEBUG] :     Connect OK!
[2020-02-07 19:51:53][DEBUG] : !!!!!!!!! End !!!!!!!!!!
[2020-02-07 19:51:54][DEBUG] : ////// Receive from :192.168.1.105 //////
[2020-02-07 19:51:54][DEBUG] :     Receive after decode :LALp
[2020-02-07 19:51:54][DEBUG] :    No data returned
[2020-02-07 19:51:54][DEBUG] :     Receive after decode :gw id invalidLALp
[2020-02-07 19:51:54][DEBUG] :    No data returned
[2020-02-07 19:51:54][DEBUG] : ///////////////// End ///////////////////

Sans le certificat, tu n’arriveras pas à décoder les trames. Après regarde, il existe d’autre applications de capture de trames dans le même style, le principe reste le même.

J’ai essayer avec httpcanary mais pas de fichier de 16ko juste des 8ko et dur à décoder pour trouver les infos
Bizarre quil ne veuillent pas générer le certificat