Ankita’s Status Report for 10/08

This week has set me behind a lot in my intended schedule as mentioned in the Gantt chart. I had intended to have Django all up and running on the RPi, but I have yet to do that after falling sick this past week. Due to my work being stagnant, I have adjusted my schedule and have laid it out as the following: By the start of fall break, I intend to download Django and all other software needed onto the Raspberry Pi. I also intend to create a dummy web server with the finalized design that has no actual functioning components yet but looks how we want it to look. I have read up on a lot of documentation regarding Django and what might end up becoming future challenges for me, so I have taken note of that. I have decided that everything related to the web application will be written in Python for simplicity. After recovering, I am hoping to catch up to my Gantt chart so that my component is completed on time. Unfortunately, this might lead to some work being done during the break.

Arden’s Status Report for 10/01

This week I focused on narrowing down the design of the wireless sensor network. After having spoken to Prof. Mukherjee, we pivoted to a time-division multiplexing approach rather than an asynchronous medium access control method to optimize power consumption even further. Furthermore, to reduce maintenance cost, we want our network to be resilient to link failures (e.g. if multipath effects caused by inclement weather degrades the quality of the channel between two nodes). Since a forest fire is not a frequent occurrence, and since the time before spreading to an open fire is 60 minutes, we would like to detect node failures (or critical link failure) within a timeframe of 15-30 minutes of the actual event. After having read a paper on TDM MAC for wireless sensor networks by Koutsonikolas and Salonidis, I decided to base our forest fire WSN’s MAC algorithm off their approach. Now, we have a good method for ensuring that sensor data can be transmitted and forwarded across the network from any node in the mesh network to the gateway. The clock synchronization method described in the paper enables each node to correct their clock drift in regular intervals, and to match up to a global transmission and reception schedule. I also soldered pin headers to the gas sensor and plan to test whether it can detect a match being lit next to it by interfacing it with an STM32 via SPI by Monday.

Team’s Status Report for 10/01

This past week our team finalized our design for our project. We got our Raspberry Pi and set it up and ordered our STM32’s for each of our nodes. We mainly spent the week figuring out components of our design and working on the design presentation. One of the main tasks completed this week was looking into routing and networking protocols to use. We settled on a combination of spanning tree protocol as a MAC protocol, and time-division to ensure that nodes are transmitting to listening nodes (not in low-power mode). We’re basing our protocol on Koutsonikolas and Salonidis’s paper on TDM MAC Protocol Design and Implementation for Wireless Mesh Networks. However, we’re simplifying the node TX/RX scheduling, and have replaced Dijkstra’s algorithm for creating a tree out of the mesh network to using STP to create a tree, and then using source-routing from the gateway to route packets to the nodes. We’re also currently working on testing the VOC sensor and the temperature sensor to determine whether they can detect the presence of lit match (we will demo the sensor network with this method). We also now have our Raspberry Pi setup and are able to ssh into it to download any software necessary. We are hoping to have the materials we ordered soon to start testing and working on implementation. 



Karen’s Status Report for 10/01

After talking with Arden, we came up with a plan to have nodes operate on a schedule where they are ‘awake’ for a certain period, then ‘sleeping’ for a certain period. While it is awake, it is listening for a child node to transmit data. Once that happens, it takes a sensor reading and adds it to the received data. If it doesn’t receive anything by the end of its awake period, it will take a sensor reading. It will then send that data to the parent node. After the awake period, it will enter a sleep period where it is put in standby or shutdown mode. We can set a periodic wakeup using the RTC to wake up the node after a certain period of time. I have been busier than expected with classwork so I haven’t had time to look into the synchronization algorithm Arden researched. I will need to catch up this week by looking into how the algorithm calculates the clock offset, and if it’s possible to make sure all the nodes are on at the same time to synchronize the clocks. Once we get the STM32s we ordered I will try putting one into different low power modes and waking it up using the RTC.

Ankita’s Status Report for 10/01

This past week has been really busy for me with other classes, so I haven’t done as much as I set out to do and am planning on adjusting my next week’s schedule accordingly. I got the Raspberry Pi 4 from the inventory and have been trying to find the best software for web application development to download. After doing lots of research, I decided on using Django as there are lots of tutorials/references as well as an easier learning curve. I wanted to choose a platform with easy management and this seems to be the best option. I also met with Professor Mukherjee regarding the issues I was having with the Raspberry Pi; now I am able to ssh into the Pi and am planning to download any software that our team needs onto the Pi. I did draw out a design of what the ideal interface should look like, with a map of all the nodes and a system that sends text alerts to the general public regarding the location of a fire. The rest of the time I have been working on the design presentation slidedeck. For the upcoming week, I am hoping to get a simple version of a web application up and running before adding special features.