Beta

LavaCore

A one-night project for my children. A phone becomes a motion controller for ESP32 LED games. Open-source firmware, Flutter and web apps.

Role: Built in one night for my children, then the open-source rewrite

  • C++
  • ESP32
  • BLE
  • Flutter
  • PlatformIO
LavaCore: a phone talks to an ESP32 over BLE, and the board drives the LED strip.PhoneBLE40 HzESP32game + LEDsStrip
LavaCore: a phone talks to an ESP32 over BLE, and the board drives the LED strip.

I built LavaCore in one night for my children. It later became an open-source rewrite of earlier LED games. Another family project, NeuralSMP, is in the lab while its site is restored.

LavaCore turns a phone into a motion controller for an addressable LED strip. Tilt to move, strike to attack, up to four players. The public site describes NimBLE GATT at 40 Hz, FastLED on one core and the game loop on the other, PlatformIO firmware, stable colour slots, and late join at a level boundary.

The rewrite keeps the credit of the projects it grew from: TWANG (Robin B and Critters, 2017) and TWANG32 (Bart Dring, 2018). The public site credits the rewrite, from 2024, to the LavaCore Team. The licence is MIT, as with those projects.

Firmware is flashed in the browser. The web app pairs over Web Bluetooth on Chrome or Edge for Android. Native Android is a closed beta. The Flutter companion that used to be listed separately as Twang32 sits in this project. It has no store listing.

Discuss a projectoffice@ocanom.co.uk