Reverse Engineering - Aldes B200-FAN_T.Flow® Hygro+

J’ai sondé le port USB, il n’y a pas d’émission sur aucune broche, je pense qu’il faut un appareil connecté pour que ça dialogue.

Avec la quantité de trames je vais regarder comment les bits bougent afin d’essayer de comprendre justement comment Aldes a codé le truc. Pas de raison que la température varie pendant 1h si je n’ai pas de conso d’eau chaude. J’aviserai une fois les données là :slight_smile:

Il est peut probable selon moi que les températures soient en float, on parle d’un chauffe eau donc je pense que la précision au degré est suffisante pour eux et ce serait ce faire chier pour pas grand chose surtout quand tu vois que les sondes sont justes posées dans un doigt de gant en vrac. Mais je peux me tromper.

Merci c’est cool d’avoir ce genre de message.

Ce type de phrase m’encourage à partager içi mon aventure car des fois on a l’impression d’être seul, mon entourage ne comprenant pas trop pourquoi je fais ça :slight_smile:

1 « J'aime »

Finalement je m’oriente plus sur un montage à base d’optocoupler afin de bien séparer le circuit du chauffe eau et le port serie RS232 du PC. Ceci fait suite à la découverte d’un projet pour connecter les PAC Atlantic en cherchant pour mon voisin.

Il me reste encore pas mal de travail, surtout concernant les valeurs de résistance mais la simu sous LTSPICE commence à me donner satisfaction :

Voilà le montage :

Ce qui converti visiblement bien le signal 24V (le bus aldes en vert) en 5V (signal bleu) ce qui permettra de rentrer dans un MAX232 (ou un convertisseur TTL => RS232 du même type)

Salut à tous !

Juste pour vous tenir informé, plutôt que de faire des montages dans tous les sens j’ai commandé sur alimachin ceci :

3 « J'aime »

Hello !

Les vacances étant là j’ai trouvé un peu de temps pour me remettre sur le sujet…

Du coup j’ai mis en place le convertisseur de niveau ce qui me permet maintenant de brancher mon analyseur logique de façon permanente et surtout sans danger pour mon chauffe eau. Je n’ai en revanche pas encore réussi à faire fonctionner l’interface TTL <=> RS232.

Après une acquisition via mon analyseur logique à 16MHz, j’ai recherché le bit le plus court sur l’ensemble de la trame et il semblerait que celui-ci soit de 144,5µs soit un baudrate de 6920 ce qui est étrange. Après configuration de la liaison série à cette vitesse j’obtiens un décodage des trames périodiques émisent par le chauffe eau (toutes les 10s) cependant les données qu’elles contiennent ne changent pas au court du temps, bref rien ne semble vivre. …

Je commence donc à me demander si je vais pouvoir en tirer quelque chose. Il me faudrait de l’aide d’une personne ayant des connaissances dans ce type de liaison !

Voilà ce que j’ai actuellement :

F8 C0 FF 1F F8 FF C0 00 00 00 1F F8 F8 F8 F8 FF 
00 F8 00 C0 DF DF F8 1F C0 FF FF F8 1F FF FF 1F 
00 F8 00 00 00 00 1F F8 00 F8 00 00 00 F8 F8 FF 
F8 DF C0 DF FF FF 00 FF C0 DF 00 C0 00 DF 1F F8 
F8 FF F8 00 F8 DF F8 00 00 00 00 F8 FF F8 FF F8 
00 FF 00 00 00 00 00 00 FF 00 FF F8 00 00 00 00 
00 F8 F8 00 00 00 00 00 00 00 00 00 F8 F8 F8 00 

Est ce qu’il ne faudra pas un autre équipement raccordé (type thermostat) pour qu’il y ai du traffic sur la liaison?
Par exemple mon ancienne chaudière pour voir des trames ‹ ebus › il m’avait fallu mettre en place le thermostat d’ambiance. Sinon la chaudière n’emettai que l’heure et la t° en broadcast toutes les xx secondes.

Pas plus d’idées/connaissance c’est juste au cas ou.

Je pense comme toi malheureusement et cet équipement est la passerelle AldesConnect à 170€…

Ça fait chier de devoir l’acheter pour étudier le système et la revendre ensuite. L’idéal serait d’avoir un prêt mais je connais personne qui a ce chauffe eau dans mon entourage.

C’est bon à savoir et ça confirme un peu ce que je pensais.

C’est déjà cool de remonter ton expérience :wink:

1 « J'aime »

