• Welcome to Andy's Workshop Forums. Please login or sign up.
 
March 28, 2024, 05:35:54 am

News:

SMF - Just Installed!


How to add/derive support for new Displays?

Started by avrguru, July 29, 2019, 12:21:41 am

Previous topic - Next topic

avrguru

July 29, 2019, 12:21:41 am Last Edit: July 29, 2019, 12:34:53 am by avrguru
Hi Andy/everyone!  Great projects and amazing library, this stm32plus!

I am trying to add support for the ILI9488 (has more h/w capability & color depth than existing ILI9481).  As a starting point, I tried simply duplicating the ili9481 lib and example directories to be the new ili9488 ones, with the goal of making something *called* ili9488 that was exactly the same as ili9481 but just a different name, to make sure it still compiled after the name change.  I simply changed every '9481' to '9488' in all affected files and file names where it existed, but it won't build successfully.  (I also modified the \display\tft.h file, \display\graphic\tft\TftInterfaces.h file, and \lib\include\error\ErrorProvider.h, since all those include the path to the ili9481 dir's.)  When attempting to build the derived ili9488 Example project, it fails to locate pretty much any header file in my "\src\stm32plus\lib\include\display\graphic\tft\ili9488\commands" folder (at least that seems to be the root cause, not clear) and thus complains about (a few dozen) things like:

lib/include/display/graphic/tft/ili9488/ILI9488.h:187:41: error: 'stm32plus::ili9488::ExitSleepModeCmd' has not been declared
       _accessMode.writeCommand(ili9488::ExitSleepModeCmd::Opcode)

Again, literally, what I did was copy the existing ili9481 folders (lib and example) and globally change every 9481 to a 9488.  I also modified the GUIDs that are present in some of the headers so they'd be different from the '9481 equivalents; no joy.  I'm at a loss as to why these files seem to be unavailable during the build.  Using the following cmd line to compile:  "scons mode=debug mcu=f1hd hse=8000000"   as well as other variants; all give the same result.  Almost seems like I'm missing a pre-compile step (clean? build some other thing first???)  Thanks for any suggestions!