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

I'm new to this so I'm hoping it's just something dumb...

I'm using IDE 2.2.1 and a Nano Every board and uploading code that compiled fine and when it's done uploading I get this:

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

Any guidance you could provide would be appreciated.

Here's the code I'm uploading:

#include "ServoEasing.hpp"
ServoEasing servoTop;
ServoEasing servoBottom;
const int action_pin = 2;
int location = 31;
// Below numbers should be adjusted in case the facemask does not close/open to desired angle
int bottom_closed = 107;
int top_closed = 167;
int bottom_open = 20;
int top_open = 20;
void setup()
{
pinMode(action_pin, INPUT_PULLUP);
servoTop.attach(9);
servoBottom.attach(10);
setSpeedForAllServos(190);
servoTop.setEasingType(EASE_CUBIC_IN_OUT);
servoBottom.setEasingType(EASE_CUBIC_IN_OUT);
synchronizeAllServosStartAndWaitForAllServosToStop();
}
void loop()
{
int proximity = digitalRead(action_pin);
if (proximity == LOW)
{
if (location > bottom_open) {
servoTop.setEaseTo(top_open);
servoBottom.setEaseTo(bottom_open);
synchronizeAllServosStartAndWaitForAllServosToStop();
location = bottom_open;
delay(600);
} else {
servoTop.setEaseTo(top_closed);
servoBottom.setEaseTo(bottom_closed);
synchronizeAllServosStartAndWaitForAllServosToStop();
location = bottom_closed;
delay(600);
}
}
}
1 Like

TL;DR:

is often a spurious warning (not an error) which can be safely ignored.

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

This is because the NanoEvery does not use a bootloader, and the memory is not divided into flash and boot segments like the AT328 devices.

The warning was due to an issue with avrdude not recognizing this situation, but the upload proceeded as normal.

avrdude: jtagmkII_initialize(): Cannot locate "flash" and "boot" memories in description
avrdude: AVR device initialized and ready to accept instructions

This has since been fixed in avrdude.

The megaavr core uses an older version of avrdude which has the issue

megaavr
avrdude: Version 6.3-20190619

MegaCoreX uses a more recent version, and does not give the warning message

MegaCoreX
avrdude: Version 7.1-arduino.1
1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.