This post is part of a series I am writing about my senior thesis project. Please check out the other parts of the series to learn even more about my project: Part 1, Part 2, Part 3, Part 4, and Part 5.
It was a very arduous process, but I finished making the first vest for my escape room. This was my first experience actually working with wearable devices so it involved a lot of trial and error. The components I used were a Particle Photon, a Photon Wearable Shield, Ruby Red and Emerald Green LED Sequins, a Piezo Buzzer, a switched JST connector, 3 ply conductive thread, regular thread, needles, jumper cables, a 1200 mAh Lipo Battery (with charger), a hot glue gun, wire strippers, and a soldering iron (with solder).
I started by sewing the Wearable Shield into the upper left pocket of the vest and the switched JST connector into the lower left pocket of the vest. I then attempted to connect them using the conductive thread, but the distance between them was too long and not enough power could get from the battery attached to the JST connector to the Wearable Shield. So, after ripping out all the conductive thread from my first failed attempt, I decided to cut the ends off of some jumper cables and use them to connect the JST connector to the wearable shield. I soldered the wires to the JST connector, wove them up the inside of the vest, and then soldered the other ends to the Wearable Shield. I held the Wearable Shield in place with regular thread and used hot glue to secure the JST connector (I sewed the Wearable Shield in upside down so the VIN and ground connectors I needed would be closer to the JST connector).
After I had a reliable power source setup, it was time to sew in the LED Sequins and Piezo Buzzer. I did this by sewing the ground connectors on all of the components together with the conductive thread and connecting them to the ground connector on the Wearable Shield. I then connected the positive ends of the LED sequins to D5 and D6, and connected the other end of the Piezo Buzzer to A4 (one of the pins that supports the tone() function).
The vest is currently set up so that the green LED is illuminated while the player's health is above 25%. When the player's health drops below 25% the green LED turns off and the red LED and buzzer turn on. The Particle code includes a Particle Variable for the health that can be accessed by the Node server I created. The server gets the player's health once every second and stores it in a Firebase database. The web app is set up to allow the player to input their name and vest number. Once they do this, a health bar displays the health associated with their vest from the Firebase database. The health bar is green if the player's health is above 50%, yellow if it's below 50% and greater than 25%, and red if it's below 25%. There is also a faux EKG, but that's not working yet (I decided not to use the pulse sensor because I was having trouble interpreting the data from it and it was not comfortable enough for long term use). The styling of the web app is also not final and I still have to add more features unrelated to the vest (such as a heal feature and hint system). Additionally, I have to add on to the server to accommodate for the other four vests when I finish them. Here is the code for anyone who wants to see how I programmed the back-end of my vest system. I removed all personal info from the code such as API keys, auth tokens, and Firebase URLs.
Overall, I am very happy with how the vest came out. The process was extremely time consuming and at times painful (thanks to the sharp needle), but it was worthwhile. I now have a system in place that will allow me to create the rest of the vests in a more timely fashion. The vests will be a nice touch for the final room and provide for a unique experience that most escape rooms don't offer.