-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Examples for ESP32-SBC-FabGL don't compile (e.g. SpaceInvaders) - multiple errors #2
Comments
Did you stumble upon this: and then this: https://github.com/MrSoxAndShoes/esp32-sbc-fabgl-quick-start Use older version pre-3.0.0 and compile for generic ESP32 board from the selector, doesn't need to be ESP32-SBC-FabGL. As described in "5. Configure the board" here: https://github.com/MrSoxAndShoes/esp32-sbc-fabgl-quick-start Use the versions that MrSoxAndShoes used. Also it is not clear if all examples worked, we've tested some of them, some of them might not have worked at all. |
Thanks very much, DanKoloff. I'm now able to compile the PC Emulator with those settings, and the v2.0.11 of ESP32 boards support recommended there. I'll try it out later. The main pieces that were missing from what I've been able to find in this repo were:
The Espressif 2.0.11 part being which board support package to select in the Arduino IDE boards manager, and the second part being which board type to choose, when compiling one of the examples (including the PC emulator). I'd like to suggest that this needs to be added to the documentation for this board, perhaps to the readme pages of the two repos - this one, specifically about this board, and the one for the Olimex fork of FabGL (https://github.com/OLIMEX/FabGL). Perhaps added to the product page on the Olimex website too, and ideally to the manual. It seems this problem has been around since at least the release of Espressif 3.0.x, though I'm not clear when that was. The existing documentation was no doubt fine at the time of release, but the fact that Espressif chose to break support for software written for their earlier versions, means it's no longer enough. FWIW, in Arduino 1.8.19, it seems necessary to uninstall Espressif 3.0.2 (the current version) before installing 2.0.11. Possibly it keeps both, otherwise, but shows the greater version number, which is a bit confusing. |
Thank you for the feedback. Some resources were updated, how-to was added in the README here: https://github.com/OLIMEX/FabGL/blob/master/README.md and the manual was also updated: https://github.com/OLIMEX/ESP32-SBC-FabGL/blob/main/DOCUMENTS/ESP32-SBC-FabGL.pdf |
You're welcome, @DanKoloff . Yes, that should do it. I think the advice to set;
was just for the PC Emulator, but I've tried compiling the SpaceInvaders.ino example with those settings and it works fine, so maybe it doesn't matter for the other examples. I'll try some more of them soon. Thanks again. |
[ EDIT: This applies to the FabGL examples for the Olimex ESP32-SBC-FabGL in general. I gave details and an error log for the SpaceInvaders.ino example because that's the first one I tried. This also applies to the PC Emulator and related examples, which is specifically part of this repo rather than the Olimex FabGL repo:
https://github.com/OLIMEX/ESP32-SBC-FabGL/tree/main/SOFTWARE
Possibly the solution would be an update to the documentation, explaining how to compile these examples now that Espressif Systems ESP32 Arduino boards support v3.0.x has apparently broken compatibility. As mentioned below, I can see that uninstalling it, then installing v2.0.17 is an option, but I'm not clear what board/module type to choose in the Tools->Board menu, since specific support for the ESP32-SBC-FabGL board was only added in v3.0.x and was not present in v2.0.17. Anyone new to this product, and ESP32s in general, would face the same issue. ]
In trying to compile the SpaceInvaders FabGL example in Arduino 1.8.19, I get multiple errors. Possibly this is because it's not compatible with ESP Espessif board support v3.0.2, which is the current version.
I started trying to use the main FabGL library, having followed instructions to install that. I
realised earlier I should have been using Olimex's own fork (https://github.com/OLIMEX/FabGL/tree/master), so I installed that instead, but that hasn't got me any further.
In order to get the SpaceInvaders.ino example (https://github.com/OLIMEX/FabGL/tree/master/examples/VGA/SpaceInvaders) to compile past a certain point, I had to add some missing files, which I've taken from a pending pull request I found in the main FabGL library (now a year old) to add support for the ESP32-SBC-FabGL. I copied these files into the project folder:
wiiNunchuk.h, wiiNunchuk.cpp, CH32V003.h, CH32V003.cpp
I got them from here:
fdivitto/FabGL#338
I now get the errors below, which seem to suggest that your example and possibly FabGL fork aren't compatible with ESP 3.0.2 - and it seems neither is the main FabGL library. The one I bought came with SpaceInvaders isntalled, so I know it's possible, but I can't find any clues how to get it to compile, specifically which versions to use. I tried ESP v2.0.17 in the boards manager, but that removed support for the ESP32-SBC-FabGL board. I'm now wondering if it's still even possible to compile FabGL examples, justifying the FabGL part of the name.
Here are the error messages. Let me know if you need the full compilation log:
The text was updated successfully, but these errors were encountered: