We’ve not made any changes this week!
Mia Han’s Status Report 4/4/20
What did you personally accomplish this week on the project?
I’ve been working on integrating my protocol with the GUI. I’ve ran into more issues that I was expecting; I feel that my issues have arose from forgetting small things in C and relearning a few concepts. Additionally, our team met a few days ago to discuss how we are going to approach integration and what unforeseen tasks need to be addressed. Ultimately, I’ve spent this past week refining my protocols and integrating it with the GUI; moreover, I’ve been helping my team understand the GUI and the plan for how it all should be integrated.
Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?
I feel that my progress is a bit behind; because of my rustiness with C and learning along the way with these algorithms, I underestimated slightly the difficulty of implementing these. These algorithms are a lot more complex to implement than understanding.
To catch up, I’ve committed spending the time now until the demo to integrate, test and debug our protocols. I feel that I can make a big push before things get too hectic with my other coursework next week, and now that we have a clearer vision for what we are planning to do, I feel that I can complete those tasks with more confidence.
What deliverables do you hope to complete in the next week?
I hope to:
- Refine the GUI
- Integrate the viterbi + convolutional codes and hamming codes implementation with the GUI
John Paul Harriman’s Status Report for 3/28/2020
I was able to start actually implementing our code!
I did a lot more research into what exact error correcting codes that we could use for our defined packet model. I’ve been going deep into this rabbit whole of which one is the best to use so hopefully next week I can start connecting the dots between all of them. I wrote the code for defined packet generation with a new model.
This model helps us gain easier access to verification by storing it in a struct because we now don’t have to pass all of our data through the specific wires and can focus on correction/detection and protocol handling.
Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?
I’m going to do my part now which is gathering all the different algorithms and hopefully link up with my teammates over the next week.
Deliverables for next week are the Reed Solomon algorithm and others for the defined packet length to be completed in C, but without the additional component interactions.
I kind of switched my paths halfway through so I’m going to keep these goals.
Mia Han’s Status Report 3/28/20
I accidentally deleted the content of this post
Team Update 3/28/20
These risks are being mitigated by setting times during the week that we will consistently meet at. This will force us to routinely regroup and will facilitate discussions that were previously delayed because of lack of planning.
The contingency plan is to get the GUI working + properly simulating the protocols and writing at least the convolutional codes + viterbi, UDP with windowing, reed solomon, and Turbo Codes. We realized that we should include a GUI regardless; therefore, we are prioritizing the creation and integration of the GUI over the addition of more protocols.
The change was necessary because we are no longer running our software on the drivers; since our project is now simulated, we had to redesign slightly modified transactions between the GUI and the protocols. Additionally, last week, we didn’t think that we needed a GUI to simulate and verify our protocols with; we thought test benches would be sufficient. However, after several discussions this week, we realized that we should bring the GUI back.
Statement Of Work
We believe that most of our original project can be maintained, since the crux of the project is software that will be loaded onto CubeRover’s modules. Since we can no longer simulate the protocols using physical components, we intend to simulate the protocols. Because the hardware aspect is no longer feasible, we plan on re-focusing our project to create, implement and test various error detection and correction algorithms to determine which methods best meet CubeRover’s specifications and hardware specifications. Creating these various error detection and correction protocols are the priority; a stretch goal would be creating the GUI to make our error detection and correction simulations more presentable.
Error Detecting and Correcting Algorithms that we will be creating and testing:
I2C + UART | GPIO + SPIO | Wifi |
|
|
1. TCP over UDP w/o windowing
2. TCP over UDP w/ windowing |
Currently, we’ve decided to start looking into and implementing Forward Error Correction Codes, LDPC Codes, and Turbo Codes; a reach goal is researching and implementing other error correction and detection methods.
Current State:
Right now, we are finished writing and verifying the correctness of the initial error correction and detection methods that we decided on implementing (reflected in our most recent Gantt Chart created before spring break). Our current implementations, however, are designed to send data to the microcontrollers; we will therefore spend a few days modifying our current implementations to be simulated and verified using test benches.
Old vs. New Phases:
Old Phases | New Phases |
|
|
We have updated our previous phase plans to reflect the changes that we have made to the project; instead of verifying the accuracy of the data being passed to and from the microcontroller, we will instead shift to writing more algorithms to determine which error detection and correction implementations best fit the requirements of the project.
New Tasks + Splitting New Tasks Between Team Members:
Previous Tasks | New Tasks |
Mia:
John Paul:
Sam:
All: Integration |
Mia:
John Paul:
Sam:
|
Sam Adam’s Status Report 3/21/2020
What did you personally accomplish this week on the project?
Over spring break, I worked on finishing up the wifi-UDP implementation. I also worked with my team to pivot the scope of our project in order to work on it remotely.
Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?
I believe that my progress is slightly behind due to the re-designing that we had to do to account for not being able to physically be together to implement the hardware components. However I do feel like the work I was able to get done over spring break puts me into a good spot considering the re scoping of the project.
What deliverables do you hope to complete in the next week?
I hope to finish the UDP/Wifi and write sufficient and thorough test benches to verify that I’m properly simulating the error detection and handling. This would free up my time to help out my teammates on the other communication protocols.
John Paul Harriman’s Status Report for 3/21/20
With the end of Spring Break moving into the transition into the remote classes, most of my work has been getting my life back together and also trying to make the transition with Capstone.
Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?
Deliverables for next week are the Reed Solomon algorithm and others for the defined packet length to be completed in C, but without the additional component interactions.
Team Update 3/21/2020
This is not a risk we really could’ve managed given the circumstances, but our suggested contingency plan is stated in the Statement of Work.
This change was necessary because of Covid-19 affecting the physical proximity of the teammates and recognizing the physical aspect of the project would only put physical strain on one teammate instead of the team.
Since we’ve already lost time redesigning our project, we realize that we need to immediately recognize whatever problems that may arise; because we’ve already lost so much time redesigning our project, we can’t afford to loose any more time running into issues or rethinking our current implementation decisions.
The biggest issues moving forward are not being together, making communication significantly harder amongst team members; additionally, some of us are in different time zones, making meetings harder to arrange. Thus, to mitigate these costs, we have set up weekly meeting times that work for all of us regardless. Additionally, we are clearly and frequently communicating to each other should any issues arise immediately.
Mia Han’s Status Report 3/21/2020
What did you personally accomplish this week on the project?
After hearing that we are no longer returning to campus and moving to virtual classes, I paused what I was working on, because I was uncertain where our project would be moving from there; I spent the remainder of spring break working on homework assignments that I knew would not be affected by moving virtually online. Once we regrouped on Wednesday as a team and with our professor + TA, I began shifting my focus from working on the convolutional codes + Viterbi to restructuring our project and new project proposal. We really liked the idea of comparing several FEC’s, turbo codes, and LDPC to determine which one best fits CubeRover’s hardware constraints. Therefore, I spent most of this week deciding which error detection and correction algorithms would be prioritized for GPIO/SPI and finishing up Viterbi + convolutional codes; I also researched the pro’s and con’s of those various algorithms more thoroughly.
Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule?
I believe our progress is definitely behind; already using this week to restructure our project, I believe that we are behind turning our project around and implementing a slightly different version of the project in the next seven weeks. Additionally, I didn’t accomplish as much work as I would like over spring break, putting me more behind than I was originally expecting; I spent more time brushing up on C/C++ and fully understanding the nuances of convolutional codes + Viterbi than I was originally expecting.
To catch up to project schedule, I believe that I will be able to spend more time on the project, since the quarantine in my town is stricter and there’s literally nothing else to do besides stay home. Additionally, I spent some time next week worrying about and cancelling future plans; therefore, I feel that getting into the school work grind will begin this week.
What deliverables do you hope to complete in the next week?
I hope to
- Finish and test convolutional codes + Viterbi implementation
- Fully understand and start writing the Turbo Codes implementation