ruthsarian / Droid-Toolbox

An ESP32-based project to scan for and emit BLE beacons for Droids from Galaxy's Edge.
MIT License
41 stars 12 forks source link

Droid Toolbox - v0.71

This is an Arduino IDE sketch for ESP32-based devices to interact with Galaxy's Edge droids. It can emit a bluetooth beacon that droids will react to, scan for nearby droids, and connect to droids and command them to play specific audio tracks from their personality chip. A YouTube video of the Droid Toolbox in action is available at https://www.youtube.com/watch?v=0sHTIEbTevk.

This code was specifically designed for LILYGO TTGO T-Display and LILYGO T-Display-S3 devices and may not display correctly on other ESP32 devices without modification.

Use at your own risk.

Features

Setup and Installation

Video Tutorials

Resources

Button Labeling / TTGO Orientation

Image of a TTGO with the Droid Toolbox splash screen. It says "Droid Toolbox. Press any key to continue."

Operation

Image of a TTGO with the Droid Toolbox splash screen in an Aurebesh font.

Image of a TTGO with the menu screen showing SCANNER band BEACON options.

Button Press Types

Beacons

Image of a TTGO showing a 'select beacon type' menu on the display.

Image of a TTGO showing a 'select a beacon' menu on the display.

Image of a TTGO showing a 'set beacon interval' option on the display.'

Image of a TTGO showing a 'select a beacon' menu on the display.

Image of a TTGO showing a 'select a beacon' menu on the display.

Scanning

Image of a TTGO with the text 'SCANNING' across the screen. Image of a TTGO showing a list of nearby droids including their bluetooth address, their affiliation, and personality chip.

Connected

Image of a TTGO showing SOUNDS and VOLUME menu options with the SOUNDS option highlighted.

Playing Sounds

Image of a TTGO showing TRACK and GROUP selections and a PLAY button.

Volume Control

Image of a TTGO showing TRACK and GROUP selections and a PLAY button.

Auto Shut-Off

Droid-toolbox will go to sleep after 5 minutes of inactivity. It will not sleep if a beacon is active. To restart the droid toolbox press the reset button.

T-Display-S3 Supported

Image of a LilyGo T-Display-S3, inside a LilyGo T-Display-S3 case, running Droid Toolbox= The LilyGo T-Display-S3 is like the LilyGo TTGO T-Display, but with a larger screen and more program space. The Droid Toolbox code will work with either a T-Display or T-Display-S3 without the need to modify any of the code.

About Audio Tracks

Galaxy's Edge droids have personality chips. Droids come with a built-in personality chip, but can be modified by plugging in an extra personality chip which overrides the internal personality chip. The personality chip is a collection of audio clips which play when a droid reacts to location beacons, nearby droids, or button presses on the droid's remote control. The audio clips are divided into 12 separate groups. The first 7 groups represent 7 areas within Galaxy's Edge and are what plays when a droid reacts to a beacon. Group 8 through 12 contain special audio clips used with droid accessories (for R-units) and special circumstances, such as when a droid is first activated inside Droid Depot.

Droid Toolbox allows you to select between the 12 groups and select an audio track within that group. The number of audio clips for a given group can vary between personality chips. While we know how many clips there are for stock personality chips, custom personality chips could have as many audio clips as you want. As such you'll be able to select up to audio track 99, even though the number of tracks typically doesn't go beyond 6. If you try to play an audio track number that doesn't exist the droid will simply do nothing.

Audio Groups and Their Uses

Group Purpose
1 Location: Market Area
2 Location: Droid Depot
3 Location: Resistance Area
4 Location: Unknown *
5 Location: Alert **
6 Location: Dok-Ondar's Den of Antiquities
7 Location: First Order Area
8 Droid Activation
9 Unused R-unit Accessory
10 Unused and Empty
11 Blaster R-Unit Accessory
12 Thruster R-Unit Accessory

* No location beacon for this value has been seen inside Galaxy's Edge

** Seen at the entrance to Oga's Cantina; possibly the droid detectors? Also seen near Ronto Roasters and the area between Droid Depot and First Order.

References