brice.wernet Posté(e) le 20 mars 2023 Partager Posté(e) le 20 mars 2023 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é, ...)? Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Minikea Posté(e) le 21 mars 2023 Partager Posté(e) le 21 mars 2023 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" 1 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
brice.wernet Posté(e) le 21 mars 2023 Auteur Partager Posté(e) le 21 mars 2023 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). Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
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.