Cookie
Electronic Team, Inc. uses cookies to personalize your experience on our website. By continuing to use this site, you agree to our cookie policy. Click here to learn more.

Ports série sous Linux – Guide complet

Editorial Team Editorial Team
Mis à jour : Dec 2, 2025

Apprenez ici comment vous connecter à un périphérique série sous Linux et découvrez une méthode simple pour relier des appareils série à distance. Nous prendrons pour exemple une imprimante de reçus conforme au protocole ESC/POS.

Période d'essai de 14 jours gratuits
La licence est disponible à partir de $259.95
Disponible pour
usb vers bureau à distance

Vérification des ports

Les ports série sont un type de périphérique série. La commande dmesg permet de savoir si un périphérique série a été détecté et reconnu par le système d’exploitation. Si c’est le cas, il apparaîtra dans les résultats de cette commande.

Comme dmesg affiche tous les périphériques du système, nous filtrerons le résultat avec grep, qui recherche les lignes contenant un mot-clé donné. Les noms des ports série sous Linux commencent par “ttyS”, nous pouvons donc les rechercher à l’aide de ce terme. Pour relier les deux commandes, on utilise le symbole | (pipe), et comme l’opération requiert des privilèges superutilisateur, on ajoute sudo. La commande finale est donc :

sudo dmesg | grep tty
capture d’écran 1
Les périphériques seront affichés avec leurs fichiers de périphériques correspondants, situés dans /dev, tels que ttyS0 ou ttyS1. Ces fichiers peuvent ensuite être utilisés comme arguments dans d’autres commandes pour interagir avec un port série spécifique. En outre, dmesg peut indiquer un problème technique si le périphérique n’apparaît pas du tout.

Interaction avec les périphériques série

Utilisation des utilitaires standards

Sous Linux, les ports série sont représentés par des fichiers. Ainsi, les utilitaires standard comme echo et cat permettent d’interagir avec eux, tandis que stty sert à modifier les paramètres du port.

Avec stty, il est possible de définir la vitesse de transmission (baud rate), le nombre de bits de données, la parité, le type de handshake (contrôle de flux) et d’autres paramètres. Ces réglages doivent souvent correspondre à ceux du périphérique ou de l’application pour que la communication fonctionne.

Pour afficher les paramètres actuels d’un port :

sudo stty -a -F <votre port>
capture d’écran 2
Et voici un exemple de commande qui définit la vitesse de transmission (baud rate) du port ttyS0 à 9600, fixe le nombre de bits de données à 8 et active le handshaking RTS/CTS :

sudo stty -F /dev/ttyS0 9600 cs8 crtscts

Avec ces paramètres correctement configurés, nous pouvons envoyer des données au périphérique à l’aide de echo. Il est possible d’envoyer du texte brut vers un port série avec la commande suivante :

echo ‘TEXTE’ > /dev/ttyS0

Cependant, pour effectuer cette opération, il faut se connecter en tant que superutilisateur. Cela peut être fait avec la commande su -.

Dans notre cas, des symboles ASCII spéciaux, tels que ESC et Retour chariot (Carriage Return), sont nécessaires pour exploiter pleinement l’imprimante connectée. Une méthode simple consiste à utiliser l’argument -e de echo et les séquences d’échappement. Une séquence d’échappement ASCII commence par \x, suivie d’un nombre hexadécimal correspondant au caractère.
Par exemple, voici comment imprimer le mot “TEXTE” à l’aide de séquences d’échappement :

echo -e '\x54\x45\x58\x54'

Nous allons envoyer les messages suivants :

1B 40 (ESC @, Initialiser)
1B 6D (ESC m, Coupe complète)
4C 49 4E 45 20 31 ("LIGNE 1")
1B 21 80 (Activer le soulignement)
4C 49 4E 45 20 32 ("LIGNE 2")
0D 0A (CR FF, Nouvelle ligne)
1B 40 (Coupe complète)


L’argument -e est indispensable pour permettre l’utilisation des séquences d’échappement hexadécimales “\x”. Voici à quoi cela ressemble dans le terminal, ainsi que sur le résultat imprimé :
capture d’écran 3
Alors que echo peut être utilisé pour envoyer des données via une connexion série, cat permet de les recevoir. Dans notre exemple, l’imprimante répondra à des requêtes ESC/POS standard pour indiquer son état et son identifiant. Nous devons donc intercepter ces réponses. Commencez par lancer cat, en écoutant le périphérique ttyS0 et en redirigeant la sortie vers un fichier texte :

cat /dev/ttyS0 > examplefile

L’application doit rester active pour recevoir les données, il faut donc ouvrir une nouvelle fenêtre ou un nouvel onglet du Terminal pour envoyer des commandes à l’imprimante. Nous utiliserons echo pour transmettre les requêtes suivantes :

