I am using an Arduino UNO which worked fine until today. My system: Ubuntu 18.04
Now, the IDE can no longer connect to it:
- Cannot do any sketch upload
- Cannot ask for board info
- No USB ports shown in tools --> port (only 2 serial ports shown)
- ttyACM0 not showing up in /dev
show that the board is recognized somehow.lsusb
output:Bus 001 Device 012: ID 03eb:2fef Atmel Corp.dmesg
output:[ 2922.171042] usb 1-1.3: new full-speed USB device number 12 using ehci-pci
[ 2922.282047] usb 1-1.3: New USB device found, idVendor=03eb, idProduct=2fef
[ 2922.282052] usb 1-1.3: New USB device strings: Mfr=0, Product=1, SerialNumber=0
The problem is the same on 2 different computers, which leads me to suspect that there is something wrong with the board. Is it possible that a board be shown by both dmesg
and still be malfunctioning ?
The board was bad. I just replaced it and it now works. ;D
So, to answer my own question, an Arduino board can show up on lsusb and dmesg and yet be faulty. This is what the dmesg output is for a healthy board:
[10492.388028] usb 1-1.4: new full-speed USB device number 13 using ehci-pci
[10492.500520] usb 1-1.4: New USB device found, idVendor=2341, idProduct=0043
[10492.500526] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=220
[10492.500529] usb 1-1.4: Manufacturer: Arduino (www.arduino.cc)
[10492.500533] usb 1-1.4: SerialNumber: 55736323739351010292
[10492.520354] cdc_acm 1-1.4:1.0: ttyACM0: USB ACM device
[10492.520832] usbcore: registered new interface driver cdc_acm
[10492.520835] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
And here is the lsusb output:
Bus 001 Device 013: ID 2341:0043 Arduino SA Uno R3 (CDC ACM)
Judging on the difference with the previous outputs from both commands (when the faulty board was connected), it seems that my board had reverted to the basic Atmel USB interface and that the Arduino specific USB handshake was not working. Can anyone confirm ?
Thanks for taking the time to provide an update with your findings fi11222. My suspicion would be that the USB to serial firmware is missing from the ATmega16U2 chip on your Uno. It is possible to install the firmware on that chip. There is some information about this here:
I don't believe the modification of adding the resistor is necessary with modern Uno boards.
I have never tried the DFU method, but I have updated the firmware on my ATmega16U2 using an ISP programmer and that went without any problems.