Download what I have so far on GitHub
Ah, yes. Disney’s Magic Band system… This was a game-changer when I went in 2014. I recieved the MB-R1G1 (MagicBand Revision 1, Generation 1) and it intrigued me as this was going to take care of all identification-driven aspects of a vacation at Wald Disney World. In 2013 the first Magic Band model was released. This was an all-in-one band with a strap system to fit any wrist.
The Magic Band system was originally developed for testing in a soundstage at Disney’s Hollywood Studios. It later was introduced to Bob Iger and John Lasseter and they loved the new system. The development area became a training simulation for cast members to educate them on the new system they would have to work with. Later on in 2016 the MB-R1G2 was released. It changed the Magic Band to a puck-based system. You still got a band, but it now had a puck that could be swapped into various accessories by the end-user.
While I don’t yet have my MB-R1G2, I found this model on Thingiverse to use as a template of the sizing of the new pucks. All of my modeling is based off of this design.
So, I wanted to do something special for my Magic Band. I’m an engineer, and I love making new things. I decided on a dynamic, location-based, lighting system to enchance the Disney experience. I have split up various sections of each park into geo-fences. Based on which fence my smartphone is in, the Magic Band will illuminate according the the area’s theme. As an example, If I am in Adventureland, my band will be lit with brown and green, or If I was near Cinderella’s castle, it would be light-blue and white. Some pre-defined areas have animations such as flashes, marquee, and breathing effects.
So, the trip was a blast, even though I wasn’t able to get the geofence code working. Turns out getting Bluetooth serial to run in the background as a service on Android is much more challenging than making a normal app. I just had the LEDs run thbough the full spectrum some days, and the location presets the others. I ended up turning the LED strip around and not using a shield around them to increase visability during daytime. (BTW: I did NOT have it running during the rides, I can’t STAND when people have extra lighting on rides. More on that here) As a watchband I used my old Pebble’s strap, superglued to the case (I was pressed for time).
I loved talking with cast memebers about this. The conversations usually spread from this, to the Disney College Program, and then to Internships and Walt disney Imagineering. Let me just say, WOW cast members are amazing. I had only wished I was better at remembering names. Here are the details I can remember of some. One of them in World Of Disney made me this nice “Future Imagineer” pin. I’ve never worn a pin so proudly in my life. A huge “Thank You!” to those cast members.
Future of the project
I still plan to work on this, but I’m at school now and I have a lot to do. So I guess we’ll see when I end up doing this. If you really want to see this get finished, let me know with the contact form at the bottom of the page.
What’s Already Finished
- Main “watchface” model
- Geofence layout
- Color Maps for geofences
- general communication plan
- Arduino Code for LatLong -> Geofence -> color
- NFC tests (To make sure the puck can get close enough to the sensor)
What Needs to be done
- Android Background Service for Bluetooth serial
- Android sending LatLong via Bluetooth serial
- power delivery and storage system
- “watch”band (ish)
I have an issue with the Bluetooth, as I am not a very experienced Android developer, and I’m unaware of how to get the Bluetooth connection stable while the phone’s screen is off. If anyone has an idea of how to do this, please let me know.