[V4] Intégration Zigbee2mqtt

Jusqu’à présent je faisais mes PRs sur le github d’@AlexTrovato puisque c’est lui qui est à l’origine des développements sur le service Zigbee2mqtt. Il a toujurs une PR ouverte sur le github officiel pour le service.
Continuons-nous de cette façon ?
@AlexTrovato, souhaites-tu toujours travailler comme ça (en as-tu encore le temps) ou est-ce que j’ouvre une nouvelle PR sur le github Gladys ?

Salut @Reno , c’est peut être mieux si tu crées ta propre PR directement, c’est toi qui as repris tout ce boulot.

Bonjour bonjour,
Quelle est la différence entre Zigbee2mqtt et la ZiGate? :thinking:

La zigate peut servir au zigbeemqtt :

  • zigate récupère les infos zigbee
  • zigbeemqtt transmet ces infos via mqtt (un protocole de communication)

Ooh d’accord, merci pour les explications

Pour compléter ce post, voici le retour reçu du “fournisseur” de ces puces moddées :

"Hi,

thank you for your message. First of all I‘d like to tell you that I test the sticks before I ship them, so they work fine, but I cannot give any warranty.

I charge 31€ per CC2531 with antenna mod and case. If you need an additional router you can pick an additional CC2531 flashed as router for the same price.

I don’t have alu any more (and not it’s not realy aluminium, it had aluminum particles in it.) The substitute for the color alu is silver (J). Same price for all colors.

The cheapest shipping option within Europe without insurance and tracking is 5,5€ (letter, at your own risk). With tracking it is 9,9€"

Ça revint à 36€50 du coup. Plus cher, mais tout est fait, et il y a le petit case en plus, bien joli.
J’hésite encore, mais je crois que je vais me laisser tenter ^.^

@bobdivx intégrer à gladys ou zigbee2mqtt ?

D’où ma question, on maintient pas zigbee2mqtt , il faut soumettre la compatibilité et surtout il faut pouvoir flasher le device avec un firmware zigbee2mqtt.

Le produit en question est un CC2530 donc y’a peut être moyen, mais y’a très peu d’infos. A ta place j’oublierai.

Hello @Reno !

Je suis ta PR sur GitHub, est-ce que tout va bien, ou est-ce que tu as besoin d’aide? :slight_smile:

N’hésite pas, cette PR est super et je pense qu’elle va faire un succès quand elle sera dispo pour toute la communauté Gladys !

3 « J'aime »

Je profite du fait de voir @Reno en ligne pour te demander : est-ce que ton travail actuel permettra de rǵler le problème que je rencontre ? Mes ampoules Xiaomi que je ne peux pas intégrer dans Gladys alors qu’elles sont bien détectées.

Bonjour à tous,

Je t’avoue que la période est un peu confuse et complexe à gérer…
Côté code, je viens de me refaire une Rpi4 de dev pour pouvoir tester complètement ce que je code car WSL est super pour développer mais pour l’interaction avec le matériel (dongle USB), je dois passer sur cible.
De plus, je n’ai pas eu trop de temps ces 15 derniers jours (municipales, confinement, télétravail, …).
J’ai terminé ma RPi de test cette nuit et suis donc opérationnel pour continuer plus efficacement le service. Je pense en profiter pour faire un tuto sur la RPi de dev tant que c’est frais…
Je reviendrai vers toi si j’ai des soucis, dans la semaine.

@bobdivx, le service Zigbee2mqtt dans Gladys dépend du projet de même nom que nous utilisons tel quel. Si le matériel dont tu parles n’est pas supporté par ce projet, il ne fonctionnera pas. Il faut alors que tu te rapproches de sa communauté pour voir si des développeurs peuvent travailler sur l’intégration de ce nouveau matériel. Comme il est à base de CC253x, ça ne devrait pas trop leur poser de problème.
Concernant ton besoin qui est d’augmenter la portée du Zigbee pour l’utiliser dans toute ta (grande) maison, je pense qu’il vaut mieux que nous en profitions pour l’intégrer à Gladys sous la forme de machines Gladys esclaves qui pourraient être équipées de dongles supplémentaires. Tout cela est prévu par @pierre-gilles, si je ne me trompe pas, mais fera partie de la phase suivante des développements.
Aussi, du fait de l’utilisation de containers Docker pour Zigbee2mqtt, je pense qu’il serait assez simple de le mettre en oeuvre directement sur une autre RPi que celle qui fait tourner Gladys sans trop de soucis, en faisant juste pointer vers le container MQTT utilisé sur la machine Gladys.
Lorsque j’aurai terminé le dév du lancement auto des containers depuis Gladys, je regarderai vite fait si c’est faisable.

