U8g2 library not linking properly on ArduinoDroid

Hello, Moderators, If this is the wrong section for this, please feel free to move it.

This is not an Arduino problem per se, as the arduino IDE works fine with U8g2, and my OLED display works fine, but I like to load sketches to my Android tablet for transport to the field, and with ArduinoDroid, I can make small parameter changes, compile and upload right there onsite.

Once I discovered that LCDs really do have a liquid component that doesn't appreciate sub-zero temps (Duh!) I switched to an OLED display, necessitating the use of the U8g2 library instead of the LiquidCrystali2c library. Everything was fine until I tried to compile the sketch on the tablet.

I'll post the error messages if anyone is interested, but since this is a problem specific to the app, I perfectly understand if no one is interested.

I have filed a bug report with Mr. Smirnov, the developer, but have not heard back from him, and probably won't anytime soon, LOL.

I did not bother Oliver, because the library works fine on the arduino IDE.

Yes, I also noticed this problem. I offered my support, but no feedback.


olikraus: Yes, I also noticed this problem. I offered my support, but no feedback.


Hi Oliver...great library, BTW; Thank you for your work. I think Mr. Smirnov must have been sent to the gulag, because there hasn't been any thing heard from him since september. Do you have any idea what the issue might be, or an idea for a workaround? This really isn't your problem, but you know a lot more about this stuff than I do.

It specifically rejects the u8x8 calls. It works great using the regular IDE, it's only ArduinoDroid that has the problem.

Anyway, I doubt anyone has any magic answers, and thanks again for your libraries. Without them, that OLED display would be a paperweight, LOL


The problem might be caused by the u8g2 library structure. But it is difficult to provide a fix or workaround without knowing what kind of directory structure is accepted by ArduinoDroid. Nevertheless, it might be interessting to analysie the problem in this direction.

Some discussion on this topic has happend here: https://github.com/olikraus/u8g2/issues/626


This was a review and response from 2017.....

"Use of undeclared identifier" all over the place. , but sketch compiles perfect on pc ... Useless :(

Anton Smirnov July 18, 2017 It's because desktop Arduino IDE is written for noobs so it allows (with predeclaration trick) to reference a function before it's declared. In common case in C ++ it's not allowed.

I'm not sure what a "predeclaration trick" is, but undeclared identifiers is also what I'm plagued with. To my untrained eye, I can't see what the difference is between U8g2 and the other libraries I've used.