pluzzy_passerelle_zigate_compatible

Pluzzy sur ma passerelle ZigBee – ZiGate

Depuis que je me suis intéressé au hack des capteurs Xiaomi, j’ai parcouru pas mal de chemin et de fil en aiguille, je me suis lancé dans le développement de ma propre passerelle ZigBee. Comme pour tout projet, au départ, c’était pour mon utilisation personnelle mais je me suis rendu compte que développer sa propre passerelle ZigBee pour les box domotiques intéressait les gens. Mon objectif est de concevoir une passerelle « universelle » (tout en respectant les normes ZigBee).

Petit à petit, j’ai rajouté des couches pour rendre compatible :

  • Les capteurs Xiaomi (Home Automation)
  • Les ampoules Philips Hue
  • Les ampoules compatibles Light Link (ZLL)

Puis au fur et à mesure de mes avancements, des commentaires et des derniers évènements, un petit nouveau (pour moi) a levé les bras au ciel. Je veux parler de la gamme Pluzzy.

En effet, la box pluzzy de Toshiba, et repris récemment par ijenko, va bientôt couper son cloud.

Cette fermeture implique que les capteurs et la box ne peuvent plus fonctionner et restituer l’information. Bref, un poids mort pour tous les utilisateurs de Pluzzy. D’autant plus, je trouve que les prix de ces appareils est assez important (depuis Xiaomi, tout est cher je trouve).

Du coup, certains utilisateurs (clients) se sont sentis un peu abandonné et ce sont retournés vers moi pour :

  • Avoir des infos sur la technologie
  • Savoir si on pouvait envisager un recyclage sur une autre box domotique.

Hé bien la réponse est dans la suite de l’article

Votre note

Click to rate this post!
[Total: 37 Average: 3.2]

 

Un petit tour du propriétaire

Alors pour trouver une solution et faire communiquer un objet, il faut avant tout le connaître parfaitement et comprendre comment il se comporte.

La première des choses à faire, c’est de consulter la datasheet. Pour commencer, j’ai décidé d’étudier le capteur le plus simple, à savoir le capteur de température / humidité. Je me dit que si j’arrive à interfacer ce capteur, les autres suivront plus facilement.

Que nous dit la datasheet :

  • C’est du ZigBee (ouf)
  • Il respecte la norme Home Automation

Ils communiquent même les clusters et informations de l’appareil:

cluster_pluzzy_temperature_humiditeClusters du capteur de température / humidité pluzzy

Pour l’instant, tout va bien et le capteur semble être compatible avec ma passerelle au même titre que les Xiaomi. (l’arbre des clusters est le même)

La seule inconnue réside dans la clef de sécurité. Cette gamme fait-elle comme tous les autres en utilisant la clef par défaut de l’alliance ZigBee ?

Tests et développement d’une solution

J’ai donc procédé de la manière suivante :

J’ai utilisé un capteur Xiaomi en mode sniffer et j’ai utilisé mon prototype de passerelle ZiGate pour voir si ça fonctionne.

Côté capteur, je procède à un « reset d’usine » à chaque test pour valider la procédure de A à Z.

Et là, c’est le drame, j’étais confiant (vu la datasheet) pour que ça fonctionne du premier coup mais ça n’a pas fonctionné sur ma passerelle:'(. Rien ne se passe. Pas de traduction de trames pour restituer sur le port série.

J’ai donc basculé sur les traces du sniffer et voici la trace.

Sniffer_zigbee_pluzzySniffage capteur pluzzy

Surprise, les trames sont bien décodées !?

Alors au début, c’est l’incompréhension mais si vous regardez bien les traces, on s’aperçoit que le capteur s’annonce bien ( Device Announce), que ma passerelle acquitte bien et direct après on reçoit les données utiles (température et humidité) du capteur décodées… (heuuuu il manque pas quelque chose là ?).

Puis quelques trames après, la « Transport Key » (souligné en bleu) pour négocier la « Network Key« .

