> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/french/function-blocks/blocks-reference/input-output/communication/serial-connect.md).

# Serial Connect

Ce bloc fonction ouvre et gère une connexion série (COM). Utilisez-le pour connecter des périphériques série, surveiller l'état de la connexion et exposer un identifiant de connexion (`ConnId`) que les autres blocs peuvent utiliser en référence.

## 📥 Entrées <a href="#inputs" id="inputs"></a>

Ce bloc fonction n'a pas d'entrées.

## 📤 Sorties <a href="#outputs" id="outputs"></a>

`ConnId`\
Identifiant unique de la connexion série ouverte. Servez-vous de cette valeur pour référencer la connexion depuis d'autres blocs.

`Connected?`\
Booléen indiquant si la connexion série est actuellement active.

## 🕹️ Contrôles <a href="#controls" id="controls"></a>

`Port`\
Nom du port COM à utiliser pour la connexion (par ex. COM3).

`Baud`\
Vitesse de communication (par ex. 115200).

`Read timeout (s)`\
Temps en secondes à attendre pour les opérations de lecture.

`Line delimiter`\
Sélectionnez le caractère(s) de fin de ligne utilisé par votre appareil (LF / CRLF / CR).

`AutoReconnect`\
Interrupteur activant la reconnexion automatique lorsqu'une connexion est perdue.

`Reconnect interval (s)`\
Intervalle entre les tentatives de reconnexion lorsque AutoReconnect est activé.

`Idle disconnect (s)`\
Durée d'inactivité après laquelle la connexion sera fermée automatiquement pour libérer le port.

## 🎨 Fonctionnalités <a href="#features" id="features"></a>

* Gestion automatique de la connexion : ouvre une connexion avec les paramètres configurés et maintient `ConnId` disponible pour les autres blocs.
* Reconnexion automatique : tente de se reconnecter si le périphérique devient indisponible.
* Déconnexion en cas d'inactivité : ferme le port lorsqu'il n'est pas utilisé pour éviter de bloquer l'appareil pour d'autres applications.
* Paramètres lisibles : choisissez la convention de fin de ligne et ajustez les timeouts pour correspondre au périphérique connecté.

## 📝 Mode d'emploi <a href="#usage" id="usage"></a>

1. Renseignez les valeurs `Port` et `Baud` pour qu'elles correspondent à votre appareil.
2. Configurez `Read timeout (s)` et `Line delimiter` selon le protocole de votre appareil.
3. Activez `AutoReconnect` et définissez `Reconnect interval (s)` si vous voulez que le bloc récupère automatiquement après une déconnexion.
4. Ajustez `Idle disconnect (s)` pour que le bloc ferme le port lorsqu'il n'est pas utilisé.
5. Exécutez le scénario. Le bloc ouvrira la connexion et produira les sorties `ConnId` et `Connected?`. Utilisez `ConnId` dans les autres blocs de communication qui acceptent une référence de connexion.

## 📊 Évaluation <a href="#evaluation" id="evaluation"></a>

À l'exécution, le bloc veille à ce qu'une connexion série existe avec les paramètres courants. Si vous modifiez les paramètres, la connexion précédente est libérée et une nouvelle connexion est créée. Les sorties reflètent l'identifiant de connexion actif et si la connexion est actuellement établie.

## 💡 Astuces <a href="#tips-and-tricks" id="tips-and-tricks"></a>

* Utilisez `Led Output` pour refléter visuellement l'état `Connected?` dans votre interface.
* Utilisez `String Input` ou `Number Input` et `String Merge` pour composer des commandes à envoyer via la liaison série.
* Employez `Data Write Global` / `Data Read Global` pour partager `ConnId` ou les résultats série avec d'autres parties du scénario sans câblage direct.
* Alimentez les données série vers `Data to JSON` ou `CSV Export` pour consigner les communications.
* Transférez les données analysées vers des systèmes distants avec `MQTT Publish` ou `REST API - Post` pour intégration cloud ou surveillance.
* Utilisez `Debug Input` pour inspecter les messages pendant le développement du flux série.
* Combinez avec `Send Mail` pour déclencher des alertes par e‑mail en cas de perte de connexion ou de réception de messages spécifiques.

## 🛠️ Résolution des problèmes <a href="#troubleshooting" id="troubleshooting"></a>

* Si `Connected?` reste false : vérifiez que le port et le baud correspondent au périphérique ; contrôlez les pilotes et le gestionnaire de périphériques du système d'exploitation.
* Si vous ne pouvez pas ouvrir le port : assurez-vous qu'aucune autre application n'utilise le même port COM. Fermez les programmes concurrents ou activez la déconnexion en veille sur ces systèmes.
* Si les lignes semblent tronquées ou fusionnées : essayez un autre réglage pour `Line delimiter` ou augmentez `Read timeout (s)`.
* En cas de déconnexions fréquentes : activez `AutoReconnect` et augmentez `Reconnect interval (s)` pour laisser le périphérique le temps de récupérer.
* Si des caractères inattendus apparaissent : confirmez la vitesse (baud) et les paramètres de parité selon la documentation du périphérique et ajustez-les en conséquence.
