The Great Outdoors is burning down at an alarming rate. From the constant fires in California to the recent Australian bushfires, uncontrolled fires pose one of the greatest risks to the environment and the Earth at large. At the source of many such fires, the risks are evident: parched leaves, coarse and dry soil, and dying plants and trees. We want to mitigate the threat of fires by giving us the tools to prevent them at their source.

What it does

LoRax speaks for the trees. That is, it monitors the environment around a tree - since fires feed on decaying wood and leaves - for potential risks. The device's sensors measure temperature, humidity, soil moisture, and ultraviolet exposure; and the mobile application gathers this data and notifies the user if the measured values pose sufficient risks of fire. We also have rock variant of LoRax that rests on the ground rather than attaching to a tree. Multiple devices can be registered and placed in distinct places, making the system highly scalable; and though these nodes require Wi-Fi to send their data to the user, they are capable of offloading their data to each other to be functional if even a single node is connected to the Internet.

How we built it

Each device is an ESP32 microcontroller with sensors for environmental data as well as a GPS to track the node's location. The peripherals include a VEML6070 UV Sensor, Si7021 Temperature/Humidity Sensor, Neo-6M GPS module, and a I2C Capacitive Moisture Sensor. The ESP32s use WebSockets, a method for bidirectional live communication, to transmit their sensor data to the user in realtime and provide a consistently accurate reading. The mobile client is written in React.js with the Sass styling language; and the server was developed in JavaScript with Express.js and a MongoDB database.

Challenges we ran into

We particularly struggled with figuring out our way around the variety of wireless networking tools at our disposal. At first, we tried Socket.IO, which looked promising but refused to comply with the limits of the ESP32. We later switched to traditional WebSocket servers, yet we still struggled to strike a balance between using WebSockets, peer-to-peer methods, and standard HTTP requests with a REST API.

Accomplishments that we're proud of

Firstly, we're immensely proud of the fact that, upon finding out that the available 3D printers couldn't produce some of our desired materials, we got creative and sculpted something similar using clay. In addition, we're happy that we could work together effectively to develop a functional, commercially viable product and present it with just 36 hours of preparation.

What we learned

We learned a great deal about networking, Internet of Things devices, and how they intersect to create systems of distributed nodes working towards a central goal. Developing a central server that can juggle data from scores of devices is more difficult than successful prograks might have you believe, as is the process of putting various hardware parts together to design some envisioned final product.

What's next for LoRax

As the name implies, LoRax would benefit greatly from the LoRa (Long Range) wireless networking protocol that greatly increases the maximum range between nodes. Given the system's reliance on Wi-Fi, the ability to increase the range between nodes to facilitate wireless offloading is an improvement that drastically increases the effectiveness of the system.

Share this project: