This project aims to provide a multiplayer chess-clock like device where you can configure different modes (count down, count down with reset, count up), list of players, and then use cheap 433MHz buttons to trigger active player changes.
- IDF v5.3
- SDL2 (on macOS I use homebrew, Linux should just work with a
-dev
-package).
- Cheap Yellow Display is the main component showing the UI and running the domain logic.
- 433MHz RX TBD
- 433MHz button TBD
LVGL is a pretty neat small devices UI framework. As usual with GUI-projects, tweaking and iterating quickly is paramount to a good result.
To this end the sim project is setup to simulate the UI based on the
SDL2
library. The actual LVGL source code is pulled in from the
installed LVGL component for the IDF project, as are the projects UI
cpp files.
Attention: this is done using a symlink! Those work only under unixy OS such as Linux and macOS. To make them work under Windows, copying over the source from the component directory is probably the simplest option.
To build, just run cmake -B build && cmake --build build
inside the
directory. You should end up with bin/game-clock
to run.