À tout hasard tu peux regarder comment fonctionne ce projet utilisé pour décrypter le protocole des pompes à chaleur Panasonic.

1 « J'aime »

Bonjour,

Je pense comme vous, il doit falloir la passerelle pour espionner les échanges. Ça permettra de voir le protocole pour interroger ton chauffe-eau également.
Peut-être que ça se trouve d’occasion ? Au pire comme tu le dis tu pourras certainement revendre.

1 « J'aime »

@Neuvidor, par le plus grande des hasard aurais tu des ref / photos et retour d’expérience sur le montage effectué pour ton voisin :wink: , j’ai une PAC atlantic et suis trés intéressé par son branchement sur HA.
Merci pour le partage vers le projet de 1coderookie. Aprés, lecture de doc, démontage et inspection rapide je ne vois qu’une carte AVS55 qui semble monté sur une RVS21 => donc compatible.
Désolé pour le HS et squat de topic.
Je te souhaite plein de courage pour le reverse engineering, ce n’est vraiment chose pas aisé, mais très fun je trouve. (perso je bloque sur une simple telecommande 433 qui fait du on/off aprés m’être attaqué à du Bluetooth sans plus de succés)

Salut !

Tu devrais trouver les réponses à tes questions ici :
=> GitHub - fredlcore/BSB-LAN: LAN interface for Boiler-System-Bus (BSB) and Local Process Bus (LPB) and Punkt-zu-Punkt Schnittstelle (PPS) used by Elco Thision, Brötje and similar heating systems

Si tu as des questions à propos de ce sujet, je te suggère d’ouvrir un sujet dédié à ta PAC afin d’en faire profiter les autres. Un conseil, ne te trompe pas lors du premier flash de l’ESP car sinon après tu va galèrer, enfin il faudra purger l’eeprom ou ruser… :wink:

Hello, j’en profite pour dire que je viens de publier une intégration HomeAssistant utilisant AldesConnect, avec implémentation sur le T-One Air: GitHub - guix77/homeassistant-aldes

AldesConnect est une catastrophe en terme de fiabilité et est pauvre en fonctionnalités. J’aiderais volontiers à reverse engineerer pour in fine avoir une passerelle DIY USB ou BUS. Je n’ai pas trop de souçis pour le dev et les petits projets DIY ESP / Raspberry mais par contre en reverse engineering je n’y connais rien, n’ai pas de matos donc ça semble quand même chaud sauf si vous m’encadrez à fond :slight_smile:

2 « J'aime »

Salut @guix77,

Alors déjà un grand merci pour ta contribution sur HACS et AldesBox !

Sinon concernant le reverse engineering du chauffe eau, c’est la première fois que je fais ça mais je pense qu’on peut trouver de l’aide sur le forum. Notamment @mgre avec son récent sujet

Mon principal problème est que je n’ai pas la passerelle connect box donc difficile de faire quoi que ce soit pour le moment. Je vais finir par craquer et en acheter une que je revendrai plus tard…

En tous cas je retiens l’idée pour le support côté développement et je te contacterai très certainement prochainement.

Salut @guix77

C’est une bonne nouvelle pour avancer sur ce sujet !
Moi aussi j’ai une T One Air chez moi (j’ai d’ailleurs aussi une Aqua Air pour la partie ECS).
Je vois dans github que t’as pas activé la clim, moi non plus, l’installateur me demandait 400€ par groupe soit 800€ au total :crazy_face:

Je pense aussi comme vous deux qu’il faut arriver à comprendre le protocole du bus et le fait avoir la passerelle facilitera la tâche, il existe des équipement pour « sniffer » le trafic.

J’ai suivi le développement de la passerelle des clim Midea depuis pratiquement le début, maintenant c’est disponible directement dans esphome avec un esp32, c’est fascinant !

Je trouve étrange que si peu de monde se penche sur ce projet d’API Aldes car c’est une solution très répandue de nos jours. J’espère que cela va susciter des vocations.

Bon courage pour la suite

1 « J'aime »

Hello,

Je n’ai pas trop de souçis pour le dev et les petits projets DIY ESP / Raspberry mais par contre en reverse engineering je n’y connais rien, n’ai pas de matos donc ça semble quand même chaud sauf si vous m’encadrez à fond

Pour le sujet du sniffing de protocole, vous pouvez partir sur un analyseur logique de type saleae, on trouve des clones chinois sur aliexpress pour quelques euros (c’est celui que j’ai pris)

