Bonjour,
J’ai une situation un peu compliquée sur les bras et j’espère que vous pourrez me donner des pistes. Il s’agit d’un projet dont j’hérite en cours de route. Je suis développeur web (donc pas un débutant en informatique), mais je ne maîtrise pas bien l’environnement Raspberry ou les questions matérielles.
J’ai cinq Raspberry Pi 4 Model B/4GB. Ils sont tous identiques au niveau matériel, sauf un :
- Le premier a une carte d’extension avec un seul port série. Ce port fonctionne correctement.
- Les autres ont une autre carte d’extension (tous la même), avec deux ports série.
La carte avec deux ports est celle-ci : https://www.waveshare.com/wiki/2-CH_RS232_HAT
Pour des raisons pratiques (boîtiers trop petits), le premier connecteur (sur toutes ces cartes à deux ports) a été démonté. On le voit sur la photo suivante, sur la droite : https://imgur.com/a/aQbghwW
C’est donc le connecteur « channel 1 » qui a été démonté. Je ne sais pas si cette opération peut affecter le fonctionnement de l’autre port (channel 2).
Mon problème est que ce deuxième port ne semble pas fonctionner. Aucune donnée ne semble envoyée ou reçue.
La personne qui a testé ces Pi (avant que le connecteur série en trop soit démonté) m’affirme que cela fonctionnait. Mais il n’est plus sûr du port qu’il a utilisé pour ses tests (probablement celui qui a été démonté)…
Sur le premier Pi (celui qui fonctionne et qui n'a qu'un seul port), j’ai pu faire le test suivant :
- utiliser un câble série et un adaptateur série-USB pour relier le Pi à un ordinateur Windows
- sur Windows, utiliser le programme « Simple Serial Terminal »
- sur le PI, utiliser le programme « minicom » (que je lance avec la commande : "minicom -b 9600 -o -D /dev/ttyAMA0")
- si j’ouvre la connexion dans le programme sous Windows et que je tape des lettres, je les vois apparaître dans la fenêtre minicom sur le Pi (et inversement)
Donc c’est un protocole de test basique mais qui me montre que les données sont bien transmises et reçues (sur ce Pi uniquement).
Sur les autres Pi (avec les deux ports série dont un connecteur démonté), cette même procédure ne donne aucun résultat. Rien ne s’affiche à l’autre bout (dans les deux sens).
Sur chacun des 5 Pi qui posent problème, j’ai testé la commande minicom ci-dessus avec les noms de ports suivants :
- ttyAMA0
- ttyAMA1
- ttyAMA2
- ttyAMA3
- ttyAMA4
- ttyS0
- ttySC0 *
- ttySC1 *
- serial0
- serial1
* : pour ces noms de port, minicom ne se lance pas du tout. On attend une seconde et puis on reste dans le terminal normal.
Notez aussi que la LED « PWR » est allumée (on le voit sur la photo), mais aucune des autres LED (RXD1, TXD1, RXD2, TXD2) ne s’allume à aucun moment (câble branché ou non, envoi de données ou non). Je ne sais pas si c’est normal.
Quelles peuvent être les causes du problème ? Et quelles pistes pour le résoudre ?
Merci d’avance pour votre aide.
Problème avec port série
Modérateurs : Francois, maxty01
Re: Problème avec port série
Salut à tous.
Les métiers de l'informatique sont vastes.
Cela peut aller d'un problème d'électricité statique, voire d'un composant qui a grillé lors du dessoudage.
Ou plus simplement, le channel 1 est relié au channel 2. En démontant l'un, l'autre ne fonctionne plus.
Je vous signale qu'il existe plusieurs URT dans la Raspberry Pi 4B.
Liser le sujet développé par M. François Mocq.
La led rouge de la raspberry pi était bien allumé mar la led verte ne clignotait pas.
Vous vous retrouvez dans le même cas.
Cordialement.
Artemus24.
@+
A priori vous êtes débutant car le développement web n'a aucun rapport avec le développement procédurale ou objet.s427 a écrit :Je suis développeur web (donc pas un débutant en informatique),
Les métiers de l'informatique sont vastes.
C'est la base même de la raspberry car elle est plus tournée vers l'électronique et le développement système.s427 a écrit :mais je ne maîtrise pas bien l’environnement Raspberry ou les questions matérielles.
Qu'est-ce que vous entendez par démonter ? Voulez-vous dire dessouder ? Il est fort probable que vous avez endommagé la carte.s427 a écrit :C’est donc le connecteur « channel 1 » qui a été démonté. Je ne sais pas si cette opération peut affecter le fonctionnement de l’autre port (channel 2).
Cela peut aller d'un problème d'électricité statique, voire d'un composant qui a grillé lors du dessoudage.
Ou plus simplement, le channel 1 est relié au channel 2. En démontant l'un, l'autre ne fonctionne plus.
Vous avez d'ailleurs découper votre boîtier afin de faire entrer votre carte.s427 a écrit :C’est donc le connecteur « channel 1 » qui a été démonté. Je ne sais pas si cette opération peut affecter le fonctionnement de l’autre port (channel 2).
Je m'avance peut-être un peu trop, mais ressouder ne servira à rien. Une carte électronique est très fragile.s427 a écrit :Mon problème est que ce deuxième port ne semble pas fonctionner. Aucune donnée ne semble envoyée ou reçue.
Démontez le hat "2-CH RS232" et vérifiez que l'uart de la rasberry fonctionne bien.s427 a écrit :Sur les autres Pi (avec les deux ports série dont un connecteur démonté), cette même procédure ne donne aucun résultat.
Je vous signale qu'il existe plusieurs URT dans la Raspberry Pi 4B.
Liser le sujet développé par M. François Mocq.
Un jour, j'ai fait une mauvaise manipulation sur une de mes raspberry pi 3b+ et j'ai provoqué un court-circuit.s427 a écrit :Notez aussi que la LED « PWR » est allumée (on le voit sur la photo), mais aucune des autres LED (RXD1, TXD1, RXD2, TXD2) ne s’allume à aucun moment
La led rouge de la raspberry pi était bien allumé mar la led verte ne clignotait pas.
Vous vous retrouvez dans le même cas.
A moins de me tromper, vous avez grillé le hat "2-CH RS232".s427 a écrit :Quelles peuvent être les causes du problème ?
Vous devez faire à nouveau l'acquisition de vos cinq hat au prix de $16 chacun.s427 a écrit :Et quelles pistes pour le résoudre ?
Cordialement.
Artemus24.
@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32
Re: Problème avec port série
Merci pour votre réponse.
Quand j'ai écrit "pas un débutant en informatique", ce que je voulais dire c'est que j'ai certaines compétences transposables (surtout côté logiciel : lire/comprendre/éditer du code, des fichiers configs etc) qui font que je ne pars pas complètement de zéro. Mais effectivement, je débute dans ce domaine.
Oui le connecteur a été dessoudé. Ce n'est pas moi qui ait fait ce travail donc il m'est difficile de juger, mais a priori la personne qui s'en est chargée a l'habitude de ce genre de manipulation et cela me semble assez propre (j'ai posté un lien vers une photo, je ne sais pas si cela permet de se faire une idée ou non).
Comme mentionné, il y a 4 cartes (et 4 Raspberry), donc je veux bien qu'une ou deux ait été abîmée, mais les 4 ? Pas impossible, mais ça devient moins probable.
Channel 1 et 2 reliés entre eux : pas impossible non plus mais ce serait un choix d'architecture assez curieux il me semble. J'ai écrit au fabriquant la semaine passée, mais je reste sans réponse pour l'instant.
Merci pour le lien sur l'UART, je le consulterai ces prochains jours. (Mais là encore, que 4 Raspberry aient le même problème en même temps... ? Mais OK, toute piste est bonne à explorer.)
Et je précise (même si ce n'est pas très important) que n'ai pas découpé le boîtier pour faire entre la carte.
Pour en revenir à la documentation officielle (https://www.waveshare.com/wiki/2-CH_RS2 ... ware_setup), l'installation du hat au niveau logiciel mentionne l'étape suivante :
> Add the line below to the file, the int_pin should be set according to the actual welding:
> dtoverlay=sc16is752-spi1,int_pin=24
Je ne comprends pas à quoi correspond "the actual welding". De ce qu'on m'a dit, les hat ont été reçus et simplement "pluggués" tels quels sur les Raspberry, il n'y a pas eu de soudage (welding). Par conséquent je n'ai aucune idée de la valeur à utiliser pour init_pin (j'ai utilisé celle donnée en exemple).
Une idée ?
Quand j'ai écrit "pas un débutant en informatique", ce que je voulais dire c'est que j'ai certaines compétences transposables (surtout côté logiciel : lire/comprendre/éditer du code, des fichiers configs etc) qui font que je ne pars pas complètement de zéro. Mais effectivement, je débute dans ce domaine.
Oui le connecteur a été dessoudé. Ce n'est pas moi qui ait fait ce travail donc il m'est difficile de juger, mais a priori la personne qui s'en est chargée a l'habitude de ce genre de manipulation et cela me semble assez propre (j'ai posté un lien vers une photo, je ne sais pas si cela permet de se faire une idée ou non).
Comme mentionné, il y a 4 cartes (et 4 Raspberry), donc je veux bien qu'une ou deux ait été abîmée, mais les 4 ? Pas impossible, mais ça devient moins probable.
Channel 1 et 2 reliés entre eux : pas impossible non plus mais ce serait un choix d'architecture assez curieux il me semble. J'ai écrit au fabriquant la semaine passée, mais je reste sans réponse pour l'instant.
Merci pour le lien sur l'UART, je le consulterai ces prochains jours. (Mais là encore, que 4 Raspberry aient le même problème en même temps... ? Mais OK, toute piste est bonne à explorer.)
Et je précise (même si ce n'est pas très important) que n'ai pas découpé le boîtier pour faire entre la carte.
Pour en revenir à la documentation officielle (https://www.waveshare.com/wiki/2-CH_RS2 ... ware_setup), l'installation du hat au niveau logiciel mentionne l'étape suivante :
> Add the line below to the file, the int_pin should be set according to the actual welding:
> dtoverlay=sc16is752-spi1,int_pin=24
Je ne comprends pas à quoi correspond "the actual welding". De ce qu'on m'a dit, les hat ont été reçus et simplement "pluggués" tels quels sur les Raspberry, il n'y a pas eu de soudage (welding). Par conséquent je n'ai aucune idée de la valeur à utiliser pour init_pin (j'ai utilisé celle donnée en exemple).
Une idée ?
Re: Problème avec port série
Salut s427.
Personnellement, je ne me serai pas risqué à dessouder quoi que ce soit, au risque d'abimer le HAT.
Le PIN24 correspond à l'IRQ (Interrupt output (Interrupt Request).
C'est par cette broche qu'une demande d'interruption doit se faire (je le comprends ainsi).
Je suppose que vous avez modifié le fichier "config.txt".
Avez-vous fait un "ls -al /dev" et avez-vous retrouvé les deux tty de l'exemple donné ?
Si vous n'avez pas réponse attendue, le problème est bien électronique et non logiciel.
Je vois que vous utilisez la bibliothèque WiringPi.
Elle n'est plus maintenue depuis la raspberry PI 4B.
Pour vos exemples, il faut régler aupréalable le débit sur 115200 bits/s.
Ce ne sont pas des bauds, car un baud concerne une vitesse de modulation/démodulation, mais bien une vitesse de transfert de l'information.
Il s'agit de 2400 bauds et l'information transférée est de 115200 / 2400 = 48 bits (=6x8).
C'est une erreur fréquente la confusion entre les bauds et les bits/s.
Il y a un réglage à faire dans le fichier "/boot/cmdline.txt" au niveau de la console.
Si vous n'obtenez aucun résultat, changez la numérotation de ce PIN24.
Attention de ne pas mettre du 5Vcc ou du 3.3Vcc.
En principe l'exemple donné devrait fonctionné.
Cordialement.
Artemus24.
@+
C'est une autre façon d'appréhender l'informatique, donc une autre façon de raisonner.S427 a écrit :Mais effectivement, je débute dans ce domaine.
On ne peut pas s'en rendre compte, même avec une bonne photo.S427 a écrit :a priori la personne qui s'en est chargée a l'habitude de ce genre de manipulation et cela me semble assez propre (j'ai posté un lien vers une photo, je ne sais pas si cela permet de se faire une idée ou non).
Ce ne sont que des hypothèses que j'ai soulevé. Maintenant, je ne suis pas électronicien.S427 a écrit :Mais là encore, que 4 Raspberry aient le même problème en même temps... ? Mais OK, toute piste est bonne à explorer.
Personnellement, je ne me serai pas risqué à dessouder quoi que ce soit, au risque d'abimer le HAT.
Je viens de lire cette documentation.S427 a écrit :Pour en revenir à la documentation officielle, l'installation du hat au niveau logiciel mentionne l'étape suivante :
Le PIN24 correspond à l'IRQ (Interrupt output (Interrupt Request).
C'est par cette broche qu'une demande d'interruption doit se faire (je le comprends ainsi).
Je suppose que vous avez modifié le fichier "config.txt".
Avez-vous fait un "ls -al /dev" et avez-vous retrouvé les deux tty de l'exemple donné ?
Si vous n'avez pas réponse attendue, le problème est bien électronique et non logiciel.
Je vois que vous utilisez la bibliothèque WiringPi.
Elle n'est plus maintenue depuis la raspberry PI 4B.
Pour vos exemples, il faut régler aupréalable le débit sur 115200 bits/s.
Ce ne sont pas des bauds, car un baud concerne une vitesse de modulation/démodulation, mais bien une vitesse de transfert de l'information.
Il s'agit de 2400 bauds et l'information transférée est de 115200 / 2400 = 48 bits (=6x8).
C'est une erreur fréquente la confusion entre les bauds et les bits/s.
Il y a un réglage à faire dans le fichier "/boot/cmdline.txt" au niveau de la console.
Du jargon d'électronicien anglo-saxon.S427 a écrit :Je ne comprends pas à quoi correspond "the actual welding".
Si vous n'obtenez aucun résultat, changez la numérotation de ce PIN24.
Attention de ne pas mettre du 5Vcc ou du 3.3Vcc.
En principe l'exemple donné devrait fonctionné.
Cordialement.
Artemus24.
@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32