Did i fry my Arduino Nano Every?

Hey everyone,

I have done some programming in the past and recently started a new project where I connected old quadcopter parts to my arduino, trying to control a motor.

I connected my PDB (regulated 5v output) to VIN and ground, then my electronic speed controller to pin D3 and ground. I got the motor spinning using the Servo library, which worked (it did seem jerky where the motor stopped spinning occasionally, eventhough my program just did a writeMicroseconds(1500) once, in setup() without any other commands after this, maybe because my esc wasn't expecting normal "servo pwm", but a protocol called "multishot", not sure about this though).

That said, I'm not able to get a connection with my Nano Every anymore. I get this error message when trying to upload a sketch (the "blink" example sketch in this case):

Arduino: 1.8.13 (Windows 10), Board: "Arduino Nano Every, ATMEGA328"

Sketch uses 1120 bytes (2%) of program storage space. Maximum is 49152 bytes.

Global variables use 22 bytes (0%) of dynamic memory, leaving 6122 bytes for local variables. Maximum is 6144 bytes.

Forcing reset using 1200bps open/close on port COM3

C:\Users\Wouter\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude -CC:\Users\Wouter\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf -v -patmega4809 -cjtag2updi -PCOM3 -b115200 -e -D -Uflash:w:C:\Users\Wouter\AppData\Local\Temp\arduino_build_386350/Blink.ino.hex:i -Ufuse2:w:0x01:m -Ufuse5:w:0xC9:m -Ufuse8:w:0x00:m {upload.extra_files} 



avrdude: Version 6.3-20190619

         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/

         Copyright (c) 2007-2014 Joerg Wunsch



         System wide configuration file is "C:\Users\Wouter\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"



         Using Port                    : COM3

         Using Programmer              : jtag2updi

         Overriding Baud Rate          : 115200

JTAG ICE mkII sign-on message:

Communications protocol version: 1

M_MCU:

  boot-loader FW version:        1

  firmware version:              1.07

  hardware version:              1

S_MCU:

  boot-loader FW version:        1

  firmware version:              6.07

  hardware version:              1

Serial number:                   00:00:00:00:00:00

Device ID:                       JTAGICE mkII

         AVR Part                      : ATmega4809

         Chip Erase delay              : 0 us

         PAGEL                         : P00

         BS2                           : P00

         RESET disposition             : dedicated

         RETRY pulse                   : SCK

         serial program mode           : yes

         parallel program mode         : yes

         Timeout                       : 0

         StabDelay                     : 0

         CmdexeDelay                   : 0

         SyncLoops                     : 0

         ByteDelay                     : 0

         PollIndex                     : 0

         PollValue                     : 0x00

         Memory Detail                 :



                                  Block Poll               Page                       Polled

           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack

           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------

           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

           prodsig        0     0     0    0 no         61   61      0     0     0 0x00 0x00

           fuses          0     0     0    0 no          9    0      0     0     0 0x00 0x00

           fuse0          0     0     0    0 no          1    0      0     0     0 0x00 0x00

           fuse1          0     0     0    0 no          1    0      0     0     0 0x00 0x00

           fuse2          0     0     0    0 no          1    0      0     0     0 0x00 0x00

           fuse4          0     0     0    0 no          1    0      0     0     0 0x00 0x00

           fuse5          0     0     0    0 no          1    0      0     0     0 0x00 0x00

           fuse6          0     0     0    0 no          1    0      0     0     0 0x00 0x00

           fuse7          0     0     0    0 no          1    0      0     0     0 0x00 0x00

           fuse8          0     0     0    0 no          1    0      0     0     0 0x00 0x00

           lock           0     0     0    0 no          1    0      0     0     0 0x00 0x00

           data           0     0     0    0 no          0    0      0     0     0 0x00 0x00

           usersig        0     0     0    0 no         64   64      0     0     0 0x00 0x00

           flash          0     0     0    0 no      49152  128      0     0     0 0x00 0x00

           eeprom         0     0     0    0 no        256   64      0     0     0 0x00 0x00



         Programmer Type : JTAGMKII_PDI

         Description     : JTAGv2 to UPDI bridge

         M_MCU hardware version: 1

         M_MCU firmware version: 1.07

         S_MCU hardware version: 1

         S_MCU firmware version: 6.07

         Serial number:          00:00:00:00:00:00

         Vtarget         : 5.0 V



avrdude: jtagmkII_initialize(): Cannot locate "flash" and "boot" memories in description

avrdude: jtagmkII_reset(): timeout/error communicating with programmer (status -1)

avrdude: initialization failed, rc=-1

         Double check connections and try again, or use -F to override

         this check.



avrdude: jtagmkII_close(): timeout/error communicating with programmer (status -1)

avrdude: jtagmkII_close(): timeout/error communicating with programmer (status -1)



avrdude: jtagmkII_close(): timeout/error communicating with programmer (status -1)



avrdude done.  Thank you.





This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

Thank you to everyone who took the time to read!

Are you using any external programmer ?

m_k_akash: Are you using any external programmer ?

Not sure what an external programmer is, but i simply connect the arduino via usb to my laptop, on which I run the Arduino ide (downloaded from here: https://www.arduino.cc/en/Main/Software)

Did you select ‘upload using programmer’ ?. Please explain how did you use the ide to program the nano

programmer is a device used to program the mcu present in the Arduino. The Arduino nano has a atmega328p mcu in it. It can’t be directly programmed by the computer, so it has a specific bootloader.

Now nano has a usb to TTL converter ic. Which converts the usb protocol to uart protocol (which the atmega328p supports). So the job of the bootloader is to take the data from the uart which was given by the usb to TTL converter and write this data to the flash memory of the atmega328p. This all process is undertaken in the same board.

This is how the mcu present in the nano is programmed. Also you can use isp programmers like usbasp to program the atmega328p directly without the bootloader via a protocol named spi. Normally, the mcu are programmed by using a programmer, since it’s a bit tricky, Arduino has made all simple that no one needs to bother about programmers and stuff.

Update : the OP has a arduino nano every(Which I didnt notice) which has a ATmega4809 instead of atmega328p

OP is using a Nano Every, which has an atmega4809, not an atmega328, you cannot program it via ISP.

thank you to everyone who replied!

As david_2018 pointed out I am using an arduino Nano Every. I hope the attached picture might help as to what my settings are, honestly I am kind of lost at this point so hope someone can find something :confused:

@m_k_akash

PLEASE take more care with your answers or leave questions alone until you have the knowledge to deal with them !

I am sorry that I didnt notice that the OP used arduino nano every, I thought it was just nano, just before I was replying I was reading a threat related to arduino nano, so I messed with this up, I apologize for my mistake. Ya I will be more careful here after :( :(

possibly unclear but quick update; I had the pdb connected to a battery, from there i powered (5v) the arduino and the raw 12.6v to the esc + motor. When I tried to program my arduino I didn’t have the battery plugged in and had it use power over usb. With the 5v and ground still connected to the pdb, which did light an LED on the pdb. I cut the wires soldered to the arduino and things work just fine now.

What I think happens is that the Arduino sees a small current flowing between the Vin and GND pins, which makes it disable the usb port? (this is an assumption and would love to be corrected if I’m wrong).

That said, I’ll try to remember to write a clear update once I am further into the project and have soldered the arduino to the pdb again for future readers.

Again, thank you to everyone!