0

I have two original (designed and assembled in Italy) Arduino Nano Every Boards from a German Web Shop. They came sealed in original packaging. When I try to connect them to my PC, they don't power up.

What I've tried so far:

  • 6 different USB cables
  • 1 Desktop PC with Arch Linux as well as Windows 10, all USB Ports available (front headers, back side motherboard)
  • 1 Laptop PC with Arch Linux
  • 1 Google Pixel 4 XL using a USB-B to -C adapter

No combination of the USB cables with any of the aforementioned USB Ports / Machines / Operating Systems allow the Arduino Nano Every Boards to boot up (no LEDs flashing).

I tried powering the boards using a 9V battery block on the V_in and GND pins, which works. I also tried powering the boards using a 9V battery block and then connecting the USB, but the aforementioned machines / operating systems do not recognize a new device connected via USB, despite the boards being powered (LEDs flashing).

I also triple-checked the physical connection of the USB cables on both ends to be sure they are inserted properly. I can use the aforementioned USB cables, USB ports, machines, and operating systems to charge other devices or transfer data with other devices (like, e.g., smartphones, e-book readers, USB flash memory sticks, external hard drives, ...).

What should I try next to get the Arduino Nano Every working?

Please let me know which extra information I should provide. Thanks!

Note: As far as I can see, using lsusb on Linux should always list connected USB devices, regardless of the groups my user's in. Nevertheless, I also loaded the cdc_acm module and added SUBSYSTEMS=="usb-serial", TAG+="uaccess" to a udev rule located at /etc/udev/rules.d/01-ttyusb.rules, and reloaded the udev rules, to no avail.

hintze
  • 117
  • 3

3 Answers3

1

These types of questions often requires considerable trouble shooting until the cause is found. In order to make this useful to as many people as possible, let us compile a list of actions. (Add a comment if any have additional actions to try and I'll add them to the list.)

  • "...powering the boards using a 9V battery block on the V_in and GND pins..."

Confirm the 9V supply is connected to VIN. An internal voltage regulator will then provide the necessary 5V and 3V3 to the rest of the Nano-Every. Consider if 9V was accidentally connected to either the 5V or 3V3 pins, parts of the Nano-Every my be damaged.

  • "using lsusb on Linux should always list connected USB devices"

Yes, it should. If "lsusb" is typed before and after plugging in the Nano Every there should be an additional USB device listed. If there is no change, there may be something physically wrong (bad cable or incorrect cable (i.e. charging only), bad Nano or burnt out part).

Also, "lsusb" normally does not require root privileges. But consider trying "sudo lsubs" to confirm all USB devices are seen.

Here is an example output of "lsusb" run when an Nano-Every was connected to a Ubuntu computer:

$ lsusb
...
Bus 001 Device 004: ID 2341:0058 Arduino SA Arduino Nano Every
  • "I also loaded the cdc_acm module ..."

Inspecting a Ubuntu system that can successfully program a Nano-Every, I see no package with the words cdc_acm in it installed.

(I'm going to have to look into the above. While Ubuntu's package manager does manage cdc-acm.ko, cdc-acm.ko exists.)

  • "...and added SUBSYSTEMS=="usb-serial", TAG+="uaccess" to a udev rule located at /etc/udev/rules.d/01-ttyusb.rules"

Be aware that adding a udev rule with a low value such as "01*" is likely to be obscured by any udev rule with a higher number should a match be found. Most developers add udev rules which start with a high number such as "99*" to mitigate this problem.

This said, it is unlikely a modification to udev rules is necessary. Most if not all Linux distributions will handle a USB/CDC type of peripheral adequately with out modifications. Plugging in a Nano-Every into the above mentioned Ubuntu computer generates a new device at /dev/ttyACM0.

  • "I tried powering the boards using a 9V battery"

Avoid using PP3 type 9 Volt batteries. They can be problematic when their lower current capacity has been reached. At which point their output voltage may drop. Leading to unexpected results. If such a battery is necessary, pay close attention to current needs adding up all the expected maximum currents. In brief, lower powered processor on Arduino boards built using an LDO (Low DropOut regulator) have the best chance of working as expected. Other Arduino boards may not work as well and high current components such as a motor, solenoid or relay will likely not work.

st2000
  • 7,513
  • 2
  • 13
  • 19
0

It's some regression in linux core and 1200baud touch doesn't work properly (it seems it's used switching between updi mode and serial link).

I started using script mentioned in https://github.com/arduino/ArduinoCore-megaavr/issues/124 and i was able to upload it in most cases (but better than mostly failing) when I execute it few seconds before the upload.

For example curiosity nano board with Atmega4809 works perfectly as it's emulating debugger+serial+mass storage (but needs correct VID/PID in udev rules or connecting storage)

Mentioned script:

#!/usr/bin/python3
#   Run this script to reset the Arduino Nano Every
#   eg. sudo python3 mcu_reset.py
#
# Note: You must install pyserial first; i.e. sudo pip3 pyserial

import serial import os, sys

total arguments

n = len(sys.argv) if n >= 2: port = sys.argv[1] else: port = '/dev/ttyACM0'

print("Port: {}".format(port))

#re-enable hupcl temporarily (necessary for arduino reset using serial port) os.system('sudo /bin/stty -F {} hupcl'.format(port))

try: #perform Arduino Nano Every reset "handshake" ser = serial.Serial() ser.baudrate = 1200 ser.port = port ser.open() ser.close()

except serial.SerialException: print("Error: serial.SerialException") exit()

KIIV
  • 4,907
  • 1
  • 14
  • 21
0

I've ordered an Arduino Nano (not "Every") from a different web shop now, and it powers up as soon as I connect to USB. Since the Arduino Nano uses mini-USB (the Arduino Nano Every uses micro-USB), I'm using a different cable from the ones I tried on the two Arduino Nano Every boards I have. But given that I tried multiple cables that also work with other devices, I'm confident now that the two boards I have are just broken. I've had bad luck.

hintze
  • 117
  • 3