Angela’s Status Report 3/26

This week, I spent the first half working mostly on the ethics assignment. However, due to illness related difficulties, I was unable to make it to the ethics lecture on Wednesday. From the rundown I got from my groupmates, I was able to agree with their proposed ethical concerns on our project, which was mostly centered around the user’s privacy as well as potential use cases that are outside of our planned use-case scenarios. This would include having a person with ill intent planning to use the number of students in the UC for non-intended purposes. Users also cannot opt out of having their occupancy tracked, even if it’s anonymous.

I also made advancements with developing with Django. Currently, I have the web app set up on my local machine with skeletal code, using a python virtual environment.

Ryan’s Status Report for 3/19

This week, I finalized ordering the rest of the hardware for the project, including picking switching regulators to supply 5V and 3.3V from our 3.7V battery, and figuring out a charging solution for the battery as well. With this, the hardware should all be ordered and in house next week, and once the last of these components arrive, I am excited to put everything together! In addition, I worked on the ethics assignment and thought about various aspects of the ethicality of our project, and started to look at some of the existing hardware code Jake has written to familiarize myself with it.

Next week, I will be looking forward to some interesting ethics discussions, and am hoping that the rest of the parts will be in so I can assemble everything! Although I am slightly behind schedule, as I would have liked to be writing some code to initialize the sensors by now, I am not worried about getting this done by the interim demo, and hope to have everything up and running by then.

Jake’s Status Update for 3/19

This week was spent mostly on integrating the hardware software interface. To start off the week I registered all of our esp8266s with CMU-Device’s wifi registration. I worked through getting these new devices to connect to our aws iot accounts. I successfully started quick connecting the esp8266 to aws iot and pushing data packets with table occupancy. Code can be found here: https://github.com/ayzhang00/OccupancyMonkey/blob/main/Esp8266/aws_iot_main.

I designed the code such that all secure information i.e. keys and wifi information is entered into a small header file that is added at device flash so no outsider can peek at that information on our github. I additionally created our mySQL database hosted by Amazon RDS and am close to finalizing the AWS lambda rule to push the sent data to this mySQL database. The code for this is similar in structure to the esp8266 code where all sensitive information is placed in a small additional file. The code is found at: https://github.com/ayzhang00/OccupancyMonkey/tree/main/send_data_to_rds

I am about on schedule, there is a slight hiccup with AWS that I need to work through as it appears our EC2 credits do not count towards AWS IOT and Amazon RDS payments, as I initially hoped. I think the RDS free tier will suffice unless Django has some unanticipated quirks. The risk mitigation for this would be less reliance on Django models for the substitution of the pymsql library or something similar that gives tighter control over database reads.

Next week, will be spent completing the implementation of our hardware software integration by finalizing the Lambda function with the hopes of completing the hardware to software pipeline to the point that this code will not need to be touched for the remainder of the project.

Team Status Report for 3/19

This week we made great strides for the hardware software interface. All of the teams esp8266s were registered with CMU-Device’s wifi. We successfully implemented the esp8266’s quick connection to wifi, establishing communication with AWS IoT, and pushing data packets with table occupancy. Code can be found here

We initially deployed our Amazon RDS mySQL instance and created the preliminary AWS lambda rule to push the uploaded data to this mySQL database: code

We are currently on schedule with exception to low power testing and code creation. The major deviation is the necessity to use the PubSubClient and WifiClientSecure libraries to upload data securely from the esp8266 without fully knowing what they are doing under the hood. The risk mitigation for this is that we could rewrite some of the connecting and publish code as we only need to transfer data in one direction.

Additionally, we ordered the rest of the hardware last week, including switching regulators and a battery charger, and are hopeful that we will be able to get everything assembled soon! Although we would have ideally had this done a few days earlier, we still have a lot of time to run potential risk mitigation plans in case pieces of hardware don’t work as expected by figuring out and purchasing alternative solutions.

Angela’s Status Report 3/19

This week, I was feeling really sick up until Friday night and was unable to stay up enough to make significant progress. However, I was able to finalize plans for frontend to make it a little bit more accessible and streamlined.

