En fait, en y re-réfléchissant cette nuit, on pourrait faire un truc du type :
Aldes connect <--- USB ---> ordinateur <--- Reseau ----> raspberry pi <--- USB OTG ---> PAC
Ou meme si le raspberry le permet, ca peut rester sur le Rpi en mode :
Aldes connect <--- USB ---> raspberry pi <--- USB OTG ---> PAC
Une resource où la personne explique comment configurer une liaison USB-OTG / ACM avec le setup des idVendor, manufacturer string etc… L’idée ici serait de se faire passer exactement comme le aldes connect, et publier un device /dev/ttyACM avec la PAC, sur lequel on lirait les envois de la PAC, et, un deuxieme device /dev/ttyACM avec cette fois le aldesConnect où on transmettrait les demandes de la PAC et où on renverrai a la PAC les envois du aldes connect (en ayant pris soin de tout logguer en interne )
Il faudra rentrer surement dans les détails de lsusb et autre joyeuseté pour identifier toutes les fonctions USB exposées par le aldesConnect
Device is: fe980000.usb
Driver is: fe980000.usb
vendor_id is: 1155
product_id is: 22336
5 Devices in list
Target device not found
Device opened successfully
Setup USB config successfully
Start hotplug_monitor thread, thread id(1556)
Start for EP0, thread id(1554)
ep #0:
name: ep1in
addr: 1
type: iso blk int
dir : in ___
maxpacket_limit: 1024
max_streams: 0
ep #1:
name: ep1out
addr: 1
type: iso blk int
dir : ___ out
maxpacket_limit: 1024
max_streams: 0
ep #2:
name: ep2in
addr: 2
type: iso blk int
dir : in ___
maxpacket_limit: 1024
max_streams: 0
ep #3:
name: ep2out
addr: 2
type: iso blk int
dir : ___ out
maxpacket_limit: 1024
max_streams: 0
ep #4:
name: ep3in
addr: 3
type: iso blk int
dir : in ___
maxpacket_limit: 1024
max_streams: 0
ep #5:
name: ep3out
addr: 3
type: iso blk int
dir : ___ out
maxpacket_limit: 1024
max_streams: 0
ep #6:
name: ep4in
addr: 4
type: iso blk int
dir : in ___
maxpacket_limit: 1024
max_streams: 0
ep #7:
name: ep4out
addr: 4
type: iso blk int
dir : ___ out
maxpacket_limit: 1024
max_streams: 0
ep #8:
name: ep5in
addr: 5
type: iso blk int
dir : in ___
maxpacket_limit: 1024
max_streams: 0
ep #9:
name: ep5out
addr: 5
type: iso blk int
dir : ___ out
maxpacket_limit: 1024
max_streams: 0
ep #10:
name: ep6in
addr: 6
type: iso blk int
dir : in ___
maxpacket_limit: 1024
max_streams: 0
ep #11:
name: ep6out
addr: 6
type: iso blk int
dir : ___ out
maxpacket_limit: 1024
max_streams: 0
ep #12:
name: ep7in
addr: 7
type: iso blk int
dir : in ___
maxpacket_limit: 1024
max_streams: 0
ep #13:
name: ep7out
addr: 7
type: iso blk int
dir : ___ out
maxpacket_limit: 1024
max_streams: 0
event: connect, length: 0
C’est mon meilleur résultat, obtenu 1 fois. La plupart du temps j’obtiens :
Device is: fe980000.usb
Driver is: fe980000.usb
vendor_id is: 1155
product_id is: 22336
Device unresponsive: Pipe error
Device unresponsive: Pipe error
Device unresponsive: Pipe error
… avec l’erreur qui se répète sans cesse. J’obtiens beaucoup aussi :
Device is: fe980000.usb
Driver is: fe980000.usb
vendor_id is: 1155
product_id is: 22336
Device opened successfully
Setup USB config successfully
Start hotplug_monitor thread, thread id(1484)
Start for EP0, thread id(1471)
event: connect, length: 0
et dans ce dernier cas ça n’affiche rien d’autre.
En parallèle les logs système du Raspberry Pi 4 montrent qu’il est en undervoltage. Normal, il est alimenté par l’USB de la PAC qui ne doit fournir que 0.5A. Du coup l’instabilité que j’observe pourrait venir de là, ce qui condamnerait cette voie. Une autre piste serait à ce moment GitHub - matlo/serialusb: A cheap USB proxy for input devices.
Bonjour,
Je possède une VMC Aldes DeeFly Cube 300 équipée du module AldesConnect connecté sur l’iBUS.
En cherchant comment l’interfacer avec HA, j’ai sniffé le port USB.
Ma conclusion qui devrait peut-être vous aider, c’est qu’il s’agit d’un protocole MODBUS RTU.
Avec QModBus on voit bien passer les trames caractéristiques.
Je pense qu’en utilisant la doc Aldes vous pourrez facilement envoyer directement des commandes grâce à l’intégration MODBUS disponible dans HA. Il y a de forte chance que les registres soient identiques.
Pour info, le module AldesConnect interroge régulièrement un slave connecté sur l’USB. Dans mon cas il cherche à l’adresse 4.
Pour ceux qui veulent se connecter en iBUS je continue mes recherches.
Si ces infos peuvent aider…
Désolé je n’arrive pas à intégrer un lien directement vers la doc aldes des registres modbus…
On la trouve facilement en cherchant: « easyvec-notice-d-installation-modbus.pdf »
C’est cool, un de plus sur le sujet !
On va forcément y arriver en ce regroupant.
Cool cette info, reste plus qu’à essayer, personnellement en ce moment c’est chaud avec le début des beaux jours c’est travaux extérieur à fond pour ma part !
Merci pour les infos, c’est cool. Du coup avec un esp8266 et un module USB <=> serial avec l’USB branché sur la PAC et le serial sur l’esp on devrait pouvoir y arriver. Il y a un composant ModBus pour ESPhome: Modbus Controller — ESPHome
C’est peut-être même possible d’avoir juste l’ESP, après tout on passe bien par l’USB en mode série pour installer un build dessus. Faudrait chercher pour voir si on peut exploiter l’USB quand l’ESP fonctionne, pour autre chose que juste l’alimentation. Pas sûr.
Salut, je confirme que c’est possible, c’est exactement ce qui a été fait pour les clim midea.
À l’origine il y a une sorte de clé usb passerelle wifi propriétaire et ils l’ont remplacé par un esp8266 sous esphome sur un dongle usb Voir ici
D’ailleurs maintenant c’est un composant officiel esphome.
Tu peux voir comment ils ont fait le reverse engineering en suivant les liens.
Désolé pour cette réponse tardive.
J’avais fait une longue explication sur ma démarche et mes essais, mais je suis bloqué car je n’ai pas le droit d’intégrer des liens dans mes messages.
Du coups, c’est moins intéressant et lisible comme réponse…
Après avoir fouillé un peu partout sur hacf, je ne comprends pas pourquoi???
Bref, question de stagiaire boulet débutant, il y a-t-il une manipulation à faire pour pouvoir intégrer un lien svp?
Désolé pour le HS…
[EDIT] problème d’intégration des liens résolu [/EDIT]
Hum il semblerait que cela fonctionne maintenant pour les liens…
Encore désolé pour le hors sujet précédent…
Donc pour répondre à @guix77 pour le « sniffage » de l’USB c’était assez simple car ma VMC Dee Fly Cube est connectée sur l’Ibus du module wifi Connect. Le port USB est donc libre. Je l’ai donc simplement connecté à mon pc. Un lsusb m’a indiqué qu’il était reconnu comme un port usb slave type STM32, ça partait bien!
D’un autre côté, cela fait un moment que j’analyse les trames qui passent sur la télécommande sans fil qui utilise un module Texas Instrument CC110L car c’était ma première idée pour connecter ma VMC à HA.
Pour cela j’utilise un analyseur logique pas cher qui marche bien avec le soft de Saleae.
Pour les personnes ayant les moyens il existe aussi un sniffeur usb de compétition, le LUNA.
J’ai laissé tombé pour l’instant car il me paraissait plus simple de passer finalement par l’Ibus. Mais lors de cette étape j’ai remarqué que le protocole ressemblait au MODBUS largement utilisé dans le milieu des climatisations et VMCs. A propos si quelqu’un veut fouiller de ce côté je peux partager mes résultats, en particulier la configuration exacte du module RF CC110L ou les registres que j’ai pu identifier comme la vitesse de ventilation par exemple.
Sachant que le modbus est aussi très utilisé sur les STM32 (un exemple ici), j’ai alors fait l’hypothèse que les ingénieurs d’Aldes n’allait pas réinventer la poudre et réutiliser du modbus pour la gestion de leurs produits. J’ai donc utilisé QModBus pour sniffer l’USB et effectivement on retrouve des trames caractéristiques, CQFD…
Bref, ma prochaine étape c’est d’analyser les trames sur l’Ibus avec mon analyseur logique pour vérifier mon hypothèse et trouver les bons registres. On a déjà un début de réponse avec la doc ici ou là ou encore là et surtout là… Mais voilà c’est l’été, ma terrasse n’est pas finie et bientôt je pars quelques jours en vacances… Du coups je procrastine mais l’idée c’est effectivement d’utiliser un ESP32 ou ESP8266 pour envoyer les commandes modbus soit en USB, soit sur l’Ibus en ajoutant 2 transistors, une poignée de diodes et une pincée de résistances. J’ai déjà fait le reverse engineering de cette partie hardware c’est très simple.
A propos, pour l’électronique je maîtrise mais la programmation je suis une chèvre…
Bref, je ne serais pas contre un coups de main pour coder une intégration ou un blueprint si dès fois ca marche un jour…
A voir s’il ne faudrait pas s’inspirer ou se rapprocher de JCLB avec son intégration modbus pour sa vmc Unelvent Domeo, ici sur → HACF.
T’excuse pas pour la dispo, on a tous nos contraintes perso t’inquiète. Pour ma part pas trop de dispo non plus depuis ce début d’année et pourtant ma terrasse est terminée . Mais j’ai eu l’idée faire un truc un minimum correct pour la petite piscine Intex des gamines et cette année (le week-end prochain) c’est mise en place de panneaux solaire alors j’ai passé pas mal de temps à fouiner les bon plans sur LBC.
Fin du HS
Du coup je m’y remettrai plus tard mais cela semble prometteur !
Pour la programmation HA ça ne sera pas un souçi. Si tu arrives à faire un montage à base d’ESP qui passe par l’USB et fonctionne avec un firmware basique, je devrais être capable de faire un composant ESPhome un peu comme Midea Air Conditioner — ESPHome qui implémente Climate Component — ESPHome et qui s’intègre tout seul entièrement à HA.