Page 1 sur 7

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : mer. mai 23, 2018 12:51 am
par Razmoket
Bonjour

Vu les questions récurrentes, voici un premier post de présentation de la solution développée pour connecter une G2, via un module wifi embarqué. Cette solution permet de communiquer avec son AM, à partir d’un browser sur PC, ou d’un smartphone. Dans l’état présent, elle permet de modifier la plupart des paramètres intéressants de l’AM, et d’en visualiser le bon fonctionnement. Elle permet également de recevoir sur son smartphone des alertes en mode « push », en cas d’erreur sur la machine.

Un petit dessin étant mieux qu’un long discours, voici un schéma de fonctionnement du système
Image

La fonctionnalité centrale de l’application est assurée par openHAB, une solution Domotique open source. OpenHAB va permettre d’interagir avec une foultitude d’objets connectés, qu’ils soient commerciaux (Netatmo, Amazon Echo, Nest,
) ou faits maison, via toute plateforme (windows, Mac, IOS, Android, Linux). Vous pouvez, par ce biais, interroger Alexa (Amazon), consulter la météo, modifier la consigne de votre vanne thermostatique dans la salle de bains, allumer la lumière dans la cour, ou demander à votre Automower (AM2xx) de rentrer à sa base. Vous pouvez également automatiser certaines tâches, en combinant plusieurs services: demander à l’AM de rester dans sa base si la meteo annonce du gel dans moins de 3h dans votre secteur. Ou programmer ses sorties via votre agenda Google.

La grande force d’openHAB, c’est l’intégration de la majorité des protocoles et objets connectés, ce qui permet de combiner, via une seule interface, des informations hétérogènes venant de différentes sources.

La page de présentation d’OpenHAB: https://www.openhab.org

Le protocole utilisé par G2Connect est MQTT, un protocole mis au point par IBM, et très largement utilisé dans le monde de l’internet des objets. Extrêmement robuste et simple, il permet l’intégration rapide d’objets connectés. En pratique, dans cette solution, à moins de vouloir faire du debug, MQTT est invisible, c’est le messager qui, en sous-main, assure que les messages envoyés par ou pour l’AM arrivent à bon port.

MQTT et openHAB tournent sur un serveur Linux, un Raspberry Pi 3 (et sur plein d’autres plateformes). Le raspberry est minuscule (un paquet de cigarettes), ne consomme presque rien et coûte 3 fois rien (50€ environ). Une fois configuré, ce serveur se fait oublier et tourne en permanence.

L’AM embarque un petit module fait maison, qui s’enfiche dans le connecteur blanc de celle-ci. Ce module est composé de 2 éléments: un module wifi (ESP01) qui assure la connexion au réseau wifi, et fait le lien entre MQTT et les messages codés en format « Husqvarna », code propriétaire partiellement décodé par quelques passionnés, dont Poil de Carrotte que vous connaissez bien et qui a développé le « TweakAM » de fameuse réputation.
Le second élément du module est un petit microcontrôleur Atmel, l’Attiny85, dont l’unique rôle est de faire transiter les messages du module wifi vers l’AM, et d’éviter qu’un code « interdit » ne soit envoyé à l’AM. Car l’accès à certaines zones mémoire de l’AM peut lui être fatal, et cette protection est indispensable en cas de défaillance du module wifi.

Le module implanté
Image
S’il y a suffisamment de demande, je ferai faire un PCB pour simplifier la mise en oeuvre et limiter les risques d’erreur.

La solution tourne actuellement, depuis le début de la saison, sur 3 AM 230: 2 chez moi, une chez chercheur. Ca fait environ 1.500.000 trames de messages échangés en 2 mois, et aucune AM n’a été maltraitée dans l’expérience. Un 3e candidat devrait tester les instructions de mise en oeuvre. Dès lors, la solution pourra être proposée plus largement
.à condition d’avoir un tout petit peu de « bon sens » informatique. Cette solution est ouverte et vous permet de configurer openHAB plus en avant et d’ajouter vos propres objets / services / solutions au socle existant.

Quelques copies d’écran, déjà postées précédemment
Image
Image
Image

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : mer. mai 23, 2018 2:27 am
par Mheller
Merci Razmoket pour ce travail, ma 230 et ma 265 n'attende que cela, il faudra simplement que je renforce mon wifi sur le terrain.

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : mer. mai 23, 2018 9:12 am
par chercheur
Razmoket a aussi une solution pour ça 😀

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : mer. mai 23, 2018 12:18 pm
par poildecarotte
super! voici la solution du futur avec un hardware pérenne à trois sous: que veut-on de plus?

