Passer en zigbee un capteur bluetooth Xiaomi LYWSD03MMC

Le BLE c’est cool, et c’est pas les ESP32 maniaques qui vont dire le contraire :slight_smile: mais le Zigbee… ah le zigbee… comment dire c’est un peu hard-core un peu SM… mais quand on est passé du coté Z2MQTT on peut plus s’en passer… ah… l’amour…
il se trouve que je me suis offert une PS1 Bambu lab (et oui il y aurait beaucoup a dire tant ca me change la vie par rapport a ma vielle Creality 10), et bien que je n’ai pas (encore) trouvé de moyen de la surveiller sur home assistant comme je le faisais avec octoprint, je peux ENFIN imprimer des matériaux avancés et solides (nylon, ABS) sans craindre les courants d’air, les pattes d’éléphant ou les décollements intempestifs…
Mais bons sang c’est quoi le rapport avec le bluetooth me direz vous ? ce a quoi je répondrai :
« Silence, impudent, on y arrive ! : »

L’utilisation de ces matériaux est delicate, et très sensible à … l’humidité ! (vous voyez, ca arrive… et j’ai besoin de monitorer cette dernière dans des endroits… exigus… (rohh… mais non… pas ceux la…)
Exigu et humide (non pas la non plus, vous avez un problème ou bien ?), c’est un boulot pour le capteur Xiaomi LYWSD03MMC !
Oui celui la même qu’on trouve a 4 euros en promo chez les copains du far est… ou a 9,90 chez les copains du far ouest…
sauf que … il est Bluetooth…
pas graven me dis-je… d’abord il est tout mignon trop gnon gnon avec son petit smiley, et puis j’ai une integration Bluetooth dans mon HA… donc ca ira…

Hélas, que nenni ! il est reconnu, mais n’affiche que le niveau de la batterie… supppper :confused: ça me fait une belle jambe… :frowning:

Du coup je fait des recherches, et je tombe sur
✅ Intégrer les capteurs Bluetooth Xiaomi dans Home Assistant via Passive BLE Monitor mais… ca marche po…
Je continue, persevere, et sur YouTube je tombe sur une vidéo qui aide à convertir ces capteurs en… zigbee !!!
Hein quoi? c’est possible ca? tous ces réseaux WIFI, Bluetooth LE, Zigbee… fonctionnent sur la même fréquence, ou quasi. mais les protocoles doivent etre tellement différents qui sont incomptatible au niveau materiel, et la je me dis en moi même :

  • il va encore falloir qu’il fasse de la soudure ca va etre un foutoir (oui je me parle a moi meme a la 3eme personne, j’assume pas d’utiliser des mots grossiers quand je pense) )
    Et bien non ! tout ce dont on a besoin c’est un ordi avec Bluetooth et cette page :
    GitHub - devbis/z03mmc: Xiaomi LYWSD03MMC Zigbee Firmware
    La différence entre un chipset Bluetooth LE et un chipset Zigbee peut etre simplement logicielle ! je ne le savais pas, et c’est une vraie révélation pour moi…

En plus les étapes sont tresssss simples pas besoin d’UART (du moins pour ce capteur) tout se passe via Bluetooth:

  • téléchargez les 2 binaires en cliquant sur le lien Releases · devbis/z03mmc · GitHub
    image

  • ouvrez la page de Flash via bluetooth (entre autre) Telink Flasher v6.2

  • connectez votre xiaomi qui apparait sous le nom LYWSD03MMC (s’il n’apparait pas le redémarrer)

  • dans les options de flashage selectionnez le premier flash a faire (destiné a permettre au capteur d’accepter le second logiciel a flasher) et sélectionnez le fichier binaire ATC_ota_40000.bin dans votre répertoire puis flash : un compteur s’affiche vous disant que votre capteur est en train d’etre flashé

  • une fois que c’est fini votre appareil se déconnecte et le log en bas indique
    17:40:17: Update done after 115.876 seconds
    17:40:24: Disconnected.

  • vous vous reconnectez en cherchant le nouveau nom de votre appareil qui commence par ATC_…, oui il a changé, mais il sourit toujours :slight_smile:

  • dans les options de flashage sélectionnez maintenant le 2eme Flash a faire (destiné a passer le capteur en Zigbee) et sélectionnez le fichier binaire z03mmc.bin dans votre répertoire puis flash : un compteur s’affiche vous disant que votre capteur est en train d’etre flashé

  • une fois que c’est fini votre appareil se déconnecte.

  • lancer une decouverte zigbee et…
    image


NB le capteur peut etre recalcitrant… si vous avez un échec affiché dans les logs, retirez la pile et recommencez…

Encore une Fois Kudos a la comu HA internationale et au gars qui ont sans doute passé des heures carrées a faire ca !
ceux qui ont fait les flash et le tuto original
image
et le gars qui a fait l’interface :
image

leur effort vous auront permi d’avoir un capteur de marque (Xiaomi c’est pmas du tuya…) avec affichage, et donc sans lien cloud pour a peine plus de 4 euros…

2 « J'aime »

C’est étonnant qu’il ne tourne pas avec blé passive monitor. Tu les avais flashé avant comme pour le zigbee ?

Je n’ai pas encore basculé les miens sur le zigbee, sur blé depuis 3 ans sans soucis.

Merci pour le tuto qui pourrait m’aider si je saute le pas.

