Je n'avais pas pensé à une règle UDEV manquante.
J'utilise le fichier provenant de platformIO qui recense toutes les cartes gérées par platformIO, ce qui fait que je n'y pense pas, c'est de la routine.
/etc/udev/rules.d/99-platformio-udev.rules
En fait, ce qu'on t'a fait faire est bien obscur pour faire une chose simple.
Ce que post_install.sh fait, c'est tout simplement de rédiger une règle UDEV.
L'emplacement est
/etc/udev/rules.d/nom_du_fichier.rules
Sous Debian l'emplacement est consultable en utilisateur normal, il n'est modifiable qu'avec les droits root.
Dans post_install.sh, on trouve la ligne :
`SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", MODE:="0666"
Dans ce fichier de platformIO , /etc/udev/rules.d/99-platformio-udev.rules, je lis :
# Arduino boards
ATTRS{idVendor}=="2341", ATTRS{idProduct}=="[08][023]*", MODE:="0666", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID_MM_PORT_IGNORE}="1"
Les informations pour créer soi-même la règle UDEV pour une carte se trouvent en faisant sous root :
Exemple avec une carte ESP32-C3 avec utilisation d'un CH341
root@altair:/home/b# dmesg |tail -10
[18838.919937] usb 1-3: new full-speed USB device number 7 using xhci_hcd
[18839.073647] usb 1-3: New USB device found, idVendor=1a86, idProduct=7522, bcdDevice= 2.64
[18839.073660] usb 1-3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[18839.073666] usb 1-3: Product: USB Serial
[18839.099849] usbcore: registered new interface driver usbserial_generic
[18839.099857] usbserial: USB Serial support registered for generic
[18839.101728] usbcore: registered new interface driver ch341
[18839.101737] usbserial: USB Serial support registered for ch341-uart
[18839.101749] ch341 1-3:1.0: ch341-uart converter detected
[18839.102153] usb 1-3: ch341-uart converter now attached to ttyUSB0
La même chose avec cette fois utilisation de l'USB natif de l'ESP32-C3
root@altair:/home/b# dmesg |tail -10
[20648.455939] ch341 1-3:1.0: device disconnected
[20651.663737] usb 1-3: new full-speed USB device number 9 using xhci_hcd
[20651.813326] usb 1-3: New USB device found, idVendor=303a, idProduct=1001, bcdDevice= 1.01
[20651.813339] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[20651.813344] usb 1-3: Product: USB JTAG/serial debug unit
[20651.813348] usb 1-3: Manufacturer: Espressif
[20651.813352] usb 1-3: SerialNumber: EC:DA:3B:BF:03:CC
[20651.838832] cdc_acm 1-3:1.0: ttyACM0: USB ACM device
[20651.838847] usbcore: registered new interface driver cdc_acm
[20651.838848] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
Dans le premier cas la carte est vu sous ttyUSB0, dans le second cas la carte est vue comme ttyACM0.
Edit :
je viens de découvrir que ls -l /dev/ttyUSB0
donne l'heure de connexion du module.
b@altair:~$ ls -l /dev/ttyUSB0
crw-rw-rw- 1 root dialout 188, 0 13 sept. 18:24 /dev/ttyUSB0