Hi all - I’ve been building LCD Wizard, a visual LVGL designer that runs in the browser, and I’d value this forum’s feedback more than anyone’s.
The part I think is different: it doesn’t stop at the UI files. You pick the board (the Cheap Yellow Display, WT32-SC01 Plus, T-Display-S3, Sunton RGB panels, STM32 and Pico builds, or your own wiring), and the export is a whole project - the sketch, the TFT_eSPI / LovyanGFX / Arduino_GFX config, lv_conf.h with only the widgets and Montserrat sizes you use switched on, and platformio.ini. It targets LVGL 9 and 8 from the same design.
Other things that might interest people here:
Sensors and variables: bind a BME280 reading to a label through a formula, and preview it with simulated values before any hardware exists.
Resistive touch calibrates on the device and says on screen whether it worked; capacitive controllers are reset and checked at every boot.
Fonts are converted with lv_font_conv (seven-segment faces, Montserrat Bold, or import a free font), and icons are glyphs in a generated font, so they follow a button’s pressed and checked text colour.
The designer is at https://lcdwizard.com - it opens without an account. I’d especially like to hear where the generated code does something you’d do differently.
I plan on keeping a very generous and unrestrictive free tier. obviously with users comes data so im hoping the small amount for generation and/or a lifetime pass will pay for the server/data costs.
I use the tool myself for work in my daily driver money-pit so if it makes no money its not really an issue. I released mainly to get rid of the design/flash/inspect loop. It saves me a tonne of time!
by the way, i ran into an issue with on board background images, anything over your cache i had to convert to C arrays rather than load them from SPIFFS. are you aware of a way round this?
I just saw the notice today (9/28). The site provides a great LVGL 9.x online designer.
I saw it originally providing exported code for ESPHome. ) Johnny subsequently enhanced that code to export either Android C code, MicroPython, or ESPHome. For the MicroPython export he uses the capabilities of the LVGL-MicroPython code set (aka “LCD_Bus”… well my nickname for Kevin Schlosser’s et. al. code.)
I happened to have an ESP32-S3 sitting around with the MicroPython “LCD_Bus” firmware, and so I created a project on Johnny’s site choosing the demo for ILI9341. Johnny’s software exports the output as a ZIP file. I placed the various files on the ESP32S3’s flash (after editing board.py with my pinouts) and ran the main.py in Thonny. It worked immediately, it even ran the touch calibration.
Wow! I love that you tried it. I’ve tested all code generations across a subset of boards that I have, and am lining up some more libraries and peripherals to add to it. If you could, would you drop me a line at my email address with what you liked, what worked for you, what didn’t work for you, what you found confusing etc. my email is on the site. Feedback is really what I’m after at the minute. If you’d like to continue using the tool I can add a tonne of credits to your account for your trouble