LVGL Touch UI for ESP32 CYD running MQTT server

via Freelancer ·

Budget / SalaryC$30–250
TypeFreelance project
LocationRemote
Posted7 hours ago
I already have a fully-working Arduino sketch that turns my CYD ESP32-2432S028R into a local MQTT server. What’s still missing is a front-end: I want those variables to be editable directly from the board’s 2.8-inch touch screen using LVGL.

Here is what I need you to add or change:

• Build an LVGL-based interface that opens in a Dark theme and spans multiple screens I can swipe or navigate between.
• Include button inputs for quick on/off style actions and text input fields for numeric or string parameters.
• When a value is changed on screen it must immediately update the corresponding variable in the sketch and publish the new value to the same MQTT topic; inbound topic updates should refresh the UI as well, so everything stays in sync.
• The solution should compile for the CYD ESP32-2432S028R with no additional hardware changes, using either the Arduino IDE or PlatformIO (your choice, just note it in the README).
• Code must stay non-blocking so Wi-Fi, MQTT and the LVGL render loop all run smoothly together.

Deliverables
1. The complete, well-commented source (main .ino / platformio.ini plus any headers or LVGL configuration files).
2. A brief README telling me which LVGL version you used, the library URLs, and flash instructions.
3. A short video or set of screenshots that shows navigation between the screens, editing a value, and the MQTT message appearing in an external client (Mosquitto or similar).

I will test by compiling your code, flashing it, then confirming that:
• UI loads in dark mode with the expected screens.
• Button presses and text changes reach the broker instantly.
• External MQTT writes echo back to the display without lag.

If you have prior projects mixing LVGL and MQTT on ESP32, feel free to mention them when you bid.
c programming electronics android microcontroller arduino software development mqtt embedded systems software engineering firmware development
Apply on Freelancer →

Project sourced from Freelancer.com. Applications happen directly on the original platform — we never collect your data.