Então, finalmente resolvi isso e também pode ajudar outros dispositivos, como displays de clientes, e geralmente para qualquer outro dispositivo "serial to usb" que não seja automaticamente mapeado para ttyUSBX.
O principal problema parece ser que o driver ftdi_sio (driver Serial to USB) não reconhece um dispositivo específico automaticamente, embora o subsistema USB o faça (lsusb). Além disso, dependendo da distribuição, esse módulo do kernel pode ou não estar carregado. Então, basicamente, nosso objetivo é:
- Carregue o driver ftdi_sio, se necessário
- Registre nosso produto no driver ftdi_sio
Carregue o driver ftdi_sio
Se ele estiver carregado, o comando lsmod | grep "ftdi_sio"
deve exibir algo assim em um prompt do Terminal:
ftdi_sio 53248 0
usbserial 53248 1 ftdi_sio
Caso contrário, temos que carregá-lo:
- Temporário, emitindo o comando
sudo modprobe ftdi_sio
- De forma persistente, adicionando a linha
ftdi_sio
no final do arquivo/etc/modules
(pode ser diferente em distribuições não-debian!) e reiniciando.
Registre nosso produto no driver ftdi_sio
Ok, o módulo deve ser carregado agora. Agora, precisamos registrar o produto no driver. Aí vem a parte boba porque alguns fornecedores dizem para você emitir o seguinte comando:
modprobe ftdi_sio vendor=05e0 product=1900
Onde vendedor e produto são os valores que você obtém do subsistema USB emitindo, por exemplo, o comando usb-devices
e precedido por "0x"; / p>
Mas, de acordo com este commit , isso não faz absolutamente nada do Kernel 3.12 em diante:
% bl0ck_qu0te%Então, seguindo essas informações, o que você precisa fazer é emitir o seguinte comando:
echo 05e0 1900 >/sys/bus/usb-serial/drivers/ftdi_sio/new_id
Não é possível lembrar agora se uma reinicialização é necessária depois disso, mas lembre-se de que o dispositivo não funcionará depois dele imediatamente.
Resumo
Por sorte, eu amo mais o meu trabalho do que minha esposa. (OMF Quote; -))