I’ve been working on this project for some weeks now and I thought I’ll make a quick post here. I think it’s always kind of rewarding to see when other people start using the tools you provide.
RepPanel is a user interface for RepRap/Duet based 3D printers. It is a cheaper alternative to the already available PanelDue. Thanks to the port of LittlevGL to the ESP32 it is fast enough to get the job done and looks kind of modern & fancy.
A big difference to the PanelDue is that the RepPanel does not have to be connected via cable to the printer. You can put it up anywhere in your WiFi.
Under the hood, the firmware makes use of RTOS tasks. It requests JSON data from the 3D printers REST API, processes it and posts it to the UI. The application still crashes sometimes when it tries to write to the DMA-RAM for the SPI display. Not sure what causes it. Might be a memory bug (“low-RAM”) or ESP-IDF tasking issue.
I have not done an awful lot of embedded development, yet. So maybe some of these errors are because of bad design.
I choose LittlevGL over uGFX and I am very happy with it. It seems to be a good choice for my kind of project.