1 « J'aime »

j’ai pas bcp insisté pour ble… j’avoue :slight_smile: j’ai installé le dongle bluetooth pour le test de la serrure net atmo, et je trouve qu’voir wifi bluetooth et zigbee c’est pas top top

Bonjour,
ça fonctionne très bien en BLE et BTHome

Mais en Zigbee aussi, c’est top aussi :slight_smile:
J’utilise le firmware de pvxx, moi. Comme pour le BLE. pvxx roxx !!

Les Xiaomi LYWSD03MMC sont top, et pas cher du tout. Comparé à tout ce que tu trouves.

1 « J'aime »

Le délai de remonter des infos est paramétrable en zigbee ?
En ble je peut mettre le temps en secondes que je veux entre chaque lecture.

Oui !


1 « J'aime »

Va peut être falloir que je m’y penche un jour.

J’en ai 12 en BLE, et il m’en restait un que j’ai testé en Zigbee pour pas mourir con :rofl:

C’est ce que je vois sur le screen. j’en ai que 6 je fais pauvre à coté.
N’empêche c’est à cause de ces bébêtes que je me suis mis sérieusement à HA en voulant gérer mes radiateurs.

Je m’en sers aussi pour mes radiateurs avec versatile thermostat. Même pour dehors :wink:

Reste avec nous @WarC0zes, tu ne peux pas mourir :innocent:

Bob

2 « J'aime »

Oui c’est vrai ! Qui va corriger nos codes foireux dans nos cartes !! :rofl:

4 « J'aime »

j’ai profité du flash de mon 2eme capteur pour rajouter qques copies d’écran :slight_smile:

1 « J'aime »

Le flash en OTA a l’air simple sauf que je suis sur un firmware non pris en charge…va falloir que je cherche pour le faire en uart.
Mon HA est trop loin est le BLE ne capte plus au fond de ma maison grrrr

pour le coup je comprends pas ta remarque, tout se passe sans fil et avec un navigateur… :slight_smile:

edit : je viens de comprendre le software qui est dqns le capteur est paqs pris en cherge… ca m’avait ecrit ca a un moment j’ia recommencé et ca a marché

Oui le dernier firmware sur les capteurs empechent le flash en OTA, j’ai du le downgrade pour apres pouvoir faire le flash vers la version zigbee

Depuis 2 mois j’ai de gros problèmes avec mes 2 thermomètres mijia LYWSD03MMC.
Ils étaient flashés en bluetooth et fonctionnaient sans problème depuis 1 an jusque là (autonomie : environ 1 an)

Sur 1 des 2 j’ai voulu tester avec une pile rechargeable lir2032 et visiblement cela l’a mis HS en quelques heures.
Sur le 2ème j’ai mis une pile neuve cr2032 et idem, plus d’affichage.
Quand les thermomètres n’affichent plus rien malgré des piles neuves , y a t’il quelque chose à faire ?

Voyant cela j’ai déballé un thermomètre LYWSD03MMC neuf et l’ai flashé d’abord avec le binaire ATC_ota_4000 bin puis en zigbee avec le binaire z03mmc.bin.
Ceci sans erreur.
J’ai utilisé une pile neuve mais très rapidement je me suis aperçu que l’affichage freezait.
Que feriez vous et qu’est ce qui a pu entrainer cela ?

1 « J'aime »

Bonjour,
il faut utiliser le firmware de pvvx, pas celui de devbis que mentionne @golthar.

tu peux convertir le firmware de devbis vers celui de pvvx, regarde ce post:

Hello,
j’ai un petit soucis avec mon thermometre, je voulais le faire passer en zigbee avec le flash par bluetooth et j’ai eu une erreur lors du flash du fichier z3mmc.bin, et depuis l’ecran n’affiche plus rien, j’ai essayer avec un dongle fdti/uart - usb mais je n’arrive toujours pas a avoir d’interface sur l’écran du capteur. J’ai connecté le pin TXD avec une Resistance de 1k Ohm et le GND, 3.3V (avec dupont sur la carte) j’ai essayer le programme sur chrome avec le Port USB mais je ne sais pas quel logiciel de flash utiliser pour installer le firmware autrement, cela ne fonctionne toujours pas.

C’est pourtant écrit (mais en anglais c’est vrai) dans le lien dans le post donné juste avant :
→ pour flasher en filaire directement
l’explication donnée en lien est celle-ci
et si on traduit :

Étapes

  1. Prépare ta machine
  • Installez les conducteurs si vous avez besoin de
  • Si vous n’êtes pas dans les fenêtres, créez une machine virtuelle avec Win11 et assurez-vous que vous pouvez accéder au port USB-Serial. Vous pourriez avoir besoin de l’activer dans la boîte virtuelle…
  • Saisissez le micrologiciel (vous pouvez passer directement du stock 2.1.1 au dernier ATC, c’est-à-dire, 4.8)
  1. Allez sur le logiciel de flashage et assurez-vous que le nouveau port série apparaît dans le dialogue, et sélectionnez-le.
  2. Choisir le nouveau micrologiciel
  3. Tout le reste est bien, les paramètres par défaut sont corrects
  4. Avec votre main (ou d’une manière ou d’une autre), appuyez sur la broche TXD jusqu’à P14
  5. Cliquez sur flash
  6. Attendez qu’il soit terminé (environ 30 ans)
  7. Profit