It's a solved problem, but I actually prefer a simple web UI.
Product link: https://www.elecrow.com/esp32-display-series-hmi-touch-screen.html Code link: https://github.com/Elecrow-RD/CrowPanel-ESP32-Display-Course-File ...