@guim31, salut, j’avais généré une nouvelle image Docker du service, il y a quelque temps et j’attendais que tu me fasses un retour dessus.

As-tu pu tester ?
Tu as toujours le même problème avec cette version ?

Mon objectif est de tester et rendre compatible tout le matériel qui pose encore problème.Je regarderai donc pour tes ampoules mais j’ai besoin de retour car je n’ai pas tout le matériel à la maison.

1 « J'aime »

Au temps pour moi je n’avais pas compris ^^

J’ai testé hier et j’ai exactement le même soucis

Merci pour ta réponse et pour le temps que tu dédie à ce développement :pray:

Tu n’arrive pas à tester depuis ta machine? :confused: Depuis WSL, pas moyen d’accéder aux ports USB ? En cherchant rapidement sur internet, je suis tombé sur des articles style:

Je ne connais pas du tout Windows, mais à mon avis ça doit être possible d’utiliser le matériel directement sur ton PC, parce que devoir mettre le code sur Pi pour tester, quelle galère ! ^^

@pierre-gilles, effectivement je galère…

Après ton message, je me suis dit que j’avais peut-être raté qq chose sur Windows. J’ai donc re-essayé de trouver une façon de voir les dongles sur Wsl mais en vain…

Du coup, je suis repassé sur Rpi mais maintenant, j’ai des soucis avec les install de module sous node.
La détection des dongles fonctionnait bien mais depuis 3 jours, impossible d’en détecter un. J’ai re créé l’env de dev plusieurs fois, mais impossible de retrouver mes dongles… Je suis même repassé sur des commits plus anciens, sur master et tjs pas de dongle…
Cela doit donc venir du npm install mais je ne sais pas comment le résoudre.
Si qq’un a une idée, qu’il n’hésite pas.

Problème résolu ! :v:

Pour info (ça peut servir à d’autres), je me suis fait avoir comme un bleu… :woozy_face:

Comme je dev sur PC (WSL) je lance Gladys sur PC.
Ensuite pour tester la reconnaissance des dongles USB, je passe sur une raspberry de dev car ça ne fonctionne pas sous WSL.
Pour cela, je push du PC sur github et je pull du github sur la Rpi. Ensuite, je me connecte sur l’instance de Gladys de la Rpi depuis le navigateur de mon PC.
Du coup, sur ma rpi, je récupère la config de base du projet et notamment le front/config.js.

J’avais donc depuis 3 jours la variable qui définit le backend sur localhost (donc mon PC vu depuis le navigateur qui tourne sur le PC) à la place de l’IP de ma Rpi.
Ainsi, le front de la Rpi discutait avec le server (backend) du PC qui tournait et qui ne voyait donc pas les dongles (c’est pour ça que je passe par la Rpi…).
3 soirs avant de comprendre.
Quel con ! :rage:

@Reno Tant mieux si tu as résolu ton problème !

Par contre essaie de te mettre en relation avec quelqu’un qui dev sur Windows pour arriver à faire tourner ça sur Windows, car clairement dev sur Pi tu vas mettre des mois pour avancer… :slight_smile:

Je dev sur Windows et Linux

En pre-requis pour Windows

  • node lts
  • npm à jour => npm install npm @ latest -g
  • Le nécessaire pour gyp => npm install --global windows-build-tools
  • SQlite ( SQLite Home Page )

Rien d’autre ( on peut aussi avec WSL mais là ça sert à rien )

Je remonte un peu le sujet,l’intégration est freez en attendant que le service MQTT soit plus mature ?

On attend un service MQTT plus mature ? Il me semble que zigbee2mqtt publie et consomme ses propres topics, c’est similaire au module Tasmota, et donc hors du périmètre MQTT spécifique Gladys.

Exact, le sujet me semblait en stanby, mais c’est @Reno qui a repris la PR.