Une petite question titille ma curiosité:
Normalement si le ESP est connecté en wifi , TCP/IP , alors les commandes qui lui sont transmises par ce lien sont vérifiées par le code d'erreur du protocol TCP/IP, donc en principe il peut les transmettre de manière transparente au robot sans risque.
Donc le Attiny85 est finalement sensé protéger le robot de quelles erreurs? De celles éventuellement générées par l'appli sur le Rasberry PI ?

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : mer. mai 23, 2018 1:27 pm
par Razmoket
Pour l'extension du wifi, il y a effectivement une solution basée sur le même module ESP01 (ou tout autre de la famille eSP8266). Je ne l'ai pas développée moi-même, vous trouverez l'info ici: [url https://github.com/martin-ger/esp_wifi_repeater].

@PDC: L'esp8266 intègre un kernel qui tourne en tâche de fond et gère la communication wifi et l'accès aux ressources du chip. Ce n'est plus de la programmation "bare metal" comme sur un attiny. Le hic, c'est que lorsqu'il y a un problème, soit sur ce kernel, soit dans l'appli elle-même, le noyau prend la main et envoie des informations de debug sur le port série. Ces infos de debug peuvent être interprétées par l'AM avec les risques qu'on connaît. D'autre part, lorsqu'on programme et modifie le logiciel du module wifi, on peut faire une erreur.
Enfin, il faut savoir qu'on n'est pas en mode transparent: les informations générées par openhab et transportées par MQTT sont des informations lisibles par un humain. La transformation en codes hex se passe au sein du module esp, à l'exception d'une commande spéciale pour faire transiter un code de manière transparente (utilisable en debug). C'est très pratique car openhab peut alors faire abstraction de la communication bas niveau avec l'AM, et le module envoie spontanément les informations, de manière asynchrone, sans que openhab n'aie à les demander (merci MQTT).

Le firewall offre une sécurité supplémentaire en cas d'erreur idiote. Tant que je ne modifie pas le code du firewall, je peux faire évoluer celui du module wifi sans risque.

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : mer. mai 23, 2018 1:56 pm
par poildecarotte
ok je comprends très bien la précaution et effectivement en cas de reset l'ESP se met à cracher une salve de saloperies préjudiciables au robot: c'est une très bonne initiative que de se prémunir contre celà.
Il existe une autre solution pour les éviter: c'est d'utiliser la pinoche alternative pour le TX de l'ESP, celle là est propre au moment du reset et ne transmet rien.

Ok, bien compris que vous avez deux modes: le transparent et celui où l'ESP fait le relai.
En fait je pense que à terme vous pourriez vous passer du firewall dans l'Attiny85 et le déporter dans l'ESP (programmable à distance peut être?):
- mode relai: c'est l'ESP qui fait le firewall et qui assure la sécurité
- mode transparent, debug: là ça passe direct et ça permet d'expérimenter le robot mais le lien radio est sûr d'un point de vue protocol (checksum).
Mais encore une fois c'est une très bonne précaution lorsqu'on débute avec ces expérimentations.

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : sam. mai 26, 2018 3:04 am
par Razmoket
C'est surtout très intéressant de pouvoir faire évoluer la partie ESP sans devoir valider à chaque fois l'absence de risque pour la carte mere. Si on veut être rigoureux, sachant que tout, y compris l'impensable peut arriver, il faut des semaines sur le terrain pour pouvoir dire: ok, cette solution tient la route. Si la sécurité est assurée par un composant spécifique fait pour ça, qui ne change jamais, on est bien plus flexible sur la partie en amont. Comme ce composant coûte moins de 2 euros, et que je défie tout assureur de garantir ma carte mere, pour un montant inférieur à 2€, contre des aleas de programmation, mon choix est vite fait.


G2 Connect, Une solution domotique pour AM 220 - 230

