{"id":162,"date":"2025-03-15T20:32:09","date_gmt":"2025-03-16T01:32:09","guid":{"rendered":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/?p=162"},"modified":"2025-03-15T20:32:09","modified_gmt":"2025-03-16T01:32:09","slug":"team-status-report-for-03-15-2025","status":"publish","type":"post","link":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/2025\/03\/15\/team-status-report-for-03-15-2025\/","title":{"rendered":"Team Status Report for 03\/15\/2025"},"content":{"rendered":"<p><b>Challenges &amp; Mitigation:<\/b><\/p>\n<p><span style=\"font-weight: 400\">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\u2019t 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\u2019ll either narrow our focus to houseplants or find another source.<\/span><\/p>\n<p><span style=\"font-weight: 400\">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.<\/span><\/p>\n<p><span style=\"font-weight: 400\">We\u2019re still facing challenges with getting enough plant data for the ML model. To solve this, we\u2019re collecting our own data and looking into data augmentation techniques. We\u2019re also prioritizing setting up sensors and cameras to collect data in the next few weeks.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><b>Progress:<\/b><\/p>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">ML Framework: The main framework for plant health classification has been set up. We\u2019re testing multiple models and using online image datasets to find the best-performing model.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">API &amp; Web Scraping: The API code has been set up, and we\u2019ve started web scraping from the chosen website. We\u2019re in the process of collecting a more comprehensive dataset.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Frontend &amp; Backend Development: New frontend pages have been added to the web app, and we\u2019ve completed implementing WebSockets for real-time communication between hardware and software. Additionally, we\u2019ve switched the database from SQLite to MySQL after changing from AWS to Replit.<\/span><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><b>Next Steps:<\/b><\/p>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Finish training the ML models for plant health classification<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Set up the RPi camera and begin collecting our own image data for training the ML model<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Finish the web scraping process to gather a full dataset of plant environmental conditions<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Integrate the Raspberry Pi with the web app<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Start integrating the various components we\u2019ve been working on separately<\/span><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Challenges &amp; 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\u2019t an option, so we switched to scraping data from a website focused on houseplants. The &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/2025\/03\/15\/team-status-report-for-03-15-2025\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Team Status Report for 03\/15\/2025&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1016,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[8],"tags":[6],"_links":{"self":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/wp-json\/wp\/v2\/posts\/162"}],"collection":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/wp-json\/wp\/v2\/users\/1016"}],"replies":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/wp-json\/wp\/v2\/comments?post=162"}],"version-history":[{"count":1,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/wp-json\/wp\/v2\/posts\/162\/revisions"}],"predecessor-version":[{"id":163,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/wp-json\/wp\/v2\/posts\/162\/revisions\/163"}],"wp:attachment":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/wp-json\/wp\/v2\/media?parent=162"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/wp-json\/wp\/v2\/categories?post=162"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s25-teamb3\/wp-json\/wp\/v2\/tags?post=162"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}