J’ai mis un peu de temps à réaliser, mais en fait, il n’y a tout simplement pas de sécurité des données. Le capteur pluzzy ne négocie pas de clef réseau pour chiffrer ces données.

Le problème est que ma passerelle, elle, tente de négocier… Et oui, elle n’a pas été faite pour ce cas.

Voici la différence d’une trame d’un capteur Xiaomi et d’un capteur Pluzzy

Trame_pluzzy_ZigbeeTrame pluzzy

Trame_xiaomi_zigbeeTrame Xiaomi

Voilà, on le voit bien dans la partie « Network Header » qu’il n’y a pas de sécurité des données pour la gamme Pluzzy. Du coup pas de « Network Key » à négocier avec la passerelle.

J’ai donc repris mon code de la passerelle pour ajouter la gestion des trames non sécurisées. Et la magie a opérée.

traces_zigateTraces ZiGate

Désormais ma passerelle ZiGate fait bien l’appairage du capteur Pluzzy et récupère bien les informations de température et humidité.

Autres informations :

  • Ce capteur communique ces données toutes les 3 minutes.
  • Les trames sont émises 3 fois pour éviter les pertes … (les doublons sont gérés avec les numéros de séquences)

Youpi ! Pluzzy n’est pas encore mort ! 😉

Conclusion

Je tiens à remercier tout particulièrement Franck qui m’a prêté son capteur de température / humidité Pluzzy (et tous les autres qui ont proposé aussi mais qui ont été moins rapide ;))

Grâce à lui, j’ai pu rapidement trouvé une solution et rendu compatible ma passerelle ZiGate avec la gamme Pluzzy (alors je m’avance en disant ça, j’ai pas encore testé les autres produits de la gamme mais bon… il n’y a pas de raisons…).

Vous avez vu aussi, j’ai donné un petit nom à la passerelle : ZiGate. J’ai été un peu obligé car je suis en train de monter un dossier KickStarter que je devrais bientôt mettre en ligne.

J’ai aussi lancé la production des premiers PCB pour les premières versions. Je vous tiendrai au courant bien entendu de l’évolution de cette affaire… A bientôt

