F1SYH‑TX1 — lot 52

Bridge CAT vers MQTT

Lire périodiquement le CAT, publier les états et convertir les commandes MQTT en intentions sûres.

Pythonservice
1 spoll normal
100 msTX
TX0finally
SerialParserState cacheMQTTCommands
Point critique : Le bridge ne doit pas réémettre automatiquement une ancienne commande après reconnexion.

Détails techniques

Boucle :
- ouvrir CAT avec timeout
- synchroniser IF/PW/VR
- publier online
- poll 1 s en RX, plus rapide en TX
- traiter commandes avec whitelist
- vérifier réponse appliquée
- publier fault
- sur exception : tenter TX0, publier offline, fermer port
- reconnexion avec backoff

Archive bridge incluse dans le lot.

Robustesse

Backoff.

Pas de boucle folle.

Sécurité

TX0 en finally.

TTL commande PTT.

Observabilité

Logs structurés.

Compteurs erreurs.

Spécifications

LangagePython 3
Serialpyserial
MQTTpaho-mqtt
Servicesystemd
Reconnexionbackoff

Repères

Cache d’état seulement après réponse CAT
Une commande expirée est rejetée

Procédure

Installer dépendances.
Configurer port/broker.
Tester read-only.
Publier states.
Ajouter commandes.
Ajouter TTL PTT.
Créer service.
Tester crash.
Validation : aucun palier suivant sans mesures conformes au palier courant.