Rong Feng Ye Weekly Reports

Rong Feng Ye Status Report for 04/29/2023

Throughout the past week I continued verifying our web application performance. After taking a while to properly learn the Python Locust testing library, I started to write proper load testing on how much stress our deployed website can handle. It appears to be consistent with our predicted user-case requirements which we had defined at the beginning of the semester of 50 users hitting the server endpoint at a time. We can see from our load test charts that response time starts increasing as the number of requests increase, and the number of failures start to increase as we start to hit 50 user requests per second.

Rong Feng Ye Status Report for 04/22/2023

Over the past two weeks I have been finalizing the small details to connect the larger pieces in which we all have been building up throughout the latter half of the semester.

 

After several visits to T-mobile, troubleshooting with the refurbished Personal Hotspot machine (which we ordered from Amazon through the order placement form), and adjusting our data services plan, the hotspot is able stream 5G LTE in the Wiegand gym area to properly connect the Shelly Plugs to the internet so that they can serve as functioned for our project. It is important to mention that this hotspot is simply a means of demonstrating our project on a campus situation. Our project was initially designed with a user case of scenario in which customers have our system connect to a home wifi in an off campus setting.

 

Given the lackluster quality of our existing block diagrams, I also spent significant time recreating them with proper detail indicating the name of the specific resource, descriptions demonstrating relationships, and aesthetic features that allow our diagrams to be visually appealing and easily digestable. This should help clear up existing confusions of how our AWS EC2 instances connect with our physical hardware.

 

Testing is also a critical part of an ensuring a product’s success. On top of the unit testing we have done with our independent pieces of our project throughout, it is important that we conduct user testing and take in constructive feedback. I have started to schedule meetings with some of our off campus peers to test out our product experience.

 

Lastly, I’ve also been helping with finalizing the slides for the presentation coming up next week.

Rong Feng Ye Status Report for 04/8/2023

This week, I spent significant time experimenting and testing out potential Wifi sources for our Shelly Smart Plug to demo our project circuitry on campus. Although the intended user-case purpose of our space heater system is for customers living within houses with basic Wifi setup, for the purpose of our ECE demo, we will require a more unconventional wifi set up.

 

To properly set up the Shelly Smart Plug to respond to API calls (which is how we will regulate the temperature of a personal space area with our space heaters), both the Shelly Smart Plug and a phone need to be connected to the same Wifi. I attempted to use each of our iPhone’s hot spot as a source but the bandwidth is not sufficient and disconnects before the Shelly Smart Plug is registered to respond to API calls. I then attempted to use CMU wifi options. I was unable to use CMU-Guest and CMU-Secure because both of these wifi’s require a second authentication or verification portal/layer that the Shelly Smart Plug interface is unable to access. Therefore, it made more sense for me to connect to CMU-Device by registering the MAC-Address of my Shelly Smart Plug. This is sufficient enough to allow us to register the Shelly Smart Plug to respond to API calls. However it is not stable enough and experiences brief moments of inconsistent responses.

 

Therefore, after reconsidering our budget after last week’s financial review, Jay and I went to Squirrel Hill to visit AT&T and T-mobile. We discussed Hotspot options and simple subscription plans. We then placed an order request form for an Hotspot router. We are currently waiting on that object’s arrival for further work on this area.

 

In the mean time, I plan to help Eric with the breadboard setup and Jay with any additional software assistance.

Rong Feng Ye Status Report for 04/1/2023

This week, I coordinated with Jay to deploy our python script onto the EC2 instance on the cloud. Part of this script is responsible for looping through scheduling and turning on/off each of the Shelly Smart Plugs that are working in conjunction to manage the temperature control of our space heaters. The script is responsible for coordinating with the DynamoDB tables to ensure proper temperature control management.

There were also additional design changes that were made in the architecture of our project. We have decided to make separate DynamoDB tables, one for our web application, and another one for our hardware microcontroller to keep track of the occupancy count of each of the rooms corresponding to the Shelly Smart Plugs.

Finally, we have been reviewing our finances and are figuring out final orders to make given our remaining ~$270 budget. We have allocated charges to additional backup sensors. I am currently in the process of conducting additional experimentation on the internet capabilities of the Shelly Smart Plugs to see if we will need an internet hotspot to work in conjunction with it.

