When I plug in my nanoatmega328 to my computer, nothing shows up in /dev
as I expect it to. If I plug in my Uno, /dev/ttyACM0
shows up. I have tried several Nanos.
Linux Mint 17.2.
3 Answers 3
dmesg
should be the tool to help you.
Run:
$ dmesg -w
Then hit return a few times (to get some blank lines).
Next plug in your Nano. Some text should appear on the screen, which will give you a clue as to what is going on. I don't have a Nano to try with, but a typical working device would look something like:
[29125.599800] usb 9-1.4.1: new full-speed USB device number 13 using ehci-pci
[29125.694742] usb 9-1.4.1: New USB device found, idVendor=04d8, idProduct=0208
[29125.694747] usb 9-1.4.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[29125.694749] usb 9-1.4.1: Product: Lenny
[29125.694751] usb 9-1.4.1: Manufacturer: chipKIT
[29125.694753] usb 9-1.4.1: SerialNumber: CK1660A05353C5
[29125.695213] cdc_acm 9-1.4.1:1.0: This device cannot do calls on its own. It is not a modem.
[29125.695240] cdc_acm 9-1.4.1:1.0: ttyACM0: USB ACM device
[29125.695768] cdc_acm 9-1.4.1:1.2: This device cannot do calls on its own. It is not a modem.
[29125.695791] cdc_acm 9-1.4.1:1.2: ttyACM1: USB ACM device
[29125.697772] input: chipKIT Lenny as /devices/pci0000:00/0000:00:1a.7/usb9/9-1/9-1.4/9-1.4.1/9-1.4.1:1.4/0003:04D8:0208.0004/input/input19
[29125.698394] hid-generic 0003:04D8:0208.0004: input,hidraw2: USB HID v1.11 Mouse [chipKIT Lenny] on usb-.&checktime(0000,00,1,':')a.7-1.4.1/input4
If it doesn't know what the device is it will give you a fraction of the information, and probably tell you it can't attach a driver.
If the device is faulty and not recognisable you will get messages similar to:
[29125.698394] usb 2-2.1: device not accepting address 5, error -71
If you get absolutely nothing displayed then it can't even recognise that anything has been attached to your computer. Try different USB sockets and different USB cables to see if that helps.
Note: some cheap USB cables used purely for charging small batteries don't have any data wires in them - just power. Using one of these will fail for sure.
-
Thanks, this clarified the issue for me. The Nano seems to mount by default on /dev/ttyUSB0 whereas the Uno mounts on /dev/ttyACM0, which is what I was used to.Cerin– Cerin2017年08月15日 17:24:16 +00:00Commented Aug 15, 2017 at 17:24
Did you try with lsusb
and dmesg
?
They should show if the Arduino was detected and what are its parameters (use lsusb -v
for more detailed info).
If it is detected but you do not get the corresponding tty device, it might be because of missing/different rules.
You could check out this link and edit the parameters idProduct and idVendor to match what you get from lsusb
, in case your rule is not matching.
Then remember to reload the modified rules.
Protip: compare the parameters of your working Uno against the ones from the Nanos and the values set in the rules.
-
Not showing up in
lsusb
. Nothing helpful indmesg
Marcel– Marcel2016年04月26日 17:16:30 +00:00Commented Apr 26, 2016 at 17:16 -
Are you sure that the Nano works? Have you been able to make it do something? In some cases they are shipped blank, without even the bootloader and the only way to make them work is to use an external programmer.Igor Stoppa– Igor Stoppa2016年04月26日 17:19:40 +00:00Commented Apr 26, 2016 at 17:19
Like Majenko said, if dmesg shows nothing then your cable could be to blame. It could be for power only (no data lines). This happened to me. I wouldn't have even thought of the cable if I did not read it here. My hardware is also Arduino nano clone (atmega238 + ch340) and the machine runs Ubuntu 15.04. With a good cable the device is recognized like this (dmesg -w):
usb 4-2: new full-speed USB device number 24 using ohci-pci
usb 4-2: New USB device found, idVendor=1a86, idProduct=7523
usb 4-2: New USB device strings: Mfr=0, Product=2, SerialNumber=0
usb 4-2: Product: USB2.0-Serial
ch341 4-2:1.0: ch341-uart converter detected
usb 4-2: ch341-uart converter now attached to ttyUSB0
-
No it was because it was a Chinese clone which don't have serial numbers.Marcel– Marcel2016年10月20日 17:48:29 +00:00Commented Oct 20, 2016 at 17:48
lsusb
anddmesg
are key points of investigation - you are looking for a USB device and or failure or driver messages after insertion. Something that is not CDC/ACM would probably be more likely to be /dev/ttyUSB0 or similar, if it recognized with a driver available.usb-devices
is also useful - it can show what driver (if any) is attached to a USB device.lsusb
. Cannot decipher anything useful fromdmesg
.