Nano Every upload issue

Hi volks,
Hi @gabbapeople @dnl
I’ve got my brand new and orignal Arduino Nano Every today, but there is a issue with upload the code with XOD.
If I compile and try to upload the code I will get that error message:


It’s the same issue like described in that post: Arduino Nano Every

If you use the arduino IDE and take the basic exampel “blink” you will also get an error massage, but the code will been uploaded and its possibel to change the blink rate with each upload.

Have any one a suggestion like how to solved that issue?

Dear m-b,

the same problem i had.
To Upload:
Board Model: Arduino Nano
Prozessor: ATmega328P (Old Bootloader)
Serial port: What device manager says

Sometime it’s just a cabel problem. I tryed three different and only one works well with the NANO EVERY.
But my problem is to finde out, howe it works with the “nano EVERY” to compile and upload with XOD.

Did the Every run under Arduino IDE?
look that the XOD and Arduino IDE are up to date
I have the nano v3 but I think both are subject to the same controller.
The first go to your Device manager and look @ the serial communication settings
I run my controller @
Bit: 115200
Data: 8
Parity: none
Stop: 1
Flow: none

and of course you should take a cable that will work with other controllers :slight_smile:
Try diverent USB Ports

Greez
Chris

Hi, @m-b @chris-cross!

There is a small bug during upload to Arduino Nano Every board (not Arduino Nano). We will fix it in the next XOD release.

For those who want to flash the Every board right now, there are two ways.

  1. Use the dev XOD build. Pre-adding the condition to the packages/xod-arduino/platform/uart.h file.
#ifdef ARDUINO_ARCH_MEGAAVR
class arduino::HardwareSerial;
#else
class HardwareSerial;
#endif
class SoftwareSerial;
  1. Flash the patch using the Arduino IDE. Compile the Arduino IDE code by clicking the Show code for Arduino IDE button in XOD. Then, find the line class HardwareSerial; in the code and replace it with class arduino:: HardwareSerial;

We apologize for this inconvenience.

3 Likes

Hi @gabbapeople @nkrkv and many thx for helping!

your solution work fine right now, but now I finde out that with the Nano 33 BLE have the same issue during uploading. Uploading with Arduino IDE works fine, just make your changes like descibed.
I have tested two patches now, the first you can upload with Arduino IDE.

The second one I tried to use the ST7735 library but I got that error at Arduino IDE.

Here is the full log:

Begin compiling code for the board Arduino Nano 33 BLE :package:

Using board ‘nano33ble’ from platform in folder: C:\Users\MDHL\xod_packages_\packages\arduino\hardware\mbed\1.1.4
Using core ‘arduino’ from platform in folder: C:\Users\MDHL\xod_packages_\packages\arduino\hardware\mbed\1.1.4

Detecting libraries used…

“C:\Users\MDHL\xod\packages\packages\arduino\tools\arm-none-eabi-gcc\7-2017q4/bin/arm-none-eabi-g++” -c -w -g -Os -nostdlib “@C:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE/defines.txt” “@C:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE/cxxflags.txt” -DARDUINO_ARCH_NRF52840 -mcpu=cortex-m4 -w -x c++ -E -CC -DARDUINO=10607 -DARDUINO_ARDUINO_NANO33BLE -DARDUINO_ARCH_MBED “-IC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\cores\arduino” “-IC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE” “-IC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\cores\arduino/api/deprecated” “-iprefixC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\cores\arduino” “@C:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE/includes.txt” “C:\Users\MDHL\AppData\Local\Temp\arduino-sketch-9194978204E9FF5A01C8B9223E66F4C1\sketch\xod_1594920322038_sketch.ino.cpp” -o nul

Generating function prototypes…

“C:\Users\MDHL\xod\packages\packages\arduino\tools\arm-none-eabi-gcc\7-2017q4/bin/arm-none-eabi-g++” -c -w -g -Os -nostdlib “@C:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE/defines.txt” “@C:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE/cxxflags.txt” -DARDUINO_ARCH_NRF52840 -mcpu=cortex-m4 -w -x c++ -E -CC -DARDUINO=10607 -DARDUINO_ARDUINO_NANO33BLE -DARDUINO_ARCH_MBED “-IC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\cores\arduino” “-IC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE” “-IC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\cores\arduino/api/deprecated” “-iprefixC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\cores\arduino” “@C:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE/includes.txt” “C:\Users\MDHL\AppData\Local\Temp\arduino-sketch-9194978204E9FF5A01C8B9223E66F4C1\sketch\xod_1594920322038_sketch.ino.cpp” -o “C:\Users\MDHL\AppData\Local\Temp\arduino-sketch-9194978204E9FF5A01C8B9223E66F4C1\preproc\ctags_target_for_gcc_minus_e.cpp”