I am on schedule and have been just in the process of balancing, coordinating, and connecting all the work Eric and Jay have accomplished.

 

Rong Feng Ye Status Report for 03/26/2023

This week, I successfully bridged the gap between our software and the hardware which controls the on/off of our space heaters. Using the Shelly Documentation, I configured all of our Smart Plugs to be connected to the WiFi such that they can respond to API calls all while in different room settings.

These API calls can now be properly made from the Python Request Library or a Javascript file. We can now have a script running from within an EC2 instance to call this.

Following Wednesday’s Ethic’c lecture and discussion, through collaboration with our peers, we have also discovered additional shortcomings and potential issues with worse case ethical consequences and scenarios. We have continued to discuss this as a group as well as the political repercussions relating to physical issues like electrical fires, monetary issues like a giant electricity bill on a low-income family, or security/privacy/ethical issues like location tracking.

Rong Feng Ye Status Report for 03/17/2023

This week, I worked along side Jay to further develop the software side of our project. Specifically, I worked on integrating the Shelly API calls into the Python Requests library package as well as Javascript such that we can apply the language that is more preferable in the moment. With these API calls, I was better able to understand the Authentication and bearer tokens necessary for our calls.

 

As Jay wraps up the development of our application, we must start the cloud deployment process. We are currently in the process of determining an appropriate AWS package that fits our payment needs and space requirements. We are also creating a Dynamo DB table to be integrated with our software.

 

Jay and I plan to also refine our block diagrams for our application. We will provide more details such that our application block diagram can better convey the fine tune details better than the block diagrams in our design proposal paper submission.

 

Rong Feng Ye Status Report for 03/11/2023

This week, I worked alongside Eric to discuss tradeoffs or design decisions facing the location and structure of our motion sensors which were to be used for the occupancy count. With the new changes being the multiple breadboard and the use of the new single ribbon cables, it was exciting to plan the new setup for our breadboards and motion. This new counter has a much increased reliability, in the case of the conditions of one adult height person walking through the door.

 

Additionally, I’ve been working on better understanding the different parts of the successful api calls to the Shelly Smart plug that is controlling the space heater.  I will need to start working with properly making these calls on Javascript rather than just on Postman.

 

 

Rong Feng Ye Status Report for 02/25/2023

This week, we all started building the individual unit foundations for our distributed space heater set up. I set up the wireless connection to the Shelly Smart Plug to respond to API calls. This required reading through Shelly documentation, connecting the device to the internet, and registering it as one of my Shelly devices. Currently looking through if I can connect other smart capabilities to this as well

The next step is to integrate with the web application. I will be working closely with Jay to properly integrate these API calls with the HTTP python library such that we can have it run on our Django based application.

Rong Feng Ye Status Report for 02/18/2023

This week, Eric and I discussed about high level design ideas and tinkered in thoughts about frameworks to approach with. We then created the design review presentation slides. Eric and I also discussed with Will the appropriate selection and substitutes for hardware pieces that would fit financially and technologically wise. With the necessary hardware finalized, I placed in bulk orders for the parts needed for our project.

I then worked alongside Jay to discuss the Django framework and how we would use the knowledge that we learned fro 15440 and 17437 to create an appropriate distributed web application for our needs.

Aside from a small setback because we had to change some hardware choices, our project is currently on schedule and the team is sensing a really solid direction in the physical formulation of our space heater project.

Rong Feng Ye Status Report for 02/11/2023

This week, I helped Eric create his proposal presentation slides, assisted in researching our materials, and organized our material list for requesting an order. Based on Eric and Jay’s research, I helped look for devices with the specs we require for our project and discussed with them the best course of action for our modified plan. I also started figuring out some of the logistics, like where we will test and planned how to set up our project in the rooms based on our testing goals. Finally, I have prepared and organized our order list so we can touch that up and order by Monday.

My progress is on schedule. Next week, I plan to help Eric set up the devices, and start writing the Raspberry Pi and Arduino code in preparation for when Eric completes the circuits and Jay completes the initial Web App implementation.