O sistema é o Ubuntu 16.04 com dois dispositivos Arduino conectados via cabos USB. Quando estão conectados, aparecem no /dev
diretório como ttyACM0
e ttyACM1
. É possível atribuir um nome diferente com um identificador ligeiramente diferente, como ttyACM5
?
Executei o udevadm info --name=/dev/ttyACM0 --attribute-walk
comando e com base nos atributos eles são diferenciáveis (têm números de série diferentes). Tentei colocar um arquivo /etc/udev/rules.d
com as linhas:
ACTION=="add", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0043", ATTRS{serial}=="55839313738351017091", KERNEL="ttyUSB5", MODE="666"
e
ACTION=="add", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0043", ATTRS{serial}=="55839313738351017071", KERNEL="ttyUSB5", MODE="666"
Mas isso não funcionou, pois os dispositivos surgiram novamente como ttyAMC0 e ttyAMC1. É possível atribuir um nome a uma porta serial com um número ligeiramente diferente? Apenas um pouco de fundo; Preciso garantir que os nomes não mudem entre ttyACM0 e ttyACM1 depois, pois tenho um programa que estabelece comunicação com esses dispositivos usando seu caminho (ex: /dev/ttyACM0) e preciso que os nomes sejam estáveis após um PC ciclo de energia e também ao usar um hub USB. Se atribuir um nome está fora da mesa, existem outras opções para atingir o objetivo desejado?
Desde já, obrigado!
As respostas oferecidas por @steeldriver e @Jean-Marie estão no local e
SYMLINK="ttyUSB5"
funcionaram. Essencialmente, ele criou um link que é um ponteiro para o nome que o sistema cria para a porta. Obrigado!