This week I was able to get two nodes to poll for packets, receive incoming packets, extract the relevant data, and return this data. These functions are modular and use a polling form of UART. As a test, I sent 100 packets from node A to node B using a stop-and-wait protocol (A waited for an ACK from node B before sending the next packet). We are still slightly behind schedule, and the interim demo is quickly approaching. In order to compensate for this delay, I will be working on integrating timer interrupts with my current stop-and-wait implementation in order to port over a previous implementation of STP protocol, and convert it to a distributed TDM version. I plan to accomplish a functional STP by the middle of next week. I believe that with our stop-and-wait implementation, we will be able to easily effectuate the LSA phase of our protocol stack. I plan to get both working phases (STP, LSA) by the interim demo at the latest.
Team’s Status Report for 10/29
This week, we got multiple nodes to communicate with each other. Since some of the LoRa transceivers were from previous projects, we tested all the transceivers and found that two were broken. We have ordered replacements for the broken transceivers. We have also started programming timer interrupts for timing STP and putting the nodes into low power modes. We are planning to have the STP protocol done soon, so that the scheduling and other elements of our network can be completed. The web application is still in progress, but more focus is being made to the network at the moment.
Ankita’s Status Report for 10/29
This week my work on the capstone project hit a bit of an obstacle. I managed to have the web application up and running; however, when trying to add images to the web application I am running into issues. Thinking about how the web application should respond to the network is making me reconsider some of the design details that were stated in the paper. I am planning by next week to have the images working so I can shift my focus to the scheduling in the network when Arden is ready. I will talk to the faculty on Monday about suggestions about the web application and who to reach out to for my issues.
Karen’s Status Report for 10/29
This week I was very busy with assignments from other classes, so I did not work on the project as much as I would have liked. I helped Arden with testing his code for LoRa communication, and he was able to get nodes to communicate with each other. I also learned how to use the timer interrupts, and started working on code for sending the node into a low power mode using an interrupt, but I haven’t gotten it quite working yet. My goal for this week is to get timer interrupts to time sending the node into low power and taking measurements with the temperature sensor.
Arden’s Status Report for 10/22
This week I established a communication channel between two nodes. This was a multi-step process involving programming the nodes to use UART communication from the MCU to the LoRa transceiver. Unfortunately two of our transceivers were broken, and will have to be replaced before we can conduct a test of our 8 node and gateway topology. My progress is slightly behind schedule, however, now that nodes can send and receive data the development of the STP and LSA protocols can begin. I plan on getting a topology of 3 or four nodes either establishing a tree topology or gathering link-state and sending it to the gateway. I will be working with Ankita to develop the border gateway side of the routing algorithms.
Karen’s Status Report for 10/22
This week I started working with the STM32s. After learning how to use the CubeIDE, I started by learning how to enter Standby and STOP mode and use the RTC to wake up from these low power modes. I also connected a temperature sensor to the nucleo board and got a reading from it using the ADC. I tested it using a hairdryer to see if it responded to temperature changes, and it did. Further testing will have to be done with a match/lighter to determine the best way to detect the temperature change caused by the flame. Arden also got two nodes to send messages using the LoRa transceivers, so the next step seems to be putting it all together so that the nodes wake up from a low power mode, take a sensor reading, send it to another node, then go back to a low power mode.
Ankita’s Status Report for 10/22
In the past few weeks since the last status report, I worked with the rest of my team writing up the design document. After writing all our individual parts, we spent many hours combining our content into our document. I went home for fall break and took the Raspberry Pi with me. It was difficult to deal with because my home network is not that great but I got our fire-away web application up and running. Right now it is a skeleton web app and simply has text. I am trying to create a database that can take the status of each of the 8 nodes to signal to the application if the node is alive or not but am having trouble with that. I need to figure out how to create some table or database to keep track of that. Debugging some of the setup for the web application did take me some time. I have decided that if I were to create a skeleton that is taking in the data and assist with the actual routing protocol and network and then come back to the application to make it pretty and professional, it would be a more efficient use of my time. Therefore, depending on how much I get done in the upcoming week, I will shift around my individual Gantt chart components to have something worthwhile to show at the Interim Demo. So, I want to get the data inputs up and running but am not sure how to get that working. I will do more research on that and attempt it.
Karen’s Status Report for 10/08
Unfortunately this week I did not get much done. I thought that the microcontrollers we had ordered had not yet been delivered, and without them I wasn’t able to start assembling the nodes and programming them. I had planned to experiment with sending the nodes into different power modes, but without the boards I couldn’t accomplish this. I did look a bit more into standby mode, and how it might be possible to preserve some of SRAM in that mode. I also started working on the design document with the rest of the team. This week, I plan to start assembling the nodes and programming a node to go into different power modes on a schedule. I also want to get the nodes to take measurements with the temperature sensors. I will likely have to do some work over the break in order to catch up to where I want to be with the project after the break.
Arden’s Status Report for 10/08
This week I focused on calculating the power consumption for the design presentation. I used Semtek’s LoRa calculator to estimate the current draw of running the routing algorithm. After getting some feedback on the previous TX-schedule distribution algorithm, we decided to pivot to another approach which was both more power efficient and took less time to run. The final numbers calculated for the design presentation considered primarily a 30min sensor sampling rate, and tree-reforming period. I also spent some time working on the design document, consolidating the various aspects of the routing algorithm, and parsing through essential details. Next week I will begin developing the TDM STP protocol on the dev boards themselves, and will finalize the design document.
Team’s Status Report for 10/08
This week we had our design presentation and we got a good amount of feedback on it. From the presentation, we learned that we need to specify certain aspects of our design more clearly in the design document. For example, when we consider “scaling up” our project, we have to decide which part is actually realistically scalable. As a team, we think that our routing protocol and the node architecture can definitely be expanded if this project was deployed in a real world setting. We met as a team on 10/08 to review what needed to be done for the design document and each of our individual statuses. We learned that we had actually received two packages containing our parts and will pick them up on Monday to start actually constructing the nodes. Some of our work has been delayed due to personal conflicts, but we are planning on catching up to our schedule in the upcoming weeks.