Zara’s Status Report for 03/15/2025

This week, I worked on the ethics assignment to evaluate the ethical considerations related to our project. On the technical side, I continued developing the API code and discovered that the initial API we intended to use was no longer actively maintained, though some calls were still functional. Upon further investigation, I found the API’s database but determined that it lacked the necessary data for our project.

To address this, I implemented an alternative API to retrieve the required information. However, certain critical details, such as plant watering and lighting schedules, were locked behind a paywall. As a workaround, I explored web scraping as a potential solution and identified several websites with relevant plant data, though they cover a limited selection of houseplants.

My progress remains on schedule, and I am now shifting my focus to setting up the heater. By next week, I aim to finalize the heater’s control code and complete the web scraping implementation to gather the necessary plant data.

Yuna’s Status Report for 03/15/2025

This week, I spent much time on the ethics assignment. There was a big change in the plan for the web app part – instead of using AWS, we decided to use different options like MySQL, MQTT, and Twilio API. Although using AWS is possible, it had more risks since we had a limited amount of time and I do not have a lot of experience in AWS. As discussed in the meeting with the professor Tamal, we decided to use Replit to deploy the web app instead. Below is the rough diagram:

I added some pages to the frontend (MonitoringPage and AddPlantPage), changed the database from SQLite to MySQL, added websockets between the frontend and the backend, and explored how I am going to implement MQTT between the web app and the RPi. I also explored how I am going to use Replit to deploy the app.

I am slightly behind the original schedule since I wasn’t able to integrate the RPi with the web app, but mostly on track. I’ll put as much time as I can into implementing MQTT next week.

Next week’s deliverables:

  • complete MQTT between the web app and the RPi, verify it works
  • start integrating live camera feed
  • keep improving the design of the app

Jana’s Status Report for 03/15/2025

This week, I worked on the ethics assignment. Also, I have now established the initial training framework for the ML model. For the image dataset, I finalized comparisons between three models: ResNet18, ResNet50, and MobileNetV2. I am now evaluating their performance on two image datasets: PlantDoc and the houseplant/greyscale dataset I sourced online. I also set up a system to log the performance of each model to allow for a more comprehensive comparison. For the sensor data, I ran additional tests with various classifiers. All classifiers (SVM, Random Forest, etc.) returned 100% accuracy. Since we haven’t gathered sufficient data yet, I decided to delay final classifier selection until more data is collected from our own plant sensors and the late fusion stage is trained.

I am currently on schedule with the project timeline. The training results for the image models are looking promising, and I was able to complete the deliverables for this week successfully.

Next Week’s Deliverables:

  • Finalize Model Selection: Based on the training results, which I expect to get in the next day, I plan to finalize the selection of the ML models (for image data)
  • RPi Camera Setup: I will set up the Raspberry Pi camera and begin collecting our own image data.

Team Status Report for 03/15/2025

Challenges & Mitigation:

This week, the biggest change was switching from using an API to web scraping for collecting environmental data. The API we planned to use was unreliable (down, buggy, outdated) and lacked important data. Paid backup APIs weren’t an option, so we switched to scraping data from a website focused on houseplants. The challenge is that this site only covers houseplants, which may limit our scope. We’ll either narrow our focus to houseplants or find another source.

We also switched from AWS to Replit due to the lack of AWS credits and other limitations. This change required us to adjust the web app code, which has already been done. We now need to explore different options for user notifications, such as Twilio, since we no longer have access to AWS services.

We’re still facing challenges with getting enough plant data for the ML model. To solve this, we’re collecting our own data and looking into data augmentation techniques. We’re also prioritizing setting up sensors and cameras to collect data in the next few weeks.

 

Progress:

  • ML Framework: The main framework for plant health classification has been set up. We’re testing multiple models and using online image datasets to find the best-performing model.
  • API & Web Scraping: The API code has been set up, and we’ve started web scraping from the chosen website. We’re in the process of collecting a more comprehensive dataset.
  • Frontend & Backend Development: New frontend pages have been added to the web app, and we’ve completed implementing WebSockets for real-time communication between hardware and software. Additionally, we’ve switched the database from SQLite to MySQL after changing from AWS to Replit.

 

