↓ Skip to main content
  1. Blog/
  2. Project Ananta/

Introducing Project Ananta: A Distributed Fault-Tolerant Robotic System

Motivation
#

Project Ananta is my first large project under Navikarana Labs. I wanted to push my knowledge further and explore robotics, so I decided to take on something more ambitious.

I’ve been fascinated by distributed systems ever since my blockchain development days, and I wanted to explore how those ideas could be applied to physical systems. That’s how Ananta came about — a distributed fault-tolerant robotic system that explores how multiple embedded controllers can work together, monitor each other, and take over critical responsibilities when something goes wrong.

I believe this kind of technology could have interesting applications in areas such as space exploration, defence, industrial automation, and logistics.

The Idea
#

Even the most reliable systems can experience failures. In systems where continuous operation matters, simply restarting a failed controller or waiting for someone to fix it isn’t always an option.

The idea behind Ananta is to distribute control across multiple embedded controllers rather than relying on a single one. These controllers will work together, monitor each other’s health, and take over critical responsibilities when a failure occurs. The aim is not just to detect failures, but also to understand what went wrong and recover safely whenever possible.

I’ll be using a tracked robotic rover as the first platform to build and test these mechanisms. The longer-term goal is to explore how the same approach could be applied to other systems beyond robotics.

AI-generated concept for Project Ananta

AI-generated concept illustration of the robotic platform envisioned for Project Ananta. Final design may differ.

Initial Architecture
#

System Overview
#

Two controllers will handle motion control, with one acting as a backup. Two other controllers will handle motor actuation, with either capable of taking over if the other fails. Additional hardware will support system monitoring, diagnostics, and safe control handover.

The tracked rover may also feature a remotely controlled camera for live viewing and observing its surroundings. The camera will operate independently of the core control system.

Hardware Selection
#

Here is the hardware I’m currently planning to use for Project Ananta v0.1:

ComponentDescriptionEstimated Price (INR / USD)
2× nRF52840 boardsOne nRF52840 DK and another nRF52840 board, possibly the Adafruit Feather nRF52840 Express, for primary and backup motion control.₹12,000 / $126
2× STM32G431 boardsWeAct Studio STM32G431CBU6 development boards for primary and backup motor actuation.₹1,200 / $13
ESP32 boardESP32-WROOM-32 board for Wi-Fi telemetry, diagnostics, and logging.₹750 / $8
Raspberry Pi PicoRaspberry Pi Pico for fault injection and automated testing.₹500 / $5
CAN interfacesMCP2515 CAN controllers and compatible transceivers, such as TCAN332G or MCP2562FD. Final selection TBD.₹1,400 / $15
2× DC geared motorsEncoder-equipped motors for differential-drive movement. Specifications TBD.₹1,800 / $19
Motor driversDriver circuitry for both motors, including protection and control handover support. TBD.₹950 / $10
Control switching circuitryHardware arbitration, output isolation, and watchdog-related circuitry. Possible components include the SN74LVC157A.₹650 / $7
Track and wheel assembliesTracks, drive sprockets, supporting wheels, shafts, and bearings.₹2,000 / $21
Power systemBattery, regulators, protection circuitry, and independently switchable controller supplies. TBD.₹2,000 / $21
Camera moduleOptional independent camera for live viewing and possible pan/tilt control.TBD
ST-LINK debuggerWeAct Studio Mini Debugger for STM32 programming and debugging over SWD.₹450 / $5
USB cablesPower, flashing, debugging, and serial communication.₹350 / $4
Breadboards and jumper wiresInitial prototyping and subsystem testing.₹500 / $5
Passive componentsResistors, capacitors, pull-ups, and other supporting components.₹400 / $4
Custom PCBsPossible power distribution, switching, and interface boards.₹1,250 / $13
3D-printed chassis and enclosuresRover frame, mounting brackets, and protective enclosures.₹2,000 / $21

Note: Approximate prices in India as of October 2026, based on preliminary estimates. USD values use ₹95 per US dollar.

Total estimated cost: approximately ₹24,950 (~$263 USD), excluding the optional camera, custom PCBs, and 3D-printed chassis and enclosures.

Some components are still being evaluated, and I’ll update the list as the design progresses and individual subsystems are prototyped and tested.

Goals & Experiments
#

Before starting work, I am making a concrete plan and defining milestones for the project. This is important as I tend to get distracted by new ideas and features, so having a clear roadmap will help me stay focused on the core objectives.

Goals for v0.1
#

For the first version (v0.1) of Project Ananta, I am defining the following goals:

  • Build a functional tracked rover with differential-drive locomotion.
  • Develop a distributed embedded-control architecture.
  • Implement redundant motion and motor-actuation controllers.
  • Establish reliable inter-controller communication.
  • Support manual control and preprogrammed movement sequences.
  • Monitor controller health and detect failures.
  • Diagnose failures using system and diagnostic data.
  • Implement automatic failover to backup controllers.
  • Ensure safe control handover without conflicting motor commands.
  • Maintain and synchronize essential state between controllers.
  • Implement watchdogs, timeouts, and hardware safety mechanisms.
  • Support recovery or transition to a safe state when necessary.
  • Develop independent telemetry and logging capabilities.
  • Build a fault-injection system for controlled, repeatable experiments.
  • Measure detection latency, failover time, and recovery reliability.
  • Evaluate system limitations, resource usage, and communication overhead.
  • Document the architecture, implementation, experiments, and findings.

Planned Experiments
#

I plan to develop an external fault-injection system using a Raspberry Pi Pico to introduce controlled and repeatable failures. Some of the experiments I intend to conduct include:

  • Power failures: Cut power to individual controllers and observe system recovery.
  • Firmware hangs: Simulate unresponsive controllers and test watchdog mechanisms.
  • Unexpected resets: Reset active controllers during operation and observe failover.
  • Communication failures: Interrupt controller communication and evaluate system behaviour.
  • Controller handover: Measure the time required for backup controllers to take over.
  • Split-brain scenarios: Test how the system prevents simultaneous control by competing controllers.
  • State recovery: Evaluate whether backup controllers can resume operation with the required state.
  • Repeated fault injection: Run multiple trials to evaluate recovery reliability.
  • Performance measurements: Measure detection latency, recovery time, motor interruption, and system overhead.
  • Failure diagnosis: Evaluate how accurately the system can identify different failure conditions.

I’ll document the results, including unsuccessful recoveries and limitations, as the project progresses.

Links#

To follow the development of Project Ananta, you can check out the following links: