Using the Beacon Ears
The Beacon Ears system is two boards working together. The headband ears listen passively for Disney BLE adverts at home or in the parks. The CLUE remote sends commands to the ears and to nearby MagicBands, wands, and Fab 50 statues - or scoops up packets in Listen Mode for reverse-engineering new park show codes.
Quick Reference - Beacon Ears (QT Py)
- BOOT single-press: cycle brightness (3 levels)
- BOOT double-press (Solo Mode only): skip to next showpiece
- BOOT triple-press: toggle Solo Mode on or off
- BOOT long-press (0.5s): show battery level
Boot Up
Plug a LiPo battery into the JST connector on each board, or run them off USB. The Beacon Ears blink briefly through their idle frame and start listening immediately.
Brightness Levels
Short-press the BOOT button on the QT Py to cycle through three brightness presets: dim, medium, bright. Each press shows a quick confirmation flash on the outer rings - one lit pixel for dim, two for medium, three for bright. The current preset persists until you press again or until the next reset.
Battery Level
Long-press the BOOT button on the QT Py for half a second to show the current battery level. On USB power, both Jewels animate a swirling fill: a leading-edge pixel sweeps around the outer ring, leaving lit pixels behind it equal to the battery level. Five lit pixels means full, one means nearly empty. The animation holds with a gentle pulse, then fades to black.
On battery power, the same long-press shows a brief yellow center pulse instead. WS2812 LED timing is unreliable when the battery is sagging under animation current draw - the yellow pulse signals "plug in to USB to check level reliably" and saves the user from misreading a corrupted color.
Solo Mode
Triple-press the BOOT button to enter Solo Mode. The ears flash a brief white burst, then start cycling through a curated reel of showpiece animations. The reel mixes synthesized highlights with real packets captured from Epcot's stage lighting - five-color rainbow rotations, dual-color combos, deep "Disney blue" 6-bit RGB, plus a handful of decoded park show captures.
Double-press BOOT during Solo Mode to skip the current showpiece and pick a new random one. Triple-press again to exit Solo Mode - the ears flash a cool blue pulse and return to listening.
A real Disney BLE packet preempts Solo Mode cleanly. If you walk past a Fab 50 statue or another guest's MagicBand fires while you're in Solo Mode, the ears interrupt the showpiece, render the park animation, then resume Solo cycling on the next pick. You don't have to manage modes manually for park interaction to work.
Quick Reference - CLUE Remote
- A single-press: scroll up in list view
- A double-press: select / fire
- A triple-press: toggle silent mode
- B single-press: scroll down in list view
- B double-press: open category / back to grid
- B long-press (0.6s): cancel / send Off command
- A and B held together (0.8s): light sleep
- Shake: fire a random command (with confirm prompt)
Boot Up
The CLUE shows the four-tile category grid: Colors, Show FX, Fades, Animate. The grid is the home view - everything starts here.
The CLUE Display Grid
The grid view is the home screen. Four tiles - Colors, Show FX, Fades, Animate - cover the catalog of every command the remote can broadcast. The currently selected tile pulses magenta. Press A once to move the highlight forward, B once to move backward.
Double-press A to open the highlighted category. The display switches to a scrollable list view of every command in that category. Double-press B to go back to the grid.
The CLUE Display List
The list view shows commands one per row at scale 2 if they fit, scale 1 if longer. The selected row is highlighted with a leading caret and magenta text. Press A or B once to scroll up or down. Press A twice to fire the selected command.
Some command names end with an asterisk - these trigger the band's haptic vibration motor and announce a brief buzz on the wearer's wrist. The asterisk is a heads-up to the remote operator that the command will physically vibrate any band that latches it.
Long-press B to broadcast the Off command and cancel any latched animation. Off has no pre-ping so the cancellation is immediate.
Shake to Fire
The CLUE's onboard accelerometer detects a sharp shake and pops up a confirmation modal with a random command picked from the catalog. Double-press A to fire, B to cancel and return to the previous view. The shake threshold is calibrated for a deliberate motion - a normal walking pace won't trigger it, but a sharp wrist flick will.
Find Me
Send the Find Me command from the CLUE to start a 30-second high-visibility beacon animation on the ears. The phases are a strobe at 5 Hz alternating white with rainbow colors, a rainbow chase rotating around each Jewel, and a slow rainbow breathing pulse. Brightness is forced to maximum for the duration regardless of the current preset, then restored when the animation ends. We think this works well for spotting a stroller, scooter, or wheelchair across a crowded parking lot.
Display Sleep
The CLUE's TFT backlight auto-sleeps after 30 seconds of no button activity. Any button press wakes it instantly. The display sleep is the largest power saver on the CLUE - the backlight pulls 25 to 35 mA when on, dropping to near-zero when off.
Light Sleep
Hold A and B together on the CLUE for 0.8 seconds to enter light sleep. The TFT backlight turns off, the speaker silences, and the BLE radio shuts down. Press either button to wake. Light sleep preserves Python state, so the selected category, silent mode, and any other settings persist through the sleep cycle.
Statue Preview
Send the Statue command from the CLUE to fire the same golden swirl animation the ears play when they detect a real Fab 50 statue beacon. This is a four-second swirl with two breathing pulse beats and white sparkles tinted gold. Useful for video shoots, demos, or just enjoying the surprise without hunting down a statue.
Silent Mode
Triple-press the A button on the CLUE to toggle silent mode. With silent mode on, the chime that plays after every command fire is suppressed - the ears still react to broadcasts, just without the audible feedback from the remote. Useful in quiet spaces or when filming.
Listen Mode
Listen Mode is a sentinel command in the Show FX category. Selecting it switches the CLUE from broadcasting to BLE scanning. The capture view shows the elapsed seconds, the count of unique payloads seen, and the total payload count. Every unique Disney-CID packet within the receive window gets logged with a first-seen timestamp, count, and last RSSI.
Long-press B to stop the capture. If the CIRCUITPY drive is mounted Python-writable, the captures save to /captures/listen_NNN.txt - tap B once more to dismiss the save confirmation. If the drive is host-mounted (the default when USB is connected), the CLUE sets a flag in non-volatile memory and asks for a reset to switch into capture mode for the next boot.
To switch back to dev mode after capturing, open the serial REPL and run import os; os.remove("/capture_mode.txt"), then reset the CLUE. The drive returns to host-writable so you can drag-drop new code onto it.
Page last edited May 12, 2026
Text editor powered by tinymce.