Esphome: Transmettre trame variable sur UART de l'ESP32

Bonjour,

Nouveau dans ESPHOME, et en cherchant dans les différents forums, je n’ai rien trouvé.

Afin de piloter la vanne 3V de mon chauffage, j’utilise une carte MKS SERVO42C V1.1.2 qui piloter un moteur pas à pas. Je trouve que la carte bug quand on la pilote en impulsion. Elle semble beaucoup plus stable en la pilotant par le port série mais … Par ailleurs, je mesure mes températures d’eau allée et retour sans problème que je transferts en MQTT.
Toutes les minutes, j’envoie sur le port série la trame suivante : uart.write: [0x0E, 0x30, 0x10] et je récupère la position exacte de mon moteur sous la forme de 8 octets que j’envoie en MQTT pour les traiter.
Et en fonction de mon besoin de position et de la position exacte du moteur je calcule une commande (trame au format texte) que j’envoie en MQTT sur l’ESP et qui la récupère sans problème:

text_sensor:
  - platform: mqtt_subscribe
    name: "Cde moteur UART"
    id: Cde_moteur_UART
    topic: essai/text_sensor/cde_moteur_UART/command

Voici un exemple de récupération Cde moteur UART:
0xE0, 0xFD, 0x02, 0x00, 0x00, 0x03, 0x20, 0x02
(adresse de la carte, type de cde, sens de rotation, vitesse de rotation, nombre d’impulsion puis un CRC)

Ensuite si je complète:

text_sensor:
  - platform: mqtt_subscribe
    name: "Cde moteur UART"
    id: Cde_moteur_UART
    topic: essai/text_sensor/cde_moteur_UART/command
    on_value:
      then:
         uart.write: [0xe0, 0xfd, 0x82, 0x00, 0x00, 0x03, 0x20, 0x82]

A chaque fois qu’une nouvelle trame MQTT est transmise : le moteur effectue le déplacement prévu à la trame [0xe0, 0xfd, 0x82, 0x00, 0x00, 0x03, 0x20, 0x82] . La bonne trame transmise est bien affichée dans « Cde moteur UART »

Mais comment peut-on envoyer sur le TX de l’UART la trame reçue dans le « text_sensor » plutôt qu’une trame fixe?

Je remercie par avance tous ceux qui me permettront d’avancer dans ce projet.


ESPHOME avec une board: esp32dev
Comment récupérer ma configuration :
Dans votre HA, Menu latéral Paramètres > Système > Corrections puis les trois petits points en haut a droite > Informations Système puis une fois en bas Copier