Sonde de température Xiaomi Mijia LYWSD03MMC

Page : https://www.jeedom.com/market/index.php?v=d&p=profils#profil

Message :
Bonsoir,

Comme cela a déja été reporté sur les forums, cette sonde est bien reconnue dans le plugin blea, mais son comportement est assez erratique, parfois même le plugin cesse de recevoir des données pendent plusieurs heures alors même que des applications tierces arrivent a voir ces données en temps réel.

Si jamais cela peut aider, cela semble fonctionner pour Home Assistant : https://github.com/h4/lywsd02/pull/13

Bonne soirée a vous.

Vincent.

2 « J'aime »

Je confirme, elle fonctionne très bien avec Home Assistant.

Il faut oublier les astuces consistant à l’appairer avec Mi Home, pas sur que ça tienne dans la durée car il y a une clé de cryptage. Il faut donc aller chercher cette clé avec une version hackée de Mi Home (celle du russe…) et ensuite s’en servir pour configurer en l’associant à l’adresse mac de la sonde.

Ça fonctionne très bien avec Home Assistant, par contre je viens de relancer mon vieux Jeedom, mis à jour le plugin BLEA mais il n’y a aucun endroit ou entrer cette Bindkey (32 caractères) à ne pas confondre avec le Token…

Il faudra donc faire signe au développeur de ce plugin…

Moi je suis content d’être passé sous HA !

Bonjour,

Savez-vous quand il y aura un fix du code pour ce module ?

Bonjour,

Même si tu passe le plugin en bêta ?

Je n’ai pas forcément envie de passer mon système en Bêta, car pour avoir Blea en Bêta je dois avoir Jeedom en Bêta

Non tu peux mettre un plugin en bêta sans avoir jeedom en bêta par contre dans ton compte sur le market faut avoir coché bêta pour pouvoir les télécharger.

Je dis cela car le LYWSD003 est présent en bêta dans BLEA

Ah je ne savait pas autant pour moi, je vais regarder ça, je trouve le LYWSD03 dans BLEA mais je n’ai pas un relevé d’information stable et au bout d’un moment je n’ai plus d’informations du tout.
Pour un système de chauffage c’est pas fou!
Sinon petite question HS une bonne sonde de t° en Bluetooth (ou autre) pas trop chère et fiable ?

Perso je me suis rabatu sur les anciennes versions des thermomètres Bluetooth Xiaomi, c’est plus gros et un peu moins joli, mais ca fonctionne et la batterie tiens le coup :