Après, le risque, c’est que si le signal est en plus que 5V, ca peut griller le device (et peut être le port USB, je suis pas sur qu’il y ait de l’isolation), pour vérifier ça, un oscillo est nécessaire. Sinon, un PC qui ne craint rien, ça passe aussi :sweat_smile:

Autre matériel qui peut servir, c’est des petites pinces, ou si vous êtes riche / avez de la place / la possibilité de brancher ça sur le device, c’est des sondes et un cadre BDM. Pour ma part, j’ai fini par souder directement sur les points de tests du PCB (au pire, je dois changer une pièce à 50-70€ sur leboncoin, je prends le risque)

1 « J'aime »

@Neuvidor Merci ! J’ai acheté la box dans la même optique que toi, avec l’intention de la revendre dès qu’on aura mieux, j’espère qu’on y arrivera et que je trouverai preneur, au pire tant pis.

@djtef Merci aussi ! Pour la clim, ah ouais il fait payer par groupe en plus, c’est abusé. Mais bon cet été je vais le faire…

@mgre Merci pour les suggestions.

Tous : c’est encore la confusion pour moi entre les différentes approches, allez j’en rajoute une : obtenir un accès root sur l’AldesConnect, ce qui permettrait soit de mieux comprendre le protocole USB, soit de modifier le firmware par ex pour proposer une API locale. L’idéal étant le premier car il ouvrirait la porte à une passerelle DIY qui se brancherait en USB, donc pas besoin d’ouvrir l’appareil…

Salut @mgre et merci des conseils.

J’avais acheté ce module sur amazon comme analyseur logique. Tu penses que c’est équivalent au modèle que tu proposes ?

J’ai mis un module à base d’optocoupleur pour me prendre en aval et donc plus de soucis.

En fait mon soucis est surtout sur la partie interprétation du signal

@guix77,
Serait-il possible pour toi de faire une photo de l’intérieur du boîtier « Aldes ConnectBox » pour voir la gueule des composants ?

En fait dans la doc du module ils disent pour utiliser le BUS d’ouvrir le boîtier. Une fois ouvert il faut débrancher le câble USB puis de raccorder un câble en 2x0,75mm2 mais aucune photo. En fait je suis curieux de savoir si on branche le bus au même endroit que l’usb dans le module.

1 « J'aime »

Un truc qui me vient à l’esprit par rapport aux optocoupleurs, c’est leur vitesse de commutation, ce que tu dis par rapport au baudrate qui est bizarre pourrait être une explication : l’optocoupleur ne commute pas suffisamment vite, et tu ne vois qu’un bit sur deux.

Deuxième possibilité, évoquée dans ce thread serait le fait que le port est branché sur des E/S qui servent a faire chose quand la carte n’est pas en programmation, et tu reçois ce que fait le contrôleur.

Troisième possibilité, ce n’est pas un port série :sweat_smile: est-ce que les choses que tu lis dessus sont compatibles avec les pins d’un port série standard ?

~J’ai lu dans le thread que la carte avait un port série, mais est ce que vous avez un schéma grosse maille du fonctionnement de la carte? Qu’est ce qui est branché où ? La liste des composants identifiables (un peu ce que fait deus ex silicium site sa chaîne youtube)~

Édit: désolé, je n’avais pas vu les messages au dessus :expressionless:
Est-ce que tu as essayé de trouver les test pad du pic pour voir si il y a moyen de dumper son programme ?
La mémoire SST25VF032B est aussi intéressante a dumper
Est ce que @guix77 tu as essayé de brancher le port USB sur un ordinateur ? Idem, pour le côté femelle du port USB, il me semble qu’on peut mettre les raspberry pi en USB on the go, pour réagir comme un périphérique USB, afin de voir si le ballon cherche a parler avec.

2 « J'aime »

Il y a aussi une autre alternative, c’est de voir si on ne peut pas jouer le rôle de proxy et intercepter les requêtes entre la passerelle et les serveurs d’Aldes, ça permettrait de fonctionner en local et d’augmenter la fiabilité qui a l’air moyenne.

1 « J'aime »

C’est pas con l’idée mais ce serait quand même un peu limite de la part d’Aldes que les data passent en clair.

Un coup de wireshark @guix77 ?

Je pense que c’est via les broches qu’on peux voir sur la carte car il y a la mémoire et le PIC à proximité.

Comment m’y prendre ? Avec quel matos ? Comment identifier les pin sans risquer de griller mon chauffe eau ?

Le seul dump que j’ai fait d’une puce dans ma vie c’est pour comparer/reflasher le firmware d’une carte mère suite à un bug.