Can compile sketch for Uno but not Nano Every.

I recently started working on this project. When I compile the sketch using Arduino Uno everything works but when I try to use the Nano Every board I get the this error. here is my code.

Any help would be appreciated.

Your error message:

C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.33.0_x86__mdqgnx93n4wtt\libraries\LiquidCrystal\src\LiquidCrystal.h:45:36: error: expected class-name before '{' token
 
 class LiquidCrystal : public Print {
 
                                    ^
 
C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.33.0_x86__mdqgnx93n4wtt\libraries\LiquidCrystal\src\LiquidCrystal.h:86:9: error: 'Print' has not been declared
 
   using Print::write;
 
         ^~~~~
 
Using library LiquidCrystal at version 1.0.7 in folder: C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.33.0_x86__mdqgnx93n4wtt\libraries\LiquidCrystal
exit status 1

Looks like the LiquidCrystal library is not compatible with the Nano Every.

Try installing the HD44780 library by Bill Perry (it is in the library manager), and change the following lines in the code. Not sure if it will work properly, but it will compile using that library.

//#include <LiquidCrystal.h> <<<<original line, comment out
#include <hd44780.h>
#include <hd44780ioClass/hd44780_pinIO.h> // Arduino pin i/o class header

..
..
..

//LiquidCrystal lcd(11, 9, 6, 5, 4, 3); <<<<original line, comment out
hd44780_pinIO lcd(11, 9, 6, 5, 4, 3);

code seems to compile correctly however now I get this error:

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)

The windows store version is known to have occasional issues; the upload problem might be one of them.

I suggest that you install the normal version (https://www.arduino.cc/download_handler.php?f=/arduino-1.8.12-windows.exe) and try with that.

This bug has been fixed:

A new release hasn't happened since that fix. You can fix it by doing this:

(In the Arduino IDE) File > Preferences

Click the link at the line following More preferences can be edited directly in the file.

Open the packages/arduino/hardware/megaavr/1.8.6/cores/arduino/api subfolder.

Open the file Print.h in a text editor.

Add the following line to the end of the file:

using namespace arduino;

Save the file.

You will now be able to use the LiquidCrystal library with your Nano Every.

Please let me know if you run into any problems or questions while following those instructions.

or use version 1.8.5 of the megaavr boards package