J’en ai plusieurs comme celui ci depuis 6 a 8 mois la batterie est encore a plus de 80%, alors que mes LYWSD03 qui ont seulement 2 a 3 mois en plus de mal fonctionner n’ont déja plus de batterie (seul 2 fonctionnent encore sur 6 achetés … et un m’affiche batterie faible …

bonjour pour info il existe un script (sans blea)
il est question du low energy
j’ai pas essayé

Bonjour,

Suite a tout ça j’ai racheté deux sondes dont tu parles.

J’attend de les recevoir j’espère que tout ira bien!

Bonjour,

J’ai acheté l’année dernière des Xiaomi LYWSD03MMC. Ils sont pas chers et plutôt jolis. Mais voilà, comme beaucoup d’entre vous j’ai été très déçu par l’intégration dans Jeedom. Remontée d’infos aléatoire, batterie à plat très vite… Bref très déçu comparé aux anciens capteurs ronds.

En fait cela vient d’une différence majeure entre les 2 capteurs :

  • le capteur rond advertise les infos « en clair » donc BLEA les intercepte et les remonte dans jeedom très facilement.
  • le capteur carré (LYWSD03) advertise les infos en crpyté et donc impossible à priori de les remonter facilement. BLEA est obligé d’ouvrir une connection avec le device, de l’interroger puis de remonter l’info dans Jeedom. Ceci est très coûteux pour la baterie du capteur.

Comme mentionné plus haut, nos confrères de « Home Assistant » ont planché sur le problème … et ils ont trouvé comment décrypter les trames que le LYWSD03 advertise.

J’ai pu adapter leur solution à Jeedom, du moins sur la partie du démon BLEA et ça marche bien.
Pour l’intégrer définitivement dans le plugin j’aurai néanmoins besoin d’un coup de main d’un dev PHP familier avec Jeedom.

Comment ça marche si vous voulez tester dès maintenant :

  • Récupérer les clés d’encryptage de vos devices. Expliqué ici J’ai utilisé la méthode avec Stream et Mi Home sur mon iphone et ça marche bien. Il faut supprimer les capteurs de votre appli MiHome et les ré-appairer tout en ayant activé le sniffer. La clé doit faire 32 caractères.
  • Mettre à jour le fichier /var/www/html/plugins/blea/resources/blead/devices/lywsd03.py du démon BLEA avec mon code (dispo ci-dessous)
  • Mettre à jour le dictionnaire keys au début du module lywsd03.py avec les MAC de chaque device et la clé de dévryptage associée.
  • Ajouter la dépendance sur la librairie de décryptage : sudo pip3 install pycryptodomex
  • Décochez le ‹ refresh forcé › pour chaque device de ce type dans la page ‹ Paramètres ›
  • Redémarrer le démon BLEA

L’idéal serait d’intégrer tout ça à BLEA! Mais autant le code Python ne me fait pas peur, autant je suis pas à jour du tout en PHP…
Si quelqu’un pourrait m’aider à :

  • Dans la page « Paramètre » de chaque équipement BLEA, ajouter un champ pour rentrer la clé de cryptage
  • Faire que Jeedom pousse cette clé au démon (dans globals.KNOWN_DEVICES). Cela permettra de supprimer le dictionnaire keys ajouté à l’arrache dans le module lywsd03.py

Tim

lywsd03.py.txt (3,9 Ko)

14 « J'aime »

Merci pour le script, je viens de le mettre en place pour un capteur. A voir comment il se comporte dans quelques jours :grinning:

Merci pour le partage,

Je viens aussi de le mettre en place sur 1 des mes 4 capteurs, les autres on plus de piles :slight_smile:

J’historise la température et monitor la présence on verra.

1 « J'aime »

Hello

En test également n je verrais si c’est ok

Méthode employé
Androïd avec HttpCanary ( https://play.google.com/store/apps/details?id=com.guoshi.httpcanary&hl=fr )

Oublié Packet Capture cela ne fonctionne pas

Re

bon rien ne change , donc méthode non fonctionnellement pour moi

Même chose aussi les capteurs décrochent au bout d’un moment, comme avant

Ah je crois que j’ai oublié de mentionner quelquechose!!! Essayez de décocher « Refresh Forcé » dans les paramètres du device dans Jeedom.

Ce que j’ai observé c’est que la connection entre mon Pi0 et le capteur reste ouverte. Donc il n’advertise plus et en plus il vide sa baterie.

Dites moi si ça marche. J’ai en ce moment 3 capteurs qui marchent nickel depuis ce week-end.

J’ai Retrouvé une pile donc on va voir test sur 2 capteurs. Pour info j’ai 2 antennes, donc poussé la conf sur les 2.

1 « J'aime »

Je te conseille de vérifier que l’icône « B » du Bluetooth est bien éteinte sur les capteurs. Elle s’allume quand le capteur est connecté à Jeedom ou MiHome.
Si elle est allumée en permanence c’est que la batterie ne va pas durer longtemps!

Ok, merci je viens de regarder il n’y a pas l’icon.
Pour l’instant il semble y avoir du mieux depuis que jai décoché la case « Refresh Forcé ».
Mes 2 capteurs sont toujours ok ce matin (hier au bout de 2h plus rien). a suivre, croisons les doigts