Aidan’s Status Report for Mar. 25, 2023

This week, one of the main things I focused on was controlling the display through our microcontroller, rather than just hard coding in images through the microSD card. To start, Neha and I figured out how to send commands through the TX pin on the ESP32 to the Nextion display. We found that we could do this with the Serial.write() function. Initially, we were ableto get two images to switch back and forth after a specified delay with these commands.  After this,  I began by reading up on the instruction set for Nextion commands. From here I learned how to draw lines on the Nextion display. For this, I wrote a C++ program that represents the nodes as x,y locations, and the edges as a list of edges between two nodes. The program initially sends messages to the display to draw the entire maps, and then it has the ability to highlight specific routes by changing their color. For demonstration purposes I made the edges cycle between being red and blue on a delay. I made sure that the interface would be able to easily interface with our pathfinding software so that we will be able to integrate the two together smoothly. It fits in well with the edge list and vertex list representation of a graph.

Another thing that I focused on was finding the libraries for the PCBs that we are making. These library files were surprisingly difficult to find, but I was able to find libraries for our microcontroller and temperature sensors. I spent some time looking for a library for our smoke sensor, but this ended up being very difficult to find. For this, I am looking into making my own library as it is a relatively simple pinout. I also added in 5 LEDs to our diagram, as this is how many we will need for our LED nodes. Each is wired to its own 4.7kOHM resistor and to its own GPIO pin. One thing that I will need to look into is that Eagle is telling me that I need something attached to the reset pin of the ESP32, but I am not sure what we would wire this too at the moment.

Being able to display paths on the Nextion display was one of my main goals for this week, so I am on schedule for that. One thing that I am slightly behind on is the PCB design. We only recently received the smoke sensors because we decided to change the smoke sensors that we are using. Also not being able to find a readily available library for these sensors has pushed my schedule back for this task. Even if I have to make my own library for this part, I think this is something that I can definitely catch up on next week. Also now that we have all of our sensors, I will be able to convert our breadboard circuit to a PCB design. Jason has made a lot of progress with the communication, so I think we will be able to press forward with the tasks that were blocked by this and make up the tasks that we have fallen behind on.

One thing that I am hoping to get done next week is the PCB design. Along with this, I will be doing some research into creating our own PCBs. I want to look into the machines available on campus and how we can get in to use them. Another thing that I am hoping to get done this week is some integration between the communication and path finding. Now that Jason has managed to get communication set up between the nodes, we will be able to use this communication in our pathfinding algorithms. Another important thing that I will do next week is look into AA battery holders that we will use to hold and charge our AA batteries on the nodes.

Leave a Reply

Your email address will not be published. Required fields are marked *