Next Steps:

  • Finish training the ML models for plant health classification
  • Set up the RPi camera and begin collecting our own image data for training the ML model
  • Finish the web scraping process to gather a full dataset of plant environmental conditions
  • Integrate the Raspberry Pi with the web app
  • Start integrating the various components we’ve been working on separately

Team Status Report for 03/08/2025

No major changes were made to our system though we have decided to add a pid control system to our environment to control the actuators based on sensor data. 

Challenges & Mitigation:

  • Potential faulty sensors: If the sensors we have received are faulty we need to order backups which will increase our costs. We have managed to decrease costs in other areas to have more budget for potential backups. 
  • Not enough training data: An ongoing issue remains that we may not be able to collect enough plant data to sufficiently train the ML model, to combat this we have ordered the plants to start training. 

Progress:

  • Collected all the plants for training and testing, and started setting them up in different conditions for ML training
  • Finished setting up the temperature and humidity sensor, and started setting up the light sensor
  • Created a rough web application with all base pages
  • Labeled online datasets consistently for ML models

Next Steps:

  • Finish setting light and soil moisture, pH, and, nutrients sensor
  • Establish a training framework for the ML model
  • Implement web UI, and django channels with WebSockets
  • Integrate RaspberryPi with web app

A was written by Zara, B was written by Jana, C was written by Yuna. 

Part A: Our product addresses global factors by recognizing that plant care is a universal activity, with people worldwide facing different challenges in managing plants due to varying levels of expertise, time, and environmental conditions. This product bridges the gap for individuals who lack the time or knowledge to care for plants, offering a solution for growing herbs, fruits, vegetables, and flowers at home, regardless of experience. It is particularly valuable in remote areas or regions with limited access to plant care resources, providing an educational tool for users at all skill levels. Additionally, its remote monitoring capabilities support plant care in diverse global settings, making it a versatile solution for anyone looking to grow plants efficiently, no matter where they are located.

Part B: In many cultures, plants hold symbolic and spiritual significance. Our system offers personalized plant care recommendations that meet the specific needs of plants that hold cultural significance, such as herbs, flowers, and medicinal plants. The system is designed to adapt to a wide range of growing conditions, ensuring that users from diverse cultural backgrounds, regardless of level of expertise or traditions, can effectively use the technology. By providing a simple and intuitive way to manage plant health, users can stay connected to the plants that are important to them, while also benefiting from automation and helpful insights that make plant care easier.

Part C: Our product solution addresses environmental challenges by allowing optimization of resource consumption for plant cultivation in home settings. The greenhouse system reduces energy use and water waste through precise irrigation that only delivers the water and nutrient amount that is needed for the plant. The system detects the plant conditions and water the appropriate amount rather than merely watering based on the typical watering schedules – this is particularly valuable in regions that are facing water scarcity. This plant condition detection also helps prevent overfertilization that can lead to soil degradation. Furthermore, our product solution allows easy plant cultivation in limited spaces, which improves air quality and reduces the carbon emissions caused by transporting commercial produce.

Zara’s Status Report for 03/08/2025

This week, I helped work on the design status report, which has helped further solidify our project plans. I focused on reworking the system architecture, specifically the flow chart diagram, to incorporate the new decision to use a PID controller for managing the system’s environment. Additionally, I updated the system implementation plan, bill of materials, and prepared a summary to align our project’s direction moving forward. On the sensor front, I conducted tests on various temperature and humidity sensors to identify the most accurate one, replacing the initially tested model. I also began implementing the light sensor into our system. For the plant API call, I am still in the process of finalizing the code to ensure smooth integration and functionality.

In terms of schedule, I am mostly on track; however, I have encountered a delay in implementing the heater. This is due to shipping issues, as the heater has yet to arrive, which is preventing me from progressing as planned

Looking ahead, my deliverables for next week include completing the implementation of the soil nutrients, pH, and moisture sensors, as well as finalizing the light sensor integration. If the heater arrives as expected, I aim to complete its implementation as well.