Next plans are to fully integrate Django and MySQL with AWS and finish the integration process.

Team Status Report 2/26

This week, we presented our design review and are currently awaiting feedback. We did not make any changes to the system, only more detailed analyses of the frontend and hardware.

Through our preparation for the design review and report, we did not discover any new significant risks yet. Overall, we are just trying to properly manage costs and size for the hardware in order to support the 55 hour battery life as well as making sure software structure can hold up to the number of tables it has to support. Currently, our biggest power consumption device is the PIR sensor, which will, after 55 hrs, consume 85% of the available power consumption. As a contingency plan in case the battery does not last, we are planning to lower the active time of the PIR sensor, such that the thermal sensor does the initial occupancy sensing and the PIR sensor is then used to confirm occupancy.

Jake’s Status Report for 2/26

This week I developed more code to get the esp8266 to connect over wifi. The big question at the moment is what “.ino” authentication library to go with for optimal power savings. Theres several options that are available and I have working, the difficulty however is that to truly determine which one is best for our low power solution we have to run them all on the device and measure power draw.

So far I am on schedule as this week we implemented a working embedded device to software interface that communicated with the cloud. This upcoming week + spring break week I plan to not only conduct the previously mentioned power draw experiments but also to establish an AWS rule (essentially the pipeline that directs incoming data) to push inbound data to an AWS db.

Angela’s Status Report 2/26

The beginning of this week was mostly spent on the design review and the design review report. The AWS credits were not rewarded until later in the week, so I used some time to review the hardware aspects of the project, since I am more software focused. I also made very minor changes to the first panel of the UI. This was just to show the baseline statistics of the area of the UC that’s displayed.

Now that I have access to the AWS credits, I should be able to start connecting a Django app to a MySQL database. I also want to finalize the UI and study more on how to make the UI more aesthetically pleasing and accessible. Currently, my progress is on schedule, as I have plenty of time to develop this UI. I hope to show a more refined UI as well as show that I have done AWS work.

Ryan’s Status Report for 2/26

This week was spent mostly on design review. To start off the week, I helped put together the slides for our design review presentation, and then practiced the slides and eventually gave the presentation in class. I also got to listen to a bunch of awesome design reviews from other teams! I then reached out to some previous capstone students about using a similar battery to ours before placing the order for two batteries, one which we will test with and another (smaller) one for our demo. Finally, I got started on our design report which is due at the end of next week.

I am about on schedule, pending the status of our parts being delivered, as I initially planned on having a full design completed and all parts ordered and in hand by Spring Break. The only hardware that has yet to be ordered is a voltage converter stepping up to 5V and stepping down to 3.3V, however I don’t anticipate choosing one to take that long.

Next week, in addition to getting a voltage converter ordered, I will be spending most of my time writing up the design review report, including incorporating any feedback from the presentation which we may receive next week. After a nice break and when everything has arrived, I’m excited to start wiring everything together and playing with the sensors!

 

Ryan’s Status Report for 2/19

This week, I was able to catch up on some work I was behind on. I was able to create a BOM of all the hardware we are going to need to purchase for the project so far, including doing power consumption analysis of all the hardware to determine the approximate specs of a battery that we would need. It turns out that we are either going to need a pretty big battery or (more likely) we are going to need to be smart about how long we leave our sensors powered to detect occupancy! Finally, I helped work on the design presentation that we will be giving at the beginning of next week.

I am a bit behind from where I’d like to be in that ideally all parts on the hardware BOM would have been ordered by the end of the week, and I’m still waiting on approval from a couple people before I go ahead and place the order. But once that comes through, placing the order shouldn’t take much effort, so I’m not worried about this being a long-term setback.

Next week, I plan to finalize a battery to purchase and place an order for the rest of the hardware. While I wait for parts to arrive, I will work on writing up the design review report and incorporating any feedback that we get from the presentation. Finally, I will help finish up the rest of our design proposal slides, and am looking forward to seeing the presentations of other groups!