Hola:
Hace pocos años programé exitosamente un ATMega328p con un modulito genérico USBasp que debería aparecer como /dev/ttyACMx o incluso /dev/ttyUSBx pero no lo hace.
He intentador recuperar su uso y me encuentro con que no se registra correctamente ante el kernel, supongo.
Esta es la regla, que debe ser la que me funcionaba antes pues salvo el group era igual:
$ grep -i usbasp -A 1 /lib/udev/rules.d/60-avrdude.rules
# USBasp
SUBSYSTEM=="usb", ATTR{idVendor}=="16c0", ATTR{idProduct}=="05dc", GROUP="plugdev", MODE="0660"
No están en blacklists
$ grep -i 16c0 /lib/udev/rules.d/77-mm-usb-device-blacklist.rules
$ grep -i 05dc /lib/udev/rules.d/77-mm-usb-device-blacklist.rules
No parece haber colisión con teensy que tiene mismo vendor:
/etc/udev/rules.d/49-teensy.rules:ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID_MM_PORT_IGNORE}="1"
/etc/udev/rules.d/49-teensy.rules:ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789A]?", ENV{MTP_NO_PROBE}="1"
/etc/udev/rules.d/49-teensy.rules:SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789ABCD]?", MODE:="0666"
/etc/udev/rules.d/49-teensy.rules:KERNEL=="ttyACM*", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", MODE:="0666"
igual probé desactivando esa regla.
Probé usar una regla exactamente igual pero con idProduct de usbasp, nada. Lo que siempre obtengo es (ojo que bus y más device pueden no coincidir en los siguientes listados por ser conexiones distintas):
$sudo udevadm monitor
KERNEL[123.971778] add /devices/pci0000:00/0000:00:12.0/usb3/3-1 (usb)
KERNEL[123.973479] add /devices/pci0000:00/0000:00:12.0/usb3/3-1/3-1:1.0 (usb)
UDEV [124.405419] add /devices/pci0000:00/0000:00:12.0/usb3/3-1 (usb)
UDEV [124.407306] add /devices/pci0000:00/0000:00:12.0/usb3/3-1/3-1:1.0 (usb)
Contrastando, teensy me da
KERNEL[1893.130889] add /devices/pci0000:00/0000:00:12.0/usb3/3-1 (usb)
KERNEL[1893.132670] add /devices/pci0000:00/0000:00:12.0/usb3/3-1/3-1:1.0 (usb)
KERNEL[1893.132830] add /devices/pci0000:00/0000:00:12.0/usb3/3-1/3-1:1.1 (usb)
UDEV [1893.649654] add /devices/pci0000:00/0000:00:12.0/usb3/3-1 (usb)
UDEV [1893.654287] add /devices/pci0000:00/0000:00:12.0/usb3/3-1/3-1:1.1 (usb)
KERNEL[1893.691237] add /module/cdc_acm (module)
UDEV [1893.691943] add /module/cdc_acm (module)
KERNEL[1893.692642] add /devices/pci0000:00/0000:00:12.0/usb3/3-1/3-1:1.0/tty/ttyACM0 (tty)
KERNEL[1893.692742] add /bus/usb/drivers/cdc_acm (drivers)
UDEV [1893.692943] add /devices/pci0000:00/0000:00:12.0/usb3/3-1/3-1:1.0 (usb)
UDEV [1893.693677] add /bus/usb/drivers/cdc_acm (drivers)
UDEV [1893.695432] add /devices/pci0000:00/0000:00:12.0/usb3/3-1/3-1:1.0/tty/ttyACM0 (tty)
Esto dice lshw
$ sudo lshw
*-usb:0 UNCLAIMED
description: Generic USB device
product: USBasp
vendor:
www.fischl.de physical id: 1
bus info: usb@3:1
version: 1.02
capabilities: usb-1.10
configuration: maxpower=50mA speed=1Mbit/s
Este es mi sistema
$ uname -a
Linux a10 4.4.0-128-generic #154-Ubuntu SMP Fri May 25 14:15:18 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Si me dijeran que puede estar roto, mmh, puede ser, pero ¿dos? tengo dos y actúan igual.
En dmesg no tengo nada raro
[ 2068.522457] usb 3-1: new low-speed USB device number 8 using ohci-pci
[ 2068.693151] usb 3-1: New USB device found, idVendor=16c0, idProduct=05dc
[ 2068.693157] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 2068.693161] usb 3-1: Product: USBasp
[ 2068.693164] usb 3-1: Manufacturer:
www.fischl.de
sudo lsusb -v
Bus 003 Device 007: ID 16c0:05dc Van Ooijen Technische Informatica shared ID for use with libusb
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 255 Vendor Specific Class
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x16c0 Van Ooijen Technische Informatica
idProduct 0x05dc shared ID for use with libusb
bcdDevice 1.02
iManufacturer 1
www.fischl.de iProduct 2 USBasp
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 18
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 50mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 0 (Defined at Interface level)
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Device Status: 0x0000
(Bus Powered)
¿Alguna pista de qué puede estar ocurriendo, cómo seguir diagnosticando?
Gracias y saludos
Charli