Inspiration
The more beautiful the plant, the more specific its soil needs become. Keeping track of water cycles for plants allows for integration into auto watering systems that would further automate and ensure the safety of the plants. Additionally, in larger applications, the use of networked sensors for soil conditions could give land owners unique insight into what area's of their property retain water better than others.
What it does
Watergates is a multi-node network that is scalable to use cases. Using a uniform script for all devices, these systems use two-way communication to relay plant information much further than any individual transmitter can carry. All you need is to assign a unique integer ID for each Arduino and wire the transceiver and soil sensing peripherals, and you're off!
How we built it
We used Arduino UNO R3 and nRF24L01+ transceiver modules to establish a two-way 32-byte wireless communication that can transmit various sensor readings. Using the Arduino IDE and C, we followed instructions from https://forum.arduino.cc/t/simple-nrf24l01-2-4ghz-transceiver-demo/405123 to get a two-way transmission using ackPayload. Installing and setting up the peripherals (BMP085 and DGZZI) is a matter of following example code in the data sheet, and putting the payloads into the transceiver package sends. Using the Instructables tutorial https://www.instructables.com/Arduino-and-the-SSD1306-OLED-I2C-128x64-Display/, we were able to get the right OLED library installed and began playing around with generative AI on different features we could add to clean up the UI.
Challenges we ran into
nRF24L01+ transceiver module power spiking, this required a 10-100μf polarized capacitor through VCC and ground of the transceiver, but all I had on hand was 10μf, the lower end of what was recommended. After hours of testing and messing with the configuration on the breadboard, we found the best way to ensure a stable and robust connection was using the capacitor on the Arduino that lacked peripherals, which went straight to the board VCC and ground for the loaded up Arduino. Initally we had used the wrong library for the OLED display, programming around a device that was a 138x64 display instead of a 128x64. This caused the display to sporadically work and occasionally buffer in very glitchy ways that led us to look at the hardware connections for far too long.
Accomplishments that we're proud of
We're proud of creating a low-latency and highly redundant wireless communication between multiple devices. The networking aspect of this project was the largest hurdle as we came into this hackathon with very little hardware experience and even less experience with Arduino and the C language. Our experience in networking in a project last semester for ENGR 102 proved useful for grasping networking concepts and the utility of different functions.
What we learned
Breadboarding, hardware debugging, SPIO/pinout wiring, Arduino IDE, and the language C. We definitely grew significantly in our understanding of microcontrollers and general IOT systems.
What's next for Watergate(s)
We believe that Watergates is highly scalable and adaptable to any context that would need oversight over soil data. The code allows quick expandability with cheap parts that would usually limit communication distances by using the multi-node network to communicate data throughout. We imagine that with integration into irrigation systems, many farming duties, or at the very least prospective duties, could be automated. Making a smaller and more efficient form factor would be the next biggest step.
Log in or sign up for Devpost to join the conversation.