Sarah’s Status Report for 4/19/25

This week, I continued the integration of the hardware LED logic into our backend. I also worked on refining our front end and adding additional features, such as a shopping list for the user and expired items page to detect often expired categories of food.

I also worked on trying to integrate the built-in phone NFC scanner feature into our app as we got approved for the apple developer account. The code and interface is set up but the functionality is not fully operational.

We are currently on schedule.

In the next week, I hope to finish up the integration of the NFC phone scanner and finish the full logic for the entirely built pad. I also hope to begin working on our final video and poster.

As I have designed and implemented the software portion of our project, I have learned a lot about building an app from the ground up. I have also learned a lot about the integration of hardware and software, and how communication protocols work to communicate between them. My main source of learning was many YouTube videos to learn the basics, especially when I needed to learn how to set up environments and dependencies for our specific app. Once I learned the basics, reading documentation on specific frameworks also helped me a lot.

Sarah’s Status Report for 4/12/25

This week, I worked a lot on the integration of the physical LED lights into our software. After my teammates soldered the test LED strip to the circuit, I worked on the backend API code that would communicate with the ESP32 to ensure that logically, the correct color would be displayed.

I was able to integrate the correct functionality for ZONE01, and look to extend the functionality logic to all 4 zones.

We are currently on progress as the core software functions of our project have been mostly finished and I am attempting to add on additional features.

In the next week, I hope to extend the logic of LED color display to all 4 zones and test that it works. I will have to adjust the ESP32 code to change the MQTT subscription topics, along with a few logic details. I also hope to begin the integration of the temperature and humidity sensors.

While testing the software subsystem of our project, I verified that the operation works as expected. For example, the core functionality of adding a product works. The user can scan an NFC tag and customize the name and expiration date of it, which will then update the database accurately. In addition, the expiration decay of the item is accurately reflected in the colors on the user interface and LED lights.

In regards to latency, all updates and features fit the time frame in our design reports to make the user flow as seamless as possible.

Sarah’s Status Report for 3/29/25

This week I worked a lot more on the user flow of our project and the design of how we wanted to have users add an item and place them on the mat. I integrated having multiple scanners on the hardware into the backend so that any of them can be used to scan an NFC tag. I also adjusted the frontend of our code so that instead of having different ‘pads’, there are different ‘zones’ on a singular pad. I also implemented a notifications page and am working on real-time notifications.

Our progress is currently on schedule and I look to flesh out the front end and have pad sensor processing integration be more clear.

In the next week, I hope to have a successful demo and learn what can be improved about our project. I also want to implement real time notifications for when an item expires.

Sarah’s Status Report for 3/22/25

This week, I worked a lot on the integration between software and hardware. My teammates set up the NFC scanner on the hardware and passed along the circuit to me so I could try to connect it to the software. I was able to get the communication between the esp32 and our backend API to work through wifi, along with the NFC scanner.

This allowed us to scan an NFC tag and add the item on our front end into the firebase database.

I also worked on ethics in lecture and learned a lot more about the intricacies of it.

Our progress is currently on track.

In the next week, I hope to refine the user interface of adding an item to make it as seamless as possible. I also want to get push notification working for alerts when an item is expiring.

Sarah’s Status Report for 3/15/25

This week, I focused a lot on the software backend logic and getting the skeleton set up for that. I was able to set up fastAPI and incorporate the logic we needed to communicate with the esp32 microcontroller so that integration can begin next week. I also developed a test script to ensure it was working properly so that we were able to fill our firebase database with dummy data.

Once the database had enough data with the proper fields we wanted in it, I started working more on the frontend and connecting our React Native app with firebase to display the items in the database.

The progress is currently on schedule.

In the next week, I hope to start integration with the hardware so that data from the esp32 microcontroller works with fastAPI in order to populate the database, and fastAPI can notify the esp32 when to change the LED colors.

Sarah’s Status Report for 3/8/25

This week, I put a lot of time and effort into the design report. I completed the software portions of the report and system design diagrams. Throughout the report, I went into depth on the exact frameworks we would be using and what their purposes would be. In addition, a lot of research was done on how to integrate the software with the hardware features, particularly the NFC scanning. Finally, the developer tools were set up for React Native and the app was connected to Firebase with a project created in order to set up the database.

Our progress is currently on schedule.

In the next week, I hope to finish up most of the basic skeleton frames and pages for the frontend. I also want to start basic functionality implementation, particularly in regards with the integration between the hardware pad and software database.

Sarah’s Status Report for 2/22/25

This week, I worked a lot on finishing up the design of our project and learning the details of the hardware, software, and integration between them. I gave the presentation for our design proposal so I needed to prepare heavily by practicing the presentation and learning the in’s and out’s of the project design in order to answer questions that people might have.

I also started setting up the frameworks and software needed for the backend and web app of our project. I set up the database tables and what information we need to store using Supa Base (open source version of Firebase) and researched different ways to integrate it into our frontend and to our ESP32 microcontroller.

Our progress is currently on schedule, we plan to finish up rapid prototyping by testing basic functionality using parts found around campus.

I also hope to finish up setup for all the software components and look to figure out the integration with the MCU. In addition, we have our project design proposal paper due so I hope to do a lot of work and research on that.

Sarah’s Status Report for 2/15/25

This week, I focused on narrowing down the design scope specifics, particularly on the software side. I decided the exact frameworks and applications we would use to design our frontend and app backend logic. I am also going to be presenting the design slides in the following week so I spent a lot of time creating the presentation and deciding what type of content I want displayed. I created a block diagram of our software frameworks, hashed out a detailed Gantt chart with due dates and assignees, and started creating design choices for the frontend in Figma.

Our progress is currently on schedule as we are finishing up the design portion and will start development soon.

I want to be able to finish the design slides and give a good presentation that accurately goes over the details of our product. I also want to get all the software downloaded and setup so that it is ready to integrate with the hardware. I also want to start on the design paper that must be turned in the following weeks.

Sarah’s Status Report for 2/8/25

This week, I put in a lot of effort and time into our project proposal design and slides. Since I am on the software portion of the project, I researched different frameworks and databases we would be able to use in our application that would integrate seamlessly with the hardware and fit the needs of our mobile application. After consulting with my team mates about what type of hardware devices they wanted to use, I decided to use React Native for the app development, FastAPI for the backend and IoT communication, and Google Firebase for the database, cloud authorization, and notification system. Along with the proposal design, I also worked on the website setup. I set up the menu, pages, and categories that our team will subsequently use in the future to provide updates on our project. Finally, I worked on the Gantt chart schedule and distribution of tasks for our team. I outlined what each team member should do in Notion and set a general timeline for what to accomplish so we can stay on track as a team.

So far, my progress is on schedule. We finished up proposal presentations this week and I provided feedback for other teams.

In the next week, I hope to help my team decide what parts and materials we should order to start constructing our project. I also want to do more research on the software applications I will be using to build our web app, along with doing the setup for these frameworks.