MLXXXp/Arduboy2

Will not compile for Arduino Nano

yorickreum opened this issue · 1 comments

The library does not compile for Arduino Nano (Leonard works well). Nano throws a bunch of errors:

C:\Users\Demo\Documents\Arduino\libraries\Arduboy2\src\Arduboy2Beep.cpp: In static member function 'static void BeepPin1::begin()': C:\Users\Demo\Documents\Arduino\libraries\Arduboy2\src\Arduboy2Beep.cpp:18:3: error: 'TCCR3A' was not declared in this scope TCCR3A = 0; ^~~~~~ C:\Users\Demo\Documents\Arduino\libraries\Arduboy2\src\Arduboy2Core.cpp: In static member function 'static void Arduboy2Core::bootPins()': C:\Users\Demo\Documents\Arduino\libraries\Arduboy2\src\Arduboy2Core.cpp:144:3: error: 'PORTE' was not declared in this scope PORTE |= _BV(A_BUTTON_BIT); ^~~~~ C:\Users\Demo\Documents\Arduino\libraries\Arduboy2\src\Arduboy2Core.cpp:144:3: note: suggested alternative: 'PORT0' PORTE |= _BV(A_BUTTON_BIT); ^~~~~ PORT0 In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0, from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:90, from C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:28, from C:\Users\Demo\Documents\Arduino\libraries\Arduboy2\src\Arduboy2Core.h:10, from C:\Users\Demo\Documents\Arduino\libraries\Arduboy2\src\Arduboy2Core.cpp:7: C:\Users\Demo\Documents\Arduino\libraries\Arduboy2\src\Arduboy2Core.h:102:22: error: 'PORTE6' was not declared in this scope #define A_BUTTON_BIT PORTE6 ^ C:\Users\Demo\Documents\Arduino\libraries\Arduboy2\src\Arduboy2Core.cpp:144:16: note: in expansion of macro 'A_BUTTON_BIT' PORTE |= _BV(A_BUTTON_BIT); ^~~~~~~~~~~~

And so on...

Is this known/intended?

Is this known/intended?

Yes, it is intended. The library is specifically intended for use with the Arduboy, which is based on the Arduino Leonardo using an ATmega32U4. The library manipulates the hardware directly in many cases, to reduce code size. I don't want to have to maintain this for other non-official Arduboy hardware.

There have been some efforts to port the library for use with ATmega328 based designs, such as this one:
https://community.arduboy.com/t/arduboy-on-arduino-nano-i-c-display/5532