“C:\Users\MDHL\xod\packages\packages\builtin\tools\ctags\5.8-arduino11/ctags” -u --language-force=c++ -f - --c+±kinds=svpf --fields=KSTtzns --line-directives “C:\Users\MDHL\AppData\Local\Temp\arduino-sketch-9194978204E9FF5A01C8B9223E66F4C1\preproc\ctags_target_for_gcc_minus_e.cpp”

Compiling sketch…

“C:\Users\MDHL\xod\packages\packages\arduino\tools\arm-none-eabi-gcc\7-2017q4/bin/arm-none-eabi-g++” -c -w -g -Os -nostdlib “@C:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE/defines.txt” “@C:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE/cxxflags.txt” -DARDUINO_ARCH_NRF52840 -MMD -mcpu=cortex-m4 -DARDUINO=10607 -DARDUINO_ARDUINO_NANO33BLE -DARDUINO_ARCH_MBED “-IC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\cores\arduino” “-IC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE” “-IC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\cores\arduino/api/deprecated” “-iprefixC:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\cores\arduino” “@C:\Users\MDHL\xod\packages\packages\arduino\hardware\mbed\1.1.4\variants\ARDUINO_NANO33BLE/includes.txt” “C:\Users\MDHL\AppData\Local\Temp\arduino-sketch-9194978204E9FF5A01C8B9223E66F4C1\sketch\xod_1594920322038_sketch.ino.cpp” -o “C:\Users\MDHL\AppData\Local\Temp\arduino-sketch-9194978204E9FF5A01C8B9223E66F4C1\sketch\xod_1594920322038_sketch.ino.cpp.o”

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:491:13: error: reference to ‘HardwareSerial’ is ambiguous
virtual HardwareSerial* toHardwareSerial() {
^~~~~~~~~~~~~~
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:458:7: note: candidates are: class HardwareSerial
class HardwareSerial;
^~~~~~~~~~~~~~
In file included from C:\Users\MDHL\xod_packages_\packages\arduino\hardware\mbed\1.1.4\cores\arduino/api/ArduinoAPI.h:32:0,
from C:\Users\MDHL\xod_packages_\packages\arduino\hardware\mbed\1.1.4\cores\arduino/Arduino.h:42,
from C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:18:
C:\Users\MDHL\xod_packages_\packages\arduino\hardware\mbed\1.1.4\cores\arduino/api/HardwareSerial.h:87:7: note: class arduino::HardwareSerial
class HardwareSerial : public Stream
^~~~~~~~~~~~~~

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino: In member function ‘arduino::Stream* xod::Uart::toStream()’:
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:508:34: error: ‘toHardwareSerial’ was not declared in this scope
Stream* stream = (Stream*) toHardwareSerial();
^~~~~~~~~~~~~~~~

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:508:34: note: suggested alternative: ‘HardwareSerial’
Stream* stream = (Stream*) toHardwareSerial();
^~~~~~~~~~~~~~~~
HardwareSerial

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino: At global scope:
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:516:5: error: reference to ‘HardwareSerial’ is ambiguous
HardwareSerial* _serial;
^~~~~~~~~~~~~~
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:458:7: note: candidates are: class HardwareSerial
class HardwareSerial;
^~~~~~~~~~~~~~
In file included from C:\Users\MDHL\xod_packages_\packages\arduino\hardware\mbed\1.1.4\cores\arduino/api/ArduinoAPI.h:32:0,
from C:\Users\MDHL\xod_packages_\packages\arduino\hardware\mbed\1.1.4\cores\arduino/Arduino.h:42,
from C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:18:
C:\Users\MDHL\xod_packages_\packages\arduino\hardware\mbed\1.1.4\cores\arduino/api/HardwareSerial.h:87:7: note: class arduino::HardwareSerial
class HardwareSerial : public Stream
^~~~~~~~~~~~~~
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:519:32: error: expected ‘)’ before ‘&’ token
HardwareUart(HardwareSerial& hserial, uint32_t baud = 115200) : Uart(baud) {
^

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:542:5: error: reference to ‘HardwareSerial’ is ambiguous
HardwareSerial* toHardwareSerial() {
^~~~~~~~~~~~~~
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:458:7: note: candidates are: class HardwareSerial
class HardwareSerial;
^~~~~~~~~~~~~~

In file included from C:\Users\MDHL\xod_packages_\packages\arduino\hardware\mbed\1.1.4\cores\arduino/api/ArduinoAPI.h:32:0,
from C:\Users\MDHL\xod_packages_\packages\arduino\hardware\mbed\1.1.4\cores\arduino/Arduino.h:42,
from C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:18:
C:\Users\MDHL\xod_packages_\packages\arduino\hardware\mbed\1.1.4\cores\arduino/api/HardwareSerial.h:87:7: note: class arduino::HardwareSerial
class HardwareSerial : public Stream
^~~~~~~~~~~~~~

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino: In member function ‘virtual bool xod::HardwareUart::available()’:
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:528:21: error: ‘_serial’ was not declared in this scope
return (bool) _serial->available();
^~~~~~~

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:528:21: note: suggested alternative: ‘Serial’
return (bool) _serial->available();
^~~~~~~
Serial
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino: In member function ‘virtual bool xod::HardwareUart::writeByte(uint8_t)’:
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:532:21: error: ‘_serial’ was not declared in this scope
return (bool) _serial->write(byte);
^~~~~~~

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:532:21: note: suggested alternative: ‘Serial’
return (bool) _serial->write(byte);
^~~~~~~
Serial
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino: In member function ‘virtual bool xod::HardwareUart::readByte(uint8_t*)’:
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:536:18: error: ‘_serial’ was not declared in this scope
int data = _serial->read();
^~~~~~~

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:536:18: note: suggested alternative: ‘Serial’
int data = _serial->read();
^~~~~~~
Serial
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino: In member function ‘virtual void xod::HardwareUart::begin()’:
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:549:3: error: ‘_serial’ was not declared in this scope
_serial->begin(getBaudRate());
^~~~~~~

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:549:3: note: suggested alternative: ‘Serial’
_serial->begin(getBaudRate());
^~~~~~~
Serial

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino: In member function ‘virtual void xod::HardwareUart::end()’:
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:553:3: error: ‘_serial’ was not declared in this scope
_serial->end();
^~~~~~~

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:553:3: note: suggested alternative: ‘Serial’
_serial->end();
^~~~~~~
Serial
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino: In member function ‘virtual void xod::HardwareUart::flush()’:
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:556:3: error: ‘_serial’ was not declared in this scope
_serial->flush();
^~~~~~~

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookYjwbmm\xod_1594920322038_sketch\xod_1594920322038_sketch.ino:556:3: note: suggested alternative: ‘Serial’
_serial->flush();
^~~~~~~
Serial

Error: exit status 1
Compilation failed.
Compilation failed
Command Process exited with code 1
The generated C++ code contains errors. It can be due to a bad node implementation or if your board is not compatible with XOD runtime code. The original compiler error message is above. Fix C++ errors to continue. If you believe it is a bug, report the problem to XOD developers.

Hi @gabbapeople @nkrkv

as suggested i used the first suggestion now and created the dev XOD build. At first after lerning a lot in last days it works now :smile: . The are following problems: arduino-cli had to be inserted -done. When compiling there is also the error that SoftwareSerial.h is not found. I solved this by specifying the location of SoftwaerSerial.h in the Soft-Uart. This works for now.

Now there is a new issue with ST7735i will use

Begin compiling code for the board Arduino Nano 33 BLE :package:

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookpR8Pbi\libraries\ST7735\XST7735.cpp: In member function ‘void ST7735::begin()’:
C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookpR8Pbi\libraries\ST7735\XST7735.cpp:128:14: error: ‘portOutputRegister’ was not declared in this scope
csport = portOutputRegister(digitalPinToPort(_cs));
^~~~~~~~~~~~~~~~~~

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookpR8Pbi\libraries\ST7735\XST7735.cpp:129:17: error: ‘digitalPinToBitMask’ was not declared in this scope
cspinmask = digitalPinToBitMask(_cs);
^~~~~~~~~~~~~~~~~~~

C:\Users\MDHL\AppData\Local\Temp\xod_temp_sketchbookpR8Pbi\libraries\ST7735\XST7735.cpp:129:17: note: suggested alternative: ‘digitalPinToPinName’
cspinmask = digitalPinToBitMask(_cs);
^~~~~~~~~~~~~~~~~~~
digitalPinToPinName

Error during build: exit status 1
Compilation failed
Command Process exited with code 1
The generated C++ code contains errors. It can be due to a bad node implementation or if your board is not compatible with XOD runtime code. The original compiler error message is above. Fix C++ errors to continue. If you believe it is a bug, report the problem to XOD developers.

Do you have a proposal to solve this?

Thanks so much for your work!

On github the same error is described for upload to a nano ble, but for SSD1306 and not for ST7735. The error seems to be the same and has something to do with the library. How to solve the bug? Anybody got an idea?!

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