Team Status Report for 4/25/2026

Currently, the only significant risk that could jeopardize the success of our project is just not doing the final assignments. To mitigate these risks, we are starting working on these assignments days early and with a clear focus on our project. In terms of making changes to the existing design of the system, we have continued with our current system and are in testing phase. This week, we have been focused on completing our testing phase and then started to work on final assignments.

Here are the specific unit test and overall system tests carried out on our system:
1. Computer Vision Detection Unit Tests: We tested our YOLO-based pothole detection model using different sample road images and videos. These tests ensured we are able to accurately detect potholes and assign severity on them against our own labeled data sets. We learned that our model performs better when the potholes are clearly visible and centered in our frame but confidence levels dropped when the lighting/texture was off.

2. GPS Metadata Parsing Tests: We solo tested the GPS data from both the Raspberry Pi and Notecard pipeline such that it was able to correctly attach GPS latitude and longitude to each pothole detection. What we learned is that GPS detection is a more fragile part of our system. When we tried testing inside, the module could not detect any location and then once we moved outside it was finally able to see a satellite and send coordinates.

3. Backend API Unit Tests: We tested the backend endpoints responsible for receiving pothole detection data and writing to Firestore. These tests checked whether the API correctly handled different types of requests. These tests were mainly for error handling. We learned that the backend needed strong validation because the edge device and cloud upload system may sometimes send incomplete or inconsistent data.

4. Scalability Tests: In order to test scalability for our Firebase DB, we utilized their built-in Firebase Local Emulator Suite to run 1000+ tests for simultaneous requests. What we found is that our Firebase DB can handle 9000 requests in around 2 minutes with a 100% success rate. The average duration for the Cloud Function upload was 236.87 ms.

5. Frontend Map Display Unit Tests: We tested whether pothole data retrieved from Firestore appeared correctly on the user-facing map. These tests checked that each pothole marker was placed at the correct GPS location and displayed the correct severity. We learned that the frontend needed to handle empty or incomplete data gracefully instead of assuming every pothole record was valid.

6. Overall System Testing: After unit testing each individual component, we did end-to-end field testing by taking a user and allowing them to drive around Pittsburgh and we found that the core pipeline worked. The computer vision model could detect potholes and then send all metadata to Firebase to be visualized on the frontend.

Kevin’s Status Report for 4/25/2026

This week, we focused on unit testing and user testing our product against different test cases. I contributed to unit testing our web app and how it performs against scaled data inputs. I had to determine how our web app would be able to handle the scale of the number of potholes in Pittsburgh. I also contributed in field user testing our product. We needed to find out from different users how hard it would be to set up our product and then determine how minimalistic invasive to the user’s driving experience. This progress is on track with what we scheduled. In the next week, I hope to help wrap up all of the final tasks needed for this class including the final poster, demo, and report.

Kevin’s Status Report for 4/18/2026

This week, I continued to work on the GPS transponder and debugging the hardware connections. We initially got it to work when connected to the RPi, but we needed to have it connect to the Notehub that is on top of the RPi. I did further web app for the entire pipeline by doing field tests with our dashcam and seeing if it shows up in our DB and our web app. I am also working with the team to complete the final presentation slides/information. The progress is on schedule and we are currently in the final phase of our project. In the next week, we hope to finalize the box of our dashcam and then start working on final demo materials.

Some new tools that I got familiar with was Google Firebase, Google Cloud Run Functions, Notecard, RPi, and GPS transponders. Some new knowledge that I have learned implementing this product is to check official documentation of hardware since that was the main point of challenge for me. The learning strategy that I gained doing this project is to learn while implementing. This allowed me to learn what I did wrong and what I needed to fix to do it right.

Kevin’s Status Report for 4/4/2026

This week, I started testing our web app with different data points. I also helped with integrating the GSP transponder onto our hardware RPi. We also started to test our hardware in real life to see how our hardware performs under different conditions. In the next week, I hope to finalize the entire software flow after testing and then continue to work to finalize the hardware and then field/user testing. This is on schedule with our proposal.

In terms of testing, I worked on the software web app portion of our application and how I envisioned to test this was to input a lot of dummy data and see how my web app manages scale. Further on, once our full pipeline is robust enough I will want to see that the data extracted matches the field data we have gathered. This data can also be cross referenced with manual in-real-life comparison.

Kevin’s Status Report for 3/28/2026

This week, I worked on implementing/fixing the hardware to software upload pipeline. Additionally, I also deployed our web app on Firebase Hosting which can be accessed at this link here: https://potspot-487603.web.app/

Currently, the entire hardware to software to web app pipeline is working where we are capturing on the hardware and then sending the information via the Notecard by triggering a cloud function that would receive this information and then the web app would display this information. On the web app, I also added a light/dark mode where users can select their preferences. My tasks are currently on schedule with what we outlined and I am continuing testing on software with a main focus on hardware.

Team Status Report for 3/21/2026

As said in last week’s team status report, the most significant risk for our project right now is still the hardware. This risk is being mitigated as we are all working together to ensure the transition from software onto hardware is smooth. The contingency plan is to take more time on the hardware than the software right now. We are hoping to get the hardware components up and running so we can run preliminary testing. There hasn’t been any changes to the current design of the system. There also has been no changes to our schedule as well.

Kevin’s Status Report for 3/21/2026

This week, I updated bugs related to our frontend. I had a bug on the update implementation not updating on our Firebase Firestore data points. In order to fix this, I realized I had to create a new cloud function that runs when the “update” button gets pressed on the frontend. Additionally, I am still working on fixing a bug in our maps visualization implementation to accurately pin datapoints onto our map. I also did some more testing with different data points to see how our front end would react. This is on schedule with the timeline outlined in our design proposal. In the next week, I hope to start doing more testing and then finalizing the front end fully.

Kevin’s Status Report for 3/14/2026

This week, I have updated the initial front end UI/UX from last week to have a more vibrant experience. Furthermore, I fixed some bugs related to retrieving data from our Firestore since updating the front end. The maps API functionality is still work in progress but I have made progress in displaying a map on our UI. This is on schedule with the schedule outlined in our design proposal. In the next week, I hope to continue to polish the front end as well as test some portions of the software and hardware.

Kevin’s Status Report for 3/7/2026

This week I finished initial implementation for our web app. I was able to hook up the front end with our backend (Firebase) and ran some preliminary tests to see some data points. It is able to see the dummy data that we have put into our DB. Additionally, I am still working on the maps API functionality to visualize the pothole detection. My progress right now is on time and aligns with what we outlined in our design proposal. In the next week, I hope to polish up the front end UI/UX and then start implementing our GPS transponder part of the pipeline.

Team Status Report 2/21/2026

The most significant risks that could jeopardize the success of our project right now is falling behind. The contingency plan for this risk is to make sure we hold each other accountable on our scheduled tasks. This week, we made some changes to our hardware component of the NVIDIA Jetson. After further research, we found that due to the power constraints, we found that the Raspberry Pi board to be more suitable for our project. There was no inherent cost of changing this component as all we had to do was request a new part with the staff. No updates to the schedule have occurred.