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

À 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.

Pour l’instant je mets de côté l’interception car j’ai ouvert le boîtier hier soir et ça semble assez prometteur :

  • un STM32 avec un bornier Dupont 6 broches qui est l’UART j’imagine ; il gère sûrement la partie USB
  • un HF-LPB-100-1 pour le WiFi, aussi avec un bornier Dupont 6 broches, aussi pour UART je suppose
  • un dernier bornier Dupont 6 broches, pas eu le temps de voir à quoi il pouvait être relié

Potentiellement on peut via l’UART obtenir un root shell sur le STM32 où on est en terrain plus connu que sur le HF-LPB-100-1. Comme je suppose qu’il gère l’USB avec la machine, si on arrive au firmware et à sa source alors on a le protocole USB et il n’y a plus qu’à concevoir une passerelle DIY.

Je vous mets une photo ce soir et j’essaye de passer root peut-être ce week-end.

2 « J'aime »

L’union fait la force et grâce à ça mon espoir d’arriver au bout de ce dev est ravivé :wink:

Merci à tous pour vos contributions car en plus d’avancer cela me permet d’apprendre la démarche à adopter.

un STM32 avec un bornier Dupont 6 broches qui est l’UART j’imagine ; il gère sûrement la partie USB

Vous êtes chanceux, le STM32 s’est fait trouer il y a un ou deux ans, on peut dumper une partie de sa mémoire via l’interface debug :smiley: J’ai pas le détail, mais a priori, c’est très documenté

Normalement, ce genre de manipulation ne doit pas griller quoi que ce soit, vu que les courants générés par les sorties de progammateurs sont minimes, mais on est jamais à l’abri.

Après, une fois le firmware extrait, on doit pouvoir faire des choses avec ghidra, le décompilateur de la NSA.

1 « J'aime »

J’ai fait ça pour avoir une passerelle sonoff à l’époque. La technique est pas trop compliqué. L’idée est d’envoyer le device wifi sur un réseau wifi où tu controle tout, y compris les DNS, et de rediriger le cloud du constructeur sur ton serveur perso avec du code qui récupère toutes les requetes HTTP. En général, le device fait du HTTPs, mais il arrive souvent que le device valide que c’est du HTTPs, mais ne check pas l’émetteur du certificat. Donc il suffit de présenter un certificat SSL valide pour que avoir le droit de parler avec le device.

Après, l’idée, c’est de transférer les requêtes en faisant un gros Man in the middle avec les serveurs du constructeur et de récupérer toutes les choses qui circulent pour déduire le protocole, et ensuite, s’en passer.

Un bon résumé : projects:sonoff [Brain Dump]

1 « J'aime »

On peut pas extraite le firmware de la PAC tant qu’on y est, on pourrait encore mieux la contrôler et activer la clim :innocent:

@Neuvidor Voilà!

Je suppose :

  • En haut, l’UART du STM32, pour sa programmation / debug
  • A droite, celui du HF-LPB-100-1, qui lui sert à dialoguer avec le STM32 pour lui fournir le WiFi
  • A gauche, je ne sais pas, ni au milieu où il n’y a pas de pins

@mgre Merci pour les ressources !

1 « J'aime »