Inspiration

We wanted to tackle both the Neptune North subsea challenge and the Solana bounty, but we ran into a massive problem: if you use a blockchain to pay robots for doing work, what happens when a subsea robot loses internet connection? It can't reach the network. We decided to build an architecture that specifically handles these offline blackouts for heavy industry.

What it does

SubChain is a dsimulation of an autonomous robot swarm. The robots navigate to fix valves.

Normally, when they fix a valve, they instantly get a bounty via Solana. But if the network drops (which we simulate by pressing SPACEBAR), they don't stop working. Instead, they cryptographically sign their proof of work locally on the edge. Once the connection is restored, they upload that proof to the Solana Devnet all at once to claim their delayed bounties.

How we built it

  • Simulation: Built entirely in Python using Pygame.
  • Routing: We used A* (A-Star) pathfinding with a Min-Heap priority queue so multiple ROVs could calculate their routes simultaneously without lagging .
  • Blockchain: We used the official solders Solana Python SDK on the Devnet to handle the wallet generation and micro-transactions.

Challenges we ran into

  • Wi-Fi Nightmares: We got completely locked out by the university's portal Wi-Fi at 3 AM and had to dig into Linux terminal network manager overrides just to get our Solana API requests to go through!
  • The Latency Trap: We initially thought about putting the robots' pathing coordinates on the blockchain, but realized the latency would cause them to crash. We had to split our architecture into a local "data layer" for fast movement, and a Solana "trust layer" just for the payments.

Accomplishments that we're proud of

Getting the offline transaction buffer to actually work. Seeing the UI turn red when the network severs, letting the robots queue up their tasks, and then watching a massive block of delayed Solana transactions successfully fire off the second the network reconnects is incredibly satisfying.

What's next

Taking this 2D digital twin logic and porting it onto our real hardware/ physics simulations at our lab!

Built With

Share this project:

Updates

Submission history