Browsed by
Category: Melodee’s Status Report

Melodee’s Status Update for 5/2/20

Melodee’s Status Update for 5/2/20

Progress I unfortunately was not able to work on capstone as much as I would have liked this week, because I was really busy with two projects from other classes. What Eric and I managed to accomplish was fix the reflective sensor reading bug (pad readings didn’t always update between compilations) and refactor the firmware in an attempt to fix the communication bug. Refactoring improved the accuracy of our communication tremendously, but we still have an edge case that only…

Read More Read More

Melodee’s Status Update for 4/25/20

Melodee’s Status Update for 4/25/20

Progress Early this week, Eric and I debugged the firmware to the point that it was demoable for our Wednesday demo. There were still a few bugs we had to fix, however, that led to the compilation working correctly around 50% of the time (sometimes, tiles would report incorrect encodings, and other times, some tiles would be missing in the final topology). We spent the rest of the week trying to fix the bugs. We have yet to get the…

Read More Read More

Melodee’s Status Update for 4/18/20

Melodee’s Status Update for 4/18/20

Progress This week, I got the firmware to be code complete, but I wasn’t able to debug it yet because we didn’t have the tiles prepared. So, Eric and I spent the rest of the week cutting out pieces of the tile, drilling holes in them for the sensors, and gluing them together (see Eric’s status update for images). We are also in the process of soldering the PCBs. By Monday’s demo, we hope to have at least some aspect…

Read More Read More

Melodee’s Status Update for 4/11/20

Melodee’s Status Update for 4/11/20

Progress This week, I mostly worked with Eric to complete the C++ hardware interface. We ran into a few roadblocks while writing it, including limitations in the ATmega328p’s memory. However, as of today the interface is done and I can now move on to writing the firmware. Since writing the hardware interface wasn’t as great of a bottleneck as we had anticipated, we decided that I no longer needed to write the tile simulation. A significant contribution that I made…

Read More Read More

Melodee’s Status Update for 4/4/20

Melodee’s Status Update for 4/4/20

Progress I wrapped up my work with the Python version of the firmware in the beginning of the week. It can be found in the python_firmware directory of our repository. Eric and I then moved on to working in the C++ Arduino environment. We spent a day learning C++ (since we need to do more advanced things with it than what we’re used to). Then we began working on writing a C++ interface to the hardware to decouple the firmware…

Read More Read More

Melodee’s Status Update for 3/28/2020

Melodee’s Status Update for 3/28/2020

Progress I spent this week debugging the Python firmware, and now the program works with the following scenarios: One master tile and up to five slave tiles Handling two play button presses in a row (the second press will be queued up and handed after the first iteration completes) Handling multiple iterations in a row, with or without different tile configurations between the iterations I also fixed all the known race conditions in the code by doing the following: Instead…

Read More Read More

Melodee’s Status Update for 3/21/2020

Melodee’s Status Update for 3/21/2020

Progress After settling from the craziness of the COVID-19 updates, I basically redid all of the Python simulation code that I had previously written (since we had changed our protocol/implementation so much). I finally got the firmware to be code complete, and it currently works if there is one master and one slave tile in the system. I’m still in the process of debugging cases with multiple slave tiles. I also spent some time communicating with my team members, as…

Read More Read More

Melodee’s Status Update for 3/7/2020

Melodee’s Status Update for 3/7/2020

Progress Eric and I spent the first half of this week redesigning our communication protocol, since we decided to use interrupts and sleep mode in the microcontroller. We changed the structure of our message words and the state machine of the tile. Once we had this solidified, we basically had to start the Python simulator from scratch. We added interrupt and sleep mode functionalities. We also improved the simulator from the previous one by adding the construct of a master…

Read More Read More

Melodee’s Status Update for 2/29/2020

Melodee’s Status Update for 2/29/2020

Progress This week we realized that we needed to rethink a lot of our circuit and embedded design after our design presentation. Our tiles were drawing a lot of current, which would make our product not child-safe. Since child safety is one of our top technical requirements, Eric redesigned our circuit so that each tile is powered by its own set of batteries. These tiles would start out in sleep mode, and would wake up once it detects a side…

Read More Read More

Melodee’s Status Update for 2/22/2020

Melodee’s Status Update for 2/22/2020

Progress This week I continued working on the Python firmware logic. A few changes occurred with our protocol while I was writing it that slowed down my progress. We realized that technically tiles do not need a clock line. Originally, we planned that a tile’s top and left clocks would be driven by their top and left neighbors through two clock lines. Doing so would indicate to the tile when to read from the data line of its sides. But…

Read More Read More