03 / Embedded systems
Flesh and Blood Life Tracker
An ESP32-S3 life and resource counter with a custom 70 × 80 mm carrier PCB, debounced controls, undo, reset confirmation, and multiplexed display output.
C++ / ESP-IDF / FreeRTOS / KiCad
Source code →- ESP32-S3
- microcontroller
- 70 × 80 mm
- two-layer carrier board
- FreeRTOS
- firmware runtime
Implementation
The compact design uses an ESP32-S3-Zero, a four-digit common-cathode display, and an SN74HC595 shift register. Firmware runs on ESP-IDF and FreeRTOS. The repository includes an editable two-layer KiCad board, schematic, BOM, and GPIO map.
Results
Host tests verify game-state and shift-register behavior. Separate breadboard checks cover connectivity and pin mapping. The counter supports two players, 20 or 40 starting life, resources, undo, and reset confirmation.
Observations
Explicit state ownership and debounced input events keep display updates and game logic easier to reason about. Undo and reset confirmation are part of the interface rather than afterthoughts.
Limitations
Host tests and breadboard connectivity checks do not establish full assembled-board operation. Full hardware commissioning remains a separate validation step.