Weekly Status Reports

Team Status Report for 3/26

Team Status Report for 3/26

This week, there weren’t any major design changes made. The only change we made was to use the accelerometer off the Arduino Nano directly instead of getting a separate module. Vivian was successfully able to print out the degree change from the horizontal using the 

Vivian’s Status Report for 3/26

Vivian’s Status Report for 3/26

This week, the first thing I accomplished was successfully testing the gyroscope on the Arduino Nano BLE. I found out that it’s actually best for us to use the accelerometer instead of gyroscope for the degree difference from the horizontal, and I was able to 

Angel’s Status Report for 3/26

Angel’s Status Report for 3/26

This week I worked on sending dummy data and then sending fingerings from buttons over Bluetooth from the Arduino Nano BLE to the Raspberry Pi. I was able to write code on the Nano to create characteristics for the fingering, and then update the value in it with the bit mapping created from all 9 buttons. The code on the Python reads this data over BLE and displays the bit vector when the values change. I tried enabling the notification functionality but was unable to, so the Python program uses polling. I played around with different latencies, and found out that using delay() in the Arduino library wastes cycles, so I switched to setting the latency between sending new data with the millis() function instead, and checking the intervals of time with if statements. Right now the Arduino is set to send data ever 20 ms. I have not recorded the latency between the Arduino and Pi, but it is much less than half a second. I estimate it is around 100 milliseconds but I will have to time this. I am now much more confident that we will be below our latency goals for feedback.

           

I also started working with Sonic Pi, as we plan to use it to play the notes the user is playing (when they blow and have a valid fingering). I downloaded some flute samples that Robin Newmann uploaded specifically for working with Sonic Pi.I also downloaded and used his associated code that manipulates the samples to represent a range of notes, tempos, and pans in a way that is more user friendly. I had to modify it slightly to get to run, but I was able to play the notes that we plan to play with our device. Additionally, I started working with the live_loop functionality in Sonic Pi, which allows you to modify what is being played in real time. I was also able to use OSC to send commands from a python program to Sonic Pi. Combining these functionalities will allow me to control the notes being played from the python code that receives the fingering and breath data.

Next week, I hope to combine the sending of fingering data from buttons to the Pi and the subsequent playing of the note in Sonic Pi. I will also start working with Vivian to create the Flute Controller and send over the gyroscope data. I am still on schedule due to the amount of things I was able to do this week once I got the Bluetooth connection finally working. I will have to start thinking about how to set the note duration since it will be as close to real time as latency allows.

Angel’s Status Report for 3/19

Angel’s Status Report for 3/19

Before spring break, I spent most of my time working on the design report. I also ordered an Arduino Nano BLE 33 since I found out that the Bluetooth HM10 Module that I ordered did not work like I thought it did. After spring break, 

Vivian’s Status Report for 3/19

Vivian’s Status Report for 3/19

The week before spring break I spent most of my time working on the design report. This past week, the main thing I accomplished was creating a prototype for our breath control sensor. I connected the LED across from the photodiode, and mounted both sensors 

Judenique’s Status Report for 3/19

Judenique’s Status Report for 3/19

For the week of 2/27, our team had the design report due. My tasks for the design report were to detail the user interface sections and software implementation. Additionally, I worked with my teammates to finalize the communication based on the feedback we received from the presentation. Otherwise, I was working on implementing Django for the web application. I set up a local repository a while ago but finally created the remote repository in git so my teammates can view my work. This past week, I continued to make progress on the web application and finished the layout of all pre-log-in pages (see image below). There is some dummy data on the pages that will be changed later. I also have started drafts of the fingering chart display which I hope to finish next week.

I am currently behind schedule since I adjusted the dates of the Django implementation before spring break. Our team had plans to integrate next week but ended up pushing back since we are not quite there yet. To make up for the setback in my schedule, I will need to complete the fingering charts and at least two of the modes (learn, play, resources, and test) by the end of next week.

Team Status Report for 3/19

Team Status Report for 3/19

The week before spring break, we finished our design review report based on our feedback from our design presentation. We broke down the requirements of the design report, designated it to each group member, and assembled it throughout the week in team meetings. Following spring 

Angel’s Status Report for 2/26

Angel’s Status Report for 2/26

This week very frustrating when it came to working on my specific part of the project: Communication between the Arduino Nano and the Raspberry Pi. After working with the HC05 Bluetooth module more, and being unable to get to it to connect to the Pi, 

Judenique’s Status Report for 2/26

Judenique’s Status Report for 2/26

This week concluded our last presentation for a while, which was our design presentation. We are now in the process of writing our design report and splitting that work accordingly. I got to complete most of the tasks I stated last week. I set up the initial website with the Django framework last week and continued working on the layout with a mockup of how it should look. This design is subject to change, but currently, there are 4 modes of the website: free play, learning, testing, and a scale book. Additionally, a section where users can see their past test results and typical user data like passwords. 

I am currently on schedule, however, I lengthed the task for implementing the Django MVC. This task will take a lot more time, but I can work concurrently on it while completing my other tasks. I also got started with designing the fingering chart and looking into resources that we want to display. I am aiming to finish that next week as well as set up the Apache server.

Team Status Report for 2/26

Team Status Report for 2/26

This week’s work consisted of completing and sharing our design presentation. We discussed the feedback we received from our classmates during the presentation such as the feel of buttons. We also started planning and dividing up the work for the written design review. We haven’t