Publié : ven. juin 01, 2018 10:35 pm
par krystyan
Bravo, je suis très intéressé par cette solution.

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : jeu. juin 21, 2018 11:43 pm
par Vikhelm
Salut à tous,
Moi aussi, je suis très intéressé par cette solution mais comment avoir un peu plus d'infos afin de pouvoir y contribuer ?
Je ne suis pas un codeur fou mais j'ai quelques connaissances en info,télécom & automatismes ...
Merci

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : jeu. août 23, 2018 12:41 am
par Farnibull00
Bonjour,
Je suis ce Topics depuis quelque temps déjà cela m’intéresse beaucoup.
Mon Robot tourne depuis environs 5 ans mnt sur un raspberry que j'ai mis dans la bestiole, avec un script, qui me permet de interroger en wifi, cela fonction relativement bien.
Seulement ce n'est pas vraiment ce qu'il y de mieux, le CPU chauffe (parfois 85°) vu aucune aération, et rspi plante, la carte SD j'en suis a ma 3 eme. je dirais en moyenne 1 - 2 fois par mois je dois rebooter.
je me suis lancé dans l Esp8266, qui n' pas tout a fait le même langage et fonctionnement. Donc si vous avez une solution Esp veux bien testé, L esp et déjà installé dans le mouton, mais je sèches clairement au niveau du code :(

Et j'aimerais vraiment arrivé a remplacer le rpi par qque chose de moins lourd si on peux dire ca comme cela :-)

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : mer. août 29, 2018 1:22 am
par Razmoket
Hello

E retour après une longue période, occupé sur d'autres projets.
Entretemps, la doc est finie, les composants sont arrivés, voici une photo du module en version finale, implanté dans mon AM
Image

...et tout fonctionne sans erreur. J'ai une dizaine de PCB, avis aux amateurs

A.

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : mer. août 29, 2018 9:57 am
par guigui
Bonjour,
Compatible gardena sileno city 250 ? :D

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : mer. août 29, 2018 10:28 pm
par Razmoket
Compatible G2 (tout ce qui fonctionne avec le logiciel de PDC ). A mon avis le gardena 250 n'est pas compatible.


G2 Connect, Une solution domotique pour AM 220 - 230

Publié : jeu. sept. 06, 2018 12:55 am
par Farnibull00
bonjour,
un tout grand bravo pour tout ces efforts
magnifique travail

oui je veux
comment faire ?

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : dim. sept. 09, 2018 12:49 am
par Razmoket
J'ai fini la doc (en anglais)
J'ai terminé (aujourd'hui!) de faire une image disque pour le raspberry pi "anonyme" , donc débarassée des identifiants d'accès à mon réseau.
J'ai tous les composants et les pcb pour une dizaine de kits.

Donc.....un mail privé et c'est parti.
Attention, certains ont manifesté de l'intérêt auparavant et seront servis en priorité. Mais le réapprovisionnement n'est pas trop long.

Priorités aux premiers demandeurs.

A vous lire....
A.

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : dim. sept. 09, 2018 10:34 pm
par krystyan
Est-il possible d'utiliser un NAS (synology) à la place du rasperry ?

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : lun. sept. 10, 2018 4:03 pm
par Razmoket
Bonjour

OpenHAB tourne sur Synology, et Mosquitto (MQTT) également. Donc, oui, ça devrait fonctionner.
Le module n'utilise que des accès standards à MQTT, même chose pour openHAB.

Ma configuration d'OpenHAB est ouverte, donc accessible (et modifiable) par tous.

Mais je n'ai pas testé, donc je ne peux pas donner de garantie. Si vous y arrivez, ça profitera à tout le monde.

Ca peut aussi tourner sur n'importe quel serveur linux ou windows.

A.

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : mer. déc. 05, 2018 2:53 pm
par Busa
Bonjour,

Je suis très intéressé par cette solution et je serais ravi de servir de testeur.
Le but sera de faire tourner OpenHAB et Mosquito sur mon Synology.

@Razmoket
Dois-je t'envoyer un MP pour obtenir un PCB ainsi que la documentation d'installation?
Autre question: Le ESP8266 est-il reprogrammable via wifi ou bien faut-il un accès physique pour chaque test/mise à jour?

Merci à tous ceux qui bossent sur ce genre de projet.
Ca fait du bien de voir qu'il y a des gens aussi barrés que moi! (o)


G2 Connect, Une solution domotique pour AM 220 - 230

Publié : mer. déc. 05, 2018 7:48 pm
par chercheur
Envoyez lui un MP.

G2 Connect, Une solution domotique pour AM 220 - 230

Publié : ven. déc. 07, 2018 1:30 am
par Razmoket
Hello
J'ai répondu en MP
Il reste des PCB...mais c'est la fin du stock.

L'ESP n'est pas programmable OTA, il faut le sortir de son socket dans la tondeuse. Mais l'idée est de ne pas avoir besoin de le mettre à jour, c'est de l'embarqué, ça doit tourner 24h/24. Toute l'intelligence et la paramétrisation se passe sur le serveur OpenHAB.