Ports Séries - Trame unidirectionnel [Résolu/Fermé]

Signaler
Messages postés
28
Date d'inscription
jeudi 18 octobre 2018
Statut
Membre
Dernière intervention
26 mars 2019
-
 strangeuser -
Bonjour,

Je dois faire fonctionner des ports COM d'une carte additionnel sur un poste. Le poste en question est un Lenovo T570s, la carte additionnel est une Lindy RS-232 16C650 :



Le système est un Ubuntu 18.04 (version LTS).

Le problème est le suivant :

- les ports séries initiales du poste communiquent bien
- les ports séries initiales communiquent bien avec les ports de la carte additionnel
- les ports de la carte additionnel ne communiquent pas avec les ports séries initiales.

Liste des ports initiales :

- /dev/ttyS0
- /dev/ttyS1

Liste des ports additionnels :

- /dev/ttyS4
- /dev/ttyS5

Voici mes tests :

Terminal 1 -
echo "Test" > /dev/ttyS0

Envoie d'une trame depuis un port initiale du poste vers la carte additionnel
Terminal 2 -
cat /dev/ttyS4
Test
Je reçois bien la trame envoyé

Terminal 1 -
echo "Test" > /dev/ttyS4

Envoie d'une trame depuis la carte additionnel vers un port initiale du poste
Terminal 2 -
cat /dev/ttyS0

pas de réponses...

Pour des besoins applicatifs la communication doit ce faire dans les 2 sens (bidirectionnel)
J'ai besoin d'aides svp...

(diag en commentaire)

9 réponses

Messages postés
28
Date d'inscription
jeudi 18 octobre 2018
Statut
Membre
Dernière intervention
26 mars 2019

Voici les conf complète des ports :

root@hostname:/dev# stty -F ttyS0 -g && stty -F ttyS1 -g && stty -F ttyS4 -g && stty -F ttyS5 -g

500:5:cbd:8a3b:3:1c:7f:15:4:0:1:0:11:13:1a:0:12:f:17:16:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0
500:5:cbd:8a3b:3:1c:7f:15:4:0:1:0:11:13:1a:0:12:f:17:16:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0
500:5:cbd:8a3b:3:1c:7f:15:4:0:1:0:11:13:1a:0:12:f:17:16:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0
500:5:cbd:8a3b:3:1c:7f:15:4:0:1:0:11:13:1a:0:12:f:17:16:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0

root@hostname:/dev# stty -F ttyS0 -a && stty -F ttyS1 -a && stty -F ttyS4 -a && stty -F ttyS5 -a

ttyS0
speed 9600 baud; rows 0; columns 0; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V;
discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs8 hupcl -cstopb cread clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke -flusho -extproc

ttyS1
speed 9600 baud; rows 0; columns 0; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V;
discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs8 hupcl -cstopb cread clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke -flusho -extproc

ttyS4
speed 9600 baud; rows 0; columns 0; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V;
discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs8 hupcl -cstopb cread clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke -flusho -extproc

ttyS5
speed 9600 baud; rows 0; columns 0; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V;
discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs8 hupcl -cstopb cread clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke -flusho -extproc


INFO Importante :

Avec minicom les ports fonctionnent correctement. Malheureusement je doit le faire faire fonctionner avec stty (pour un application type ERP qui utilise stty).


A priori, le problème ne viens pas de driver car ils sont bien présents. Lorsque j'utilise Minicom, la conf des ports change. Cette conf ne fonctionne pas avec stty... donc ce n'est pas la solution.
Messages postés
28
Date d'inscription
jeudi 18 octobre 2018
Statut
Membre
Dernière intervention
26 mars 2019

Up!

Please j'ai besoin d'aide. Il s'agit d'un problème bloquant et urgent pour ma boîte, et je n'ai toujours pas de solution...
Messages postés
17963
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
13 décembre 2019
4527
hello
Malheureusement je doit le faire faire fonctionner avec stty (pour un application type ERP qui utilise stty).

c'est à dire?
stty ne fait que modifier les paramètres du port, comment sont transférées les données ?

un check périodique via l'ERP est fait via stty, sans sa les données sont transférés de manière classique via les ports COM pour des balances ou des étiqueteuses
dubcek
Messages postés
17963
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
13 décembre 2019
4527
qu'est ce qu'un ERP ?
stty affiche ou modifie des paramètres, je ne vois pas ce qu'il peut checker

Oublie le terme ERP, c'est juste pour dire que je suis obligé de passr par stty pour que cela fonctionne.
dubcek
Messages postés
17963
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
13 décembre 2019
4527
montre ce que ru fais, on ne peut pas deviner

Problème résolue. J'ai eu à ma disposition des machines pour effectuer mes tests et il s'avère que les ports COM fonctionnent bien malgré leurs non communication via "echo" "cat".
J'y comprend que dal mais temps que ça fonctionne moi ça me va.

Merci tes réponses