Aller au contenu

Figer les ports COM


Messages recommandés

Bonjour,

 

J'ai un soucis sur nu de mes Linux. C'est un RPI qui à centraliser les équipements IOT branchés en série et faire passerelle MQTT.

En gros, j'ai 3 clé USB/série

  • Le linky branché en RS232
  • L'onduleur branché en RS485
  • un 3ème port COM avec un montage ESP perso

Mes problèmes:

* Linux n'affecte JAMAIS le même port n° de port! Un coup le linky est en 1, un coup il est en 2. Du coup mes scripts ne fonctionnent pas toujours... (le s miens perso, ça va, ils sont compatibles avec un accès aux ports via la topologie USB, mais ceux d el'onduleur que j'ai téléchargé ils sont basés sur python qui n'a pas l'air de savoir utiliser autre chose que /dev/ttyUSBx)

* Peut-on par ailleurs faire en sorte qu'au boot Linux reconfigure chaque port com (vitesse, parité, ...)?

Lien vers le commentaire
Partager sur d’autres sites

je dirais oui en partie: on peut voir une explication ici: https://community.silabs.com/s/article/fixed-tty-device-assignments-in-linux-using-udev?language=en_US

ça se passe dans /etc/udev/rules.d, il faut y ajouter les numéro de série de tes contrôleurs USB récupéré grâce à lsusb ou dmesg, puis leur attribuer un alias fixe. Par contre il faut que le script accepte un alias plutôt qu'un nom puisque il n'est pas possible de renommer ce genre de périphérique. (mais tu peux lui mettre un alias en "ttyUSB50" et donner ça au script de l'onduleur, j'imagine)

de la même façon, tu dois pouvoir les configurer comme tu veux en faisant appel à un script dans udev avec

RUN+="/script.sh"

 

  • Aime 1
Lien vers le commentaire
Partager sur d’autres sites

 

il y a 38 minutes, Minikea a dit :

je dirais oui en partie: on peut voir une explication ici: https://community.silabs.com/s/article/fixed-tty-device-assignments-in-linux-using-udev?language=en_US

ça se passe dans /etc/udev/rules.d, il faut y ajouter les numéro de série de tes contrôleurs USB récupéré grâce à lsusb ou dmesg,

Top!

Je vais réfléchir: soit je me base sur le n° de série, soit je me base sur le n° de prise USB...

il y a 39 minutes, Minikea a dit :

 (mais tu peux lui mettre un alias en "ttyUSB50" et donner ça au script de l'onduleur, j'imagine)

Non, la bibliothèque utilisée utilise un n° de port mais ne donne pas la possibilité de donner le chemin exact. Et mon lien n'est pas détecté par cette fichue bibliothèque.

Je vais modifier le code (ou tout réécrire avec des outils plus sérieux/plus légers et moins fragiles - lua ou bash ou rust ou C ou n'importe quoi qui survive à une mise à jour).

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...