45 comments

  1. Super !

    Tu auras l’occasion de regarder également la compatibilité avec la gamme Ikea Trådfri ? (de ce que j’ai compris, c’est également du ZHA)

    Leur gamme est relativement bon marché (plus cher que du Xiaomi, mais on peut les avoir rapidement)…

    Merci

    K.

    1. Oui c’est prévu. Il faut juste que j’ai l’occasion d’aller à Ikea Montpellier… Apparemment on ne peut pas commander par internet…

  2. Du coup comment tu communiques avec ces systèmes domotique ?

    J’aimerais éviter d’avoir X interlocuteur pour recevoir ou donner un ordre.

    1. La passerelle est relié par USB à une box domotique type jeedom ou domoticz… Les plugins pour les box devront être développés

    2. Rien ne t’empêche aussi de le connecter à une raspberry pi (ou esp8266) et de transférer en Http à ta box domotique… C’est une possibilité… Il faut juste du temps pour développer tout ça.

  3. Je suis avec intérêt vos péripéties et je suis interloqué par le peu de sécurité voir même le manque total de sécurité de ces appareils domotiques. Alors certes celui-ci ne remonte que la t° et l’humidité mais il pourrait être un point d’entrée à toute l’infra domotique d’une maison.

  4. Salut, excellent travail, bravo.

    Pour ma part j’ai aussi du Pluzzy.
    Au départ en mars 2014 j’avais la première version non cryptée (probablement celle de ton ami), mais en octobre 2014 il y a eu une campagne de mise à niveau vers une version encryptée.
    Il faudrait voir si ta passerelle peut fonctionner aussi avec cette version.

    1. Voici un extrait de la campagne :
      En plus de ces nouveautés, nous avons fait évoluer la technologie de communication radio qui permet à vos accessoires Pluzzy (module pour compteur électrique, prise intelligente connectée, détecteur de mouvement, d’ouverture / fermeture, ou capteur de température, …) de communiquer avec votre unité centrale Pluzzy. Nous passons en effet à compter du mois d’octobre 2014 sur l’ensemble de nos accessoires Pluzzy du standard de communication Zigbee HA 1.1 à la version Zigbee HA 1.2 encryptée.

      Parmi les nombreuses améliorations fonctionnelles venant avec la version Zigbee HA 1.2 encryptée on trouve en particulier un niveau de sécurité inégalé pour la communication de vos données entre les accessoires Pluzzy et l’unité centrale Pluzzy, grâce à sa technologie d’encryptage des données (encryptage des données sur 128 bits). Soucieux de vous apporter le meilleur de la technologie et le plus haut niveau de sécurité dans le traitement de vos données, Toshiba a donc décidé de faire évoluer son offre Pluzzy et de ne plus proposer que des produits en version Zigbee HA 1.2 encryptée à compter du mois d’octobre 2014.

      Si vous choisissez de vous équiper de nouveaux accessoires Pluzzy (en version Zigbee HA 1.2 encryptée) nous devrons procéder alors, à la mise à jour de votre unité centrale Pluzzy, procédé qui se fait à distance depuis notre centre de service Pluzzy, à votre demande.

    2. En effet, je m’en suis aperçu après la rédaction de l’article. Je reçois normalement bientôt un pack complet de la gamme pluzzy. Je pense qu’elle aura la dernière version 2.1.

      En tt cas ça m’aura permis de tester et de rendre compatible les vieilles versions.

      Merci à toi pour les informations.

      1. Merci surtout à toi pour ton travail, et pour donner une seconde vie à nos Pluzzy
        Je te suis avec intérêt pour intégrer les prises dans Jeedom.

  5. Salut et merci pour tous tes conseil et aide.
    Est ce que tu compte aussi nous faire partager ton code qui permet d’echanger avec les module xiaomi?
    Car j’ai un raspberry mais je sais pas par ou commencer quelle capteur zigbee utilise tu pour communiquer avec les modules??

    Merci a toi.

  6. Excellent et très pédagogique !
    J’adore ton travail et je vais suivre avec intérêt ton projet de financement participatif pour ta passerelle. Couplée avec domoticz ça peut être très sympa.
    Bonne continuation

  7. Bonjour,

    Super idée. Je voulais commander du xiaomi et le coupler avec mon jeedom. Mon pb est que la passerelle est en wifi et il est couper chez moi alors ta passerelle reliée en USB n est que du bonheur. J ai hâte..merci

  8. Que dire sinon bravo? J’ai probablement le première version des pluzzy, je l’avais gagnée lors du lancement du produit. Je suis déjà bien équipé Xiaomi (deux téléphones, une batterie, un mi-band 2 et des lunettes VR), j’attends donc avec impatience de faire revivre ces modules.
    Bon courage pour la suite et merci de partager avec nous tes avancées!

  9. Bravo!
    Tiens nous au courant, je suis intéressé !
    Pour la sécurité pluzzy, c’est surtout il me semble entre la box pluzzy et le cloud que c’est et que ca doit etre sécurisé.
    Que le voisin joue à capter la temperature de la sdb, … pas trop de danger ni d’interet non ?

    1. Cela dit en relisant l’info de Guillaume Renard, cela me revient, il y a eu effet une deuxieme version. S’il te manque des capteurs, je pense avoir une panoplie complete (lecteur de donnes compteur edf, thermostat filaire de chauffage, capteurs de mouvement, capteur temperature et humidite, prises … je prete volontier pour la science ! Bon il faut que je me prepare a passer à jeedom… ( pour l’instant les programmes de pluzzy fonctionnent encore, je ne peux juste plus rien modifier et je n’ai plus acces aux donnees de conso electrique, ou aux différents mode de pilotage du chauffage).
      La traduction des trames pour les module pluzzy un peu compliqués, ca va etre etre de la tarte non plus, il va falloir s’y mettre a plusieurs et moi je pars de loin… peux-tu m’envoyer un message au lancement de la campagne de financement?

      1. Attention, pour le moment, je n’ai validé que le capteur de température en mode ZHA 1.1. Domadoo ma prêté gracieusement la panoplie complète en ZHA 1.1 mais je n’ai aps eu encore l’occasion de tester.
        Par contre , si vous avez des appareils pluzzy en version ZHA 1.2, je suis preneur pour les tests…

        Ne t’inquiète pas, je communiquerai sur le blog, twitter, facebook et newsletter lorsque la campagne kickstarter sera validée

  10. Je pense avoir tout en 2.1 ( d’ailleurs j’avais oublie le capteur d’ouverture de porte). Il faut que j’evalue ce que je peux preter (en ce moement a peu pres tout je pense … les objets secu, pas trop utile d’ ici fin juillet, chauffage ca va aussi, et pour le chauffe eau solaire, ben pareil, en ce moment c’est 100% solaire, je peux les debrancher en continu.
    Tu peux me contacter par mp.
    D’ailleurs j’ai un copain qui A une plateformende financement( koffrefor, kibouge, …) si ca te tente …( la ca a l’air en maintenance mais je peux vous mettre en contact.

  11. Salut,
    Perso je suis contributeur du projet Kickstarter. Je crois en ton projet et j’espère que tu vas faire le nécessaire pour qu’un plugin soit développé sur Jeedom, sinon ça servirait à rien pour ma part.
    J’ai lu que Ludovic attendait ta Gateway pour se lancer.

  12. Bonjour,

    Sur le projet c’est indiqué en kit.
    Est-ce que ça veut dire qu’il faudra monter la clé soi-même ?
    Sur une Jeedom mini+ quel kit faut-il prendre ?

    Merci pour de partager ce projet.

    Tu as déjà presque atteint ton objectif… bravo

    1. Oui il faudra clipper 2 modules et visser 2 vis. Faut bien un minimum « faire soi même » ;). Pour jeedom la version TTL suffit.

  13. Bonjour,
    Très intéressé par ce projet malheureusement j’arrive trop tard pour participer au kickstarter , y aura t-il moyen de se procurer la ZiGate autrement?
    Merci et bonne continuation.

    1. Bonjour,
      Oui, malheureusement il faudra être patient. Je risque de bientôt libérer quelques ZiGate courant du mois… Sinon ce sera pour la fin de l’année…
      À bientôt

  14. Bonjour,
    Je découvre ton superbe projet que maintenant et j’arrive aussi trop tard sur le kickstarter.
    Néanmoins j’aimerai me procurer un Zigate wifi pour remettre en route mon Pluzzy. Je viens d’arriver sur mon lieu de vacances car je ne l’utilise que pour surveiller la consommation électrique et la présence de mon studio en mon absence (des locataires y accèdent). Je pensais pouvoir accéder aux données de mon Pluzzy en local en le branchant directement à mon ordi… Merci de me donner espoir de pouvoir donner une 2nd vie à cet équipement.
    Bon courage.

  15. Bonjour,

    J’ai du matériel Pluzzy, les termes techniques sont incompréhensibles pour moi mais je vois qu’il est possible de redonner vie à la box et aux périphériques . Votre solution est elle vulgarisée et accessible à un ignare en informatique????

    Cordialement

  16. Bonjour,
    Nous souhaiterions avoir l’information lorsque la chaufferie de l’immeuble tombe en panne !
    quel matériel à installer pour cela ? Nous pensons à la pose d’un « senseur » sur la conduite d’eau du chauffage et après ? 🙂
    A vous lire.
    Bien cordialement
    Teuto29

    1. Bonjour Triaire,
      Vous avez tout le matériel mais pas la technique ! je n’ai pas le matériel et pas la technique ;(
      Que pouvez vous me dire de plus ?
      Belle journée

  17. Alors, ce qu’il faudrait c’est :

    -1 Installer le firmware specifque Pluzzy sur la Zigate
    -2 coté Plugin domoticz, utiliser la branche ‘pluzzy’ git checkout pluzzy
    -3 et ensuite faire des essais d’appairage

Leave a Reply

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.