๐ŸŒน BelleCoder

Program Belle's dances on a $12 touchscreen wand โ€” or by dancing with it.

BelleCoder turns a Cheap Yellow Display (ESP32-2432S028R) into a standalone dance-programmer wand for the Hasbro Dance Code featuring Disney Princess Belle doll. Build dance sequences with big touch icons, capture a routine by physically waving the device, and stream it to Belle over Bluetooth โ€” replacing the discontinued Hasbro app. Always paired, never expires, no phone or tablet needed.

Flash it from your browser

Plug the CYD in over USB, pick your board variant, then click Install and choose its serial port. Flashing takes ~1 minute and erases the device. Presets ship with the install.

Your browser can't do Web Serial โ€” use desktop Chrome or Edge. Serial access was blocked โ€” allow it and retry.

Both target the 2.8" ESP32 CYD (ESP32-2432S028R, ILI9341, resistive touch). Not sure which? Flash CYD2USB first; if the screen is sideways/portrait or upside-down, reflash Elegoo (its panel is portrait-native, so it runs a different rotation). It boots straight into the editor in SIMULATE mode โ€” no doll needed.

Board
ESP32-2432S028R "CYD" (2.8" ILI9341, resistive touch). ~$10โ€“15.
Browser
Desktop Chrome or Edge (Web Serial). Won't work on Firefox/Safari/mobile.
Cable
A data USB cable + the CH340 driver if your OS needs it.

What you get

Home screen
Home & connect. Tap the status band to scan for Belle over BLE; New / Load / Editor / Run / Settings; battery (or USB) indicator.
Editor
Tap-to-build editor. Add / reorder / delete steps with big icons; songs & dances show friendly names, not raw indices.
Dance to Code recording
Dance to Code. Record, then wave/spin/bounce the wand โ€” live recognition turns your motion into editable dance steps.
Captured dance
Your dance โ†’ code. The captured routine lands in the editor as discrete, tweakable steps you can review and change.
Preset library
Preset library. The 10 original Hasbro dances (extracted from the app) plus BelleCoder originals โ€” each loads as an editable sequence.
Run screen
Run. Plays the sequence with a synced progress bar, showing the exact command bytes it streams to the doll.
Advanced palette
Two skill tiers. A Kid palette (Move / Arms / Spin / Dance) and an Advanced palette with the full instruction set + REPEAT loops.
Wand enclosure
The wand. A parametric 3D-printed handle enclosure with a rigid IMU mount, LiPo, and wrist strap โ€” the toybox artifact.

Then what?

It boots into the editor in SIMULATE mode, so you can build and run dances with no doll present โ€” every command is logged. Once Belle's BLE timing is tuned on a real doll, a one-line flag streams the real commands. The whole doll protocol was reverse-engineered from the original app; see the repo for the write-up.

Source, hardware guide & the reverse-engineering write-up: github.com/JamesDavid/BelleCoder ยท Interoperability project for a toy we own.