Inspiration

Our project is directly inspired by the opening sequence of Spider-Man 2 (PS5), where a fleet of autonomous drones creates an instant, high-tech perimeter over New York City. In the game, these drones provide a seamless communication layer that functions even when the city is under chaos.

We realized that this shouldn't just be a video game mechanic—it is a necessity for real-world disaster relief.

What it does

Our solution creates a standalone, serverless P2P mesh network using a Raspberry Pi mounted on a drone, which acts as a single node. Together with many other drones functioning as nodes, it forms a mesh network that provides instant emergency support to multiple clients during disasters.

If a human first responder is unavailable, the system automatically routes messages to a local LLM running on the Arduino UNO Q board, offering immediate guidance until a professional emergency responder becomes available.

The mesh network is designed without a single point of failure. The multi-node setup ensures that even if one drone fails (i.e., a node dies), the remaining nodes stay active. Users can still access the network through the other nodes that continue to host the server from the Raspberry Pi.

How we built it

To build the structural setup of the multi-nodal mesh for the network, we used the Linux Network Manager (nmcli) to turn each of the Raspberry Pis into a server access point, allowing us to build a mesh from the ground up without any external routers.

The communication between each of the clients, the server, and the Arduino UNO Q board (with its interface for emergency teams to interact with the client in need) was done via Python’s websockets and asyncio libraries. By doing so, we were able to facilitate concurrent communication between multiple clients, allowing both response teams and, if required, a local standalone LLM to support the emergency team if the need arises.

While Large Language Models typically require massive server clusters, we optimized our deployment to run on the highly constrained compute environment of the Arduino UNO Q. This "Edge-AI" approach ensures that even the smallest node in our swarm possesses the intelligence to provide life-saving guidance without needing any external processing power or cloud connectivity.

Challenges we ran into

Managing Concurrent Communication: Hosting multiple live chat "rooms" simultaneously on a single Raspberry Pi was a complex problem to debug. We solved this by ensuring the Arduino UNO Q was initialized and connected to the emergency service team before any clients joined. Additionally, we utilized the asyncio Python library to ensure that each client’s room remained isolated and unique, preventing data leakage between users and ensuring requests were handled appropriately.

Maintaining Mesh Resilience: Ensuring that a single node disconnection did not affect the rest of the mesh was a significant challenge. We utilized the Linux Network Manager to initialize the network in a decentralized manner. This allowed the mesh to automatically reform itself, ensuring that client requests could still be received and processed even if one of the drones in the swarm failed.

Local AI Execution: One of our most important challenges was running the LLM response system locally alongside our core solution. We had to ensure the system functioned with zero reliance on cloud-based solutions, maintaining total privacy and functionality in environments where external internet connectivity is non-existent.

Accomplishments that we're proud of

We are quite proud to have implemented the feature of always having a standalone, standby LLM on call to take the spot of any lacking resources for the emergency team, without using large-scale electrical power or any form of cloud connectivity. This was made possible with the Arduino UNO Q board.

We were able to successfully optimize the integration in such a constrained compute environment that now every single node of our mesh network has the capability to deliver intelligent responses to client requests. This is achieved without any cloud connectivity or the need for large-scale external processing power.

*What we learned *

We are quite proud to have implemented the feature of always having a standalone, standby LLM on call to take the spot of any lacking resources for the emergency team, without using large-scale electrical power or any form of cloud connectivity. This was made possible with the Arduino UNO Q board.

We were able to successfully optimize the integration in such a constrained compute environment that now every single node of our mesh network has the capability to deliver intelligent responses to client requests. This is achieved without any cloud connectivity or the need for large-scale external processing power.

*What's next for FRND-Field Neighbouring Relay Data Points *

Instead of using the hotspot for each of the nodes, we could implement a RF communication based solution, to expand the range of the network exponentially. While Wi-Fi is excellent for high-bandwidth communication within a few hundred meters, RF protocols like LoRa can transmit data over several kilometers, allowing our "Spider-Net" to cover entire cities or rugged mountain ranges.

Built With

Share this project:

Updates