1D 49 31 (Demande d’identifiant de modèle)
1D 49 32 (Demande d’identifiant de type)
Les réponses étant renvoyées au format hexadécimal, le fichier “examplefile” obtenu avec cat ne sera pas lisible directement. Pour les interpréter, passez le fichier dans hexdump :
capture d’écran 4

Utilisation de gtkterm

Linux met également à disposition des terminaux série tels que minicom et gtkterm, qui permettent d’interagir plus facilement avec les ports série, en gérant à la fois l’entrée et la sortie, tout en offrant davantage d’options de formatage et de suivi.

Prenons gtkterm comme exemple. Tout comme stty, il doit être lancé avec des arguments en ligne de commande pour définir les paramètres de connexion, si les valeurs par défaut ne conviennent pas.
capture d’écran 5
Parmi les options utiles, citons l’écho local (pour visualiser les données envoyées), l’enregistrement des sessions (logging), l’affichage en hexadécimal, et l’envoi direct de données hexadécimales. Observez également les indicateurs en bas à droite : ils affichent l’état des lignes de signaux DTR, RTS, CD, DSR et RI. C’est un excellent moyen de vérifier que le périphérique est bien connecté et prêt à recevoir les données.
capture d’écran 6

Connexion à un port série sur votre réseau local

Vous disposez d’un périphérique série à partager entre plusieurs ordinateurs ? Ou vous souhaitez établir une connexion série entre deux applications distantes ? Le logiciel Serial to Ethernet Connector pour Linux est une solution simple et efficace. En plus de relier des ports physiques, cette application peut créer des ports virtuels accessibles par d’autres programmes.

Facile à utiliser et riche en fonctionnalités, Serial to Ethernet Connector peut être configuré en quelques minutes. Une documentation détaillée, des guides d’utilisation et une équipe de support technique dédiée sont disponibles pour vous accompagner. De plus, une version d’essai gratuite de 15 jours est proposée, afin de tester toutes les fonctions sans aucun risque.

Comment utiliser Serial to Ethernet Connector

1
Inscrivez-vous pour un essai gratuit sur cette page. Attendez ensuite de recevoir votre clé d’activation par e-mail.
Inscrivez-vous à l’essai gratuit
2
Rendez-vous sur le centre de téléchargement et sélectionnez l’installateur correspondant à votre distribution et à votre architecture Linux.
Accéder au centre de téléchargement
3
Ouvrez votre terminal, accédez au fichier téléchargé et exécutez les commandes suivantes pour les systèmes basés sur Debian (avec droits superutilisateur) :

dpkg -i serial_ethernet_connector_64.deb
apt-get install -f


Ou, pour Fedora ou CentOS :

sudo rpm -i serial_ethernet_connector_64.rpm

Une fois l’installation terminée, redémarrez votre ordinateur.
4
Appliquez votre code d’activation avec la commande suivante :

evesecli register

Pour vérifier que l’activation a bien été effectuée :

evesecli license

Ces étapes d’installation et d’activation doivent être réalisées sur les deux ordinateurs qui seront connectés.
Utiliser votre code d’activation
5
Comme nous allons échanger des données entre deux applications, nous devons créer des ports virtuels pour le serveur et pour le client. Sur l’ordinateur serveur, exécutez la commande suivante :

evesecli add -v /tmp/ttyLS0 server --local 5000

La commande start permettra d’ouvrir la connexion :

evesecli start /tmp/ttyLS0

Vous aurez également besoin de connaître l’adresse IP locale de votre machine. Pour cela, exécutez la commande : hostname -I (avec un “i” majuscule).
Créer des ports virtuels pour le serveur et le client
6
Sur l’ordinateur client, exécutez les commandes suivantes :

evesecli add -v /tmp/ttyRS0 client --remote :5000
evesecli start /tmp/ttyRS0


Vous pouvez vérifier si la connexion a bien été établie en utilisant la commande : evesecli list. Une seule connexion active devrait apparaître dans la liste.
Vérifier si la connexion a réussi
7
Enfin, comme les deux ports sont virtuels, ils peuvent être testés comme précédemment avec les commandes cat et echo.
Tester les ports virtuels connectés
N’oubliez pas que vous pouvez utiliser la commande man evesecli pour obtenir plus d’informations sur les options et commandes disponibles. Vous pouvez également consulter le guide utilisateur pour des exemples et des explications détaillées sur l’utilisation du Serial to Ethernet Connector.
Serial to Ethernet Connector
Access remote serial port over IP Network for Windows
Période d'essai de 14 jours gratuits
La licence est disponible à partir de $259.95
Disponible pour