Jana’s Status Report for 03/08/2025

This week, I worked on my part of the design report which included the abstract, introduction, use-case requirements, design requirements, ML-specific design trade studies, ML-specific testing and validation, schedule and task division, and the related works section. 

On the technical side, I completed labeling the datasets consistently, ensuring uniformity across images from multiple sources. I also finalized the data augmentation techniques, including rotation, greyscale conversion, and flipping, and have begun implementing them. As a result, I now have a fully labeled dataset ready for model training.

Additionally, I established a plan for testing live plants. I am monitoring eight plants under different conditions to support model training and evaluation. This includes 2 plants being underwatered, 2 being overwatered, 2 with nutrient deficiencies, and 2 healthy plants.

I am slightly behind schedule as I have not yet established the initial training framework for the model due to midterm exams and other deadlines. To catch up, I will continue to work through spring break and dedicate additional hours over the next week to make progress.

Next Week’s Deliverables:

  • Establish the initial training framework for the model
  • Test different model architectures (ResNet18 vs MobileNet) using the available dataset
  • Compare model performance on greyscale vs RGB images
  • Continue monitoring live plants for testing and validation

Yuna’s Status Report for 03/08/2025

This week, I spent half of the time working on the design report and the other half on the web application. I mostly worked on design trade studies, test and validation parts, and parts that need explanations about web app. I revised it with the team at the end.

For the web application, now I have a rough outline for everything. I spent most of the time reading different react documents and learning how to use different libraries. I have a working frontend that displays plant info and backend that has plant models, though I will still need to work on specific frontend designs using bootstrap. (Right now the website has very basic components)

I am on schedule. As planned in the schedule, next week I will start working on the data transmission part on the web application. The rough web application is set up, but the sensors and APIs are yet to be integrated. I will improve the design and UIs as I integrate those into the web app.

Next week’s deliverables:

  • Implement django channels (websocket).
  • Replace the current database with AWS dynamoDB.
  • Integrate RaspberryPi with web app.
  • Keep improving the design of the app.

Yuna’s Status Report for 02/22/2025

This week, I specifically worked on Solution Approaches and Testing, Verification, and Validation part in the design presentation. My team and I ordered different plants and additional components for the plant care, including soil and  liquid nutrients. Our team also assembled the greenhouse together.

I designed a rough user interface, and currently have a partially working web app. Here’s the rough UI design (it’s high likely to change in the future):

I did more research about what specific AWS services to be used for data transmission between the web app and the microcontroller. For database, we were planning to use AWS dynamoDB, but after research I realized we could also use AWS IoT to connect dynamoDB with RaspberryPi.

I am currently on schedule.

Next Week’s Plan:

  • Finish frontend and backend – have a working web app by the end of spring break
  • Explore more about how data will be transmitted from/to the web app (AWS services, HTTP/MQTT)

Zara’s Status Report for 02/22/2025

This week, I focused on setting up the Raspberry Pi at home and configuring it for our project. I successfully set up a Git repository for the team so we can track our code and collaborate efficiently. I also wrote initial code to collect temperature and humidity sensor data. The temperature readings appeared accurate, but the humidity values seemed off. To investigate further, I plan to rerun tests and, if the issue persists, compare results with backup sensors to determine whether the problem is with the sensor itself or the way the data is being processed. In addition to working on the sensor data, I also started implementing the Plant API data retrieval code, though I haven’t finished it yet. Here is an image of the sensor output data:

As a team, we received most of our components and assembled the greenhouse, ensuring that all parts fit together correctly. We also finished ordering the remaining components, including the plants, so we can begin testing as soon as they arrive with the sensors and start collecting training data for the ML models. My progress is currently on schedule since I have been able to start testing the sensors, though I still need to complete the Plant API integration this week.

Next week, I plan to set up and test the remaining sensors to ensure they are providing accurate readings. I also need to configure the Raspberry Pi to connect to the school’s Wi-Fi so that I can work on it remotely while on campus. Additionally, I aim to complete the integration of the Plant API so we can start using the data in our system.