Team Status Report for 2/8

What are the most significant risks that could jeopardize the success of the project? How are these risks being managed? What contingency plans are ready?

The most significant risk we are currently faced with is making the wrong choices in our early design stages. To manage this risk, we have each spent the week researching the tradeoffs of the design choices we each need to make in our portions of the project. For the larger technical challenges of our project we plan to test our proposed solutions to them early in case they do not work out the way we expected. Our primary contingency plan consists of having planned out alternatives ahead of time in the case of a fall-through with our current design.

Were any changes made to the existing design of the system (requirements, block diagram, system spec, etc)? Why was this change necessary, what costs does the change incur, and how will these costs be mitigated going forward?

The main change made to our existing design was the connections between all of the components. Originally, we planned to have the microphone send motion and audio data to the computer while also sending the audio data straight to the speaker. We decided this would be an awkward wiring system for the user and instead opted to send everything through the computer, especially as our original design included some filtering of the microphone signal which we deemed unnecessary after research. We also previously planned on using a hardware filter to separate the vocal from the backing track in the speaker but decided this would be more achievable using software.

Aleks’ Status Report 2/8

This weekend, I prepared to present our project proposal presentation. During the week, I looked more deeply into Spotify API to analyze exact functionalities that would be useful and make sure all of our use cases for their data followed their usage guidelines. I found some interesting audio analysis features that are notated as deprecated, but I want to do more research into. I also set up our GitHub repository and initialized the Django Webapp so I can do some work through Spotify’s tutorials next week to make sure we can load the music appropriately. I also did some review and practice coding web applications to brush up on my skills. Additionally, I met with my team to brainstorm through some of our system design decisions based off of presentation feedback. Next week, I plan to dig into our design decisions next week to determine our best design plans. I will ensure Spotify works for our use cases and look into best methods for procuring our lyrics, especially using a potential fix that a student in our section (Maya Doshi) told us could be useful.

Kiera’s Status Report for 2/8

What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week.

This week I researched the logistics surrounding the motion tracking portion of the project to prepare for our design presentation. The main questions I looked into answering were “What board would be best fit for connecting the accelerometer to?” and “How can we use the accelerometer data to detect change in direction?”. Considering our design goal of keeping the product lightweight and portable, and since we don’t require a large amount of processing power on the hardware end (a majority of our computation will occur in the software), I found that a microcontroller (likely an arduino) would be the best choice for our design. With this taken into consideration I searched for existing arduino projects that used an accelerometer in a way similar to how we intend to and found that the MPU6050 sensor is a good fit for our needs. The MPU6050 gives acceleration (x, y, z) and angular velocity data (x, y, z). Changes in sign of any of the components could be used to indicate a change of direction of the user but I plan to continue to look into other algorithms to give more accurate results.

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?

My progress is on schedule, as I have done enough research to make the design choices in my portion of the project that are necessary for us to move forward. 

What deliverables do you hope to complete in the next week?

In the next week I hope to have developed a diagram of the motion-tracking/microphone system, including specific components, the connections between them, and the system’s connection to the computer. Additionally, I plan to do more research on algorithms that use both the acceleration and angular velocity metrics to detect change of direction, or potentially other indicators that the user is moving to a beat. 

Hugo Weekly Journal 2/8/25

The beginning of the week I was tasked with fleshing out our testing plans. Our original abstract had the fundamental ideas but was missing detailed explanations of how we intended to accomplish this and so I created more thorough details on our plans. After our design presentation, I moved on to researching methods for how we could extract and analyze the singer’s pitch. I started with design work, making final decisions about how we would connect our microphone to both our computer and our speaker and decided that it would route directly to the computer as opposed to our original plan of through the speaker. Then I looked into python libraries for pitch detection, first looking at librosa which is a commonly used one by some of our classmates, but decided to start with aubio. Aubio’s main selling point for us is a method that can do pitch detection from streaming data which is a stretch goal for our project.

My progress is mostly on schedule, as my first tasks are all related to microphone audio processing and so having found the necessary libraries and planning out the design was a very good start. However, I want to start testing the software as soon as possible and so next week I will ensure that on top of my planned research I create a proof of concept for this process.