2

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.

asked Apr 26, 2016 at 16:55
5
  • Genuine Nano or cheap Chinese clone? Commented Apr 26, 2016 at 17:09
  • @Majenko Genuine uno, cheap Chinese nano. Commented Apr 26, 2016 at 17:10
  • lsusb and dmesg 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. Commented Apr 26, 2016 at 17:11
  • usb-devices is also useful - it can show what driver (if any) is attached to a USB device. Commented Apr 26, 2016 at 17:11
  • It is not showing up in lsusb. Cannot decipher anything useful from dmesg. Commented Apr 26, 2016 at 17:14

3 Answers 3

4

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.

answered Apr 26, 2016 at 17:23
1
  • 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. Commented Aug 15, 2017 at 17:24
1

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.

answered Apr 26, 2016 at 17:15
2
  • Not showing up in lsusb. Nothing helpful in dmesg Commented 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. Commented Apr 26, 2016 at 17:19
0

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
answered Oct 20, 2016 at 17:47
1
  • No it was because it was a Chinese clone which don't have serial numbers. Commented Oct 20, 2016 at 17:48

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.