Zoe’s Status Report – 3/23/24

This week, we have been working to prepare for the interim demo. I worked with Jada to research how to set up audio and Bluetooth for the lock. We had not decided yet whether to use a Seeed microcontroller or an Arduino Uno R3 for the lock, so I looked into software options that would work for both architectures. The best way to store and play audio clips seems to be storing .wav files (generated online using a program like Audacity) to an SD card and then playing the songs using a built in module. Once we have the SD card ordered, we will be able to test the code we have for playing our songs. For Bluetooth, we had a similar problem in that how we implement it will depend on whether or not we use the Seeed microcontroller. If we do, then BLE is built into the Seeed microcontrollers and their website provides documentation for how to implement both client and server protocols. If we use an Arduino, we will have to buy and implement its own Bluetooth module to connect to the board. I spent a lot of time learning about BLE on the Seeed microcontroller, because regardless of whether we use it for the lock, we are using it for the mat, and it needs to act as a client and server in the mat.

Another thing I worked on this week was the correctness algorithm (how to determine if the input should be marked as correct). In my current algorithm, I model each correct dance move with a corresponding Gaussian curve, and performing the step before or after the required time provides ‘points’ according to the y-value of the curve. A specific percentage of total points must be achieved in order for the dance to be considered correct. In addition, if one move is outright incorrect or very badly timed (+ or – 3 seconds), the dance is considered incorrect.

Lastly, I have revisited my app with the hope of making the BLE connection work. To do this, I found an old Android phone (Galaxy Note 5) that I have and ordered a charging cable for it, because it was dead. Now that I have a working Android phone, I should be able to develop my app directly on the phone and avoid the problems that I had with iOS.

I might be slightly behind schedule, because I had to spend a lot of my week preparing for the Greek Sing musical I was a part of. However, that is done, so next week I should be able to finish a lot of the work that I started this week.

Since we have a week until the interim demo, I am going to focus on wrapping up everything to make the demo successful. This would ideally include 1) making BLE work for the app, mat, and lock, 2) getting audio set up, and 3) making sure we can get input from the foot pads, decide whether or not the dance is correct, and relay the information to the lock. At this point, we have started everything we need for the demo, we just need to make some decisions and wrap up some loose ends.

Leave a Reply

Your email address will not be published. Required fields are marked *