Sidewalk delivery robot · India edition

BHARAT-BOT

Built for potholes, street dogs, cows and thieves

Sidewalk delivery robots are built for smooth pavements. This project drops a standard one onto a simulated Indian street, watches it fail three ways, then sends Bharat-Bot, an India-adapted design, down the same street and 200 random ones.

Digital twin

Drive it yourself, in 3D

The whole simulation runs in your browser: the same street, the same dogs, cow, auto-rickshaw and thief, moved frame by frame by the Python simulation. Pick a test, switch between the standard robot and Bharat-Bot, and watch the control room decide.

  • Four tests: the full delivery, potholes, street dogs, theft
  • US robot vs Bharat-Bot on the same street
  • Control room: every decision as SENSE → AI → SAFETY → ACT
  • Click the robot to take it apart into labelled parts
  • Sound on: barking dogs, motors, the auto-rickshaw, the siren, and a voice that explains each moment

About 6 MB. Works on a laptop or a phone with a recent browser.

The 3D twin: Bharat-Bot stopped for street dogs, with detection boxes, the control-room log and the speed panel

Watch

Three minutes, start to finish

The film covers the problem, the standard robot's three failures, Bharat-Bot's full run with a control-room HUD, the results, the safety design, the cost in rupees and what we still don't know. The one-minute cut is for sharing.

The explainer film · 3 min · 1080p · download (175 MB)
Highlights · 1 min · the problem, five big moments, the scorecard · download (61 MB)

The videos are too big for a git repository, so they are attached to the GitHub Release with the raw Blender renders (720p, no sound):

The problem

US sidewalk robots work because US sidewalks are smooth

A small white delivery robot on a smooth suburban sidewalk, with a lawn and a house behind it
The standard robot at home: kerb ramps, an even pavement, no strays.

Robots like Starship's have made more than 10 million deliveries on pavements like this. None of the makers publishes how deep a pothole its robot can cross or how much water it can wade through, and an Indian street asks for both, plus a plan for dogs, cows and auto-rickshaws.

Every number on this page is sourced or marked as an estimate in research/india-delivery-robots.md (66 sources).

2,385
deaths linked to potholes in 2024
MoRTH data · Parliament reply
37 lakh
dog bites in 2024, from about 1.5 crore street dogs
Health Ministry · Livestock Census 2019
44%
of Delhi's roads have no footpath
IIT Delhi + UCL study, 2022
78%
of audited speed breakers break the 10 cm rule
Arappor Iyakkam audit, Chennai 2024

Three tests

Drop a US-style robot onto an Indian street

The standard robot is modelled on today's sidewalk robots: 9 cm wheels that climb 6 cm, no way to judge water, a locked lid with no alarm, and no plan for dogs or traffic. Bharat-Bot drives the same street.

Test 1 · Broken road

Potholes and puddles

The standard robot with its front wheels sunk in a pothole, stamped STUCK
✕ Stuck Standard robot. Its front wheels drop into an 11 cm pothole. It can only climb 6 cm, so the delivery ends there.
Close-up of Bharat-Bot's big rocker-bogie wheels wading slowly through a shallow waterlogged patch
✓ Through Bharat-Bot. A depth camera sees the hole 7 m ahead and the planner steers round it. 32 cm wheels on a rocker-bogie climb about 18 cm, and sealed motors wade up to 8 cm of water and refuse anything deeper.

Over 200 random broken stretches: standard robot 58% got through, Bharat-Bot 92%.

Test 2 · Street dogs

A pack of three

Street dogs chasing the standard robot past a tea stall, stamped BLOCKED
✕ Blocked Standard robot. It keeps driving, the pack keeps chasing, and its stop-start retries keep the dogs excited.
Bharat-Bot standing still in calm mode while the control-room overlay tracks three dogs around it
✓ Freezes Bharat-Bot. It stops, silences its motors and dims its lights: nothing moving, nothing to chase. Once the dogs lose interest it creeps past. No ultrasonic repellers, because there is no evidence they work.

Over 200 random packs: standard robot 0%, Bharat-Bot 100% (see the caveat under the results).

Test 3 · Theft

A thief tries to lift it

A man carrying the standard robot away into a side lane, stamped STOLEN
✕ Stolen Standard robot. No tamper sensing: it is lifted and carried into a side lane, food and all.
Bharat-Bot's theft alarm going off, with red rings around the robot and a man beside it
✓ Alarm Bharat-Bot. The lid opens only with the customer's OTP. Lift or tilt the robot and it sounds a 110 dB siren and sends a photo and live GPS to the operations centre.

Over 200 attempts: standard robot 0%, Bharat-Bot 98%. A standard robot given a lid siren scores 100%, so any robot can have this one.

And the rest of the street

A cow, an auto-rickshaw, the gate

Bharat-Bot waiting beside a cow standing in the lane, its planned path curving round the cow
Cow in the lane, auto-rickshaw behind. Going round the cow needs the middle of the lane, so Bharat-Bot waits at the edge until the auto has gone by, then passes.
A customer at the apartment gate taking the food out of Bharat-Bot
Delivered. OTP at the gate, food upright and sealed: 69 m in 87 s, past six road hazards, the dogs, the cow and a theft attempt.

The India-adapted design

Meet Bharat-Bot

  • 32 cm wheels on a rocker-bogieKeeps all six wheels down and climbs about 18 cm.
  • Depth camera + LiDARSees holes and standing water, not just obstacles.
  • Freeze protocol for street dogsStop, go quiet, let them lose interest. No ultrasonics.
  • OTP lid + tamper alarmLift or tilt it: siren, photo and live GPS to the ops centre.
  • Traffic-aware plannerKeeps left and yields before it steps into the lane.
  • Sealed for the monsoonIP67 motors, wades up to 8 cm, refuses deeper water.

Results

Not one lucky run: 200 random streets

The film shows one fixed street. sim/evaluate.py then draws 200 random streets for every test from the ranges in the research (pothole depth and spacing, rain, how fast and how long dogs chase, the auto-rickshaw's speed, where the thief waits) and runs every robot on the same 200.

Bharat-Bot · full delivery
92%
delivered on 185 of 200 streets · 95% interval 88–95%
Standard robot
0%
0 of 200 · 95% interval 0–2%
Upgraded standard robot*
0%
0 of 200 · 95% interval 0–2%
Success rate by test, 200 random streets each
Full delivery: restaurant to apartment gate (70 m) with potholes, water, a speed breaker, a dog pack, a cow with an auto-rickshaw, and a thief on half the streets.
  • Standard robot (from the film)
  • Upgraded standard robot*
  • Bharat-Bot
Full deliveryeverything on one 70 m trip
0%
0%
92%
Broken roadpotholes and puddles, 12 m
58%
68%
92%
Street dogsa pack of three, 16.5 m
0%
0%
100%
Thieftries to lift the robot, 13.6 m
0%
100%
98%
The thin line is the 95% confidence interval (Wilson): where the true rate lies, given these 200 streets.
* Upgraded: the film's standard robot given the best specs in the research (climbs 12 cm, wades 5 cm), a siren on the lid and predictive braking for dogs.
Show these numbers as a table
Test (200 streets each)Standard robotUpgraded standard robotBharat-Bot
Full delivery0% [0–2]0% [0–2]92% [88–95]
Broken road58% [51–65]68% [62–75]92% [88–95]
Street dogs0% [0–2]0% [0–2]100% [98–100]
Thief0% [0–2]100% [98–100]98% [96–99]
Which feature matters most?
Take one feature away from Bharat-Bot and rerun the full delivery on the same 200 streets: deliveries lost out of every 100.
Freezing for street dogsassumes stillness calms dogs (not yet tested)
−53
Tamper alarm on the lida thief tried on half the streets
−44
Seeing potholes and waterwithout it, 14% of runs drive into deep water
−8
Yielding to trafficconflicts with the auto go from 6% to 31%
−6
Rocker-bogie suspensiona plain chassis coped with these holes too
0
Show these numbers as a table
Bharat-Bot without…Full-delivery successChangeWhat goes wrong instead
nothing (complete)92% [88–95]——
the dog freeze protocol40% [33–46]−53 [−60, −46]runs out of time in a stand-off with the dogs
the tamper alarm48% [42–55]−44 [−51, −37]stolen
pothole & water perception85% [79–89]−8 [−11, −4]drives into water over its wading limit
traffic yield87% [82–91]−6 [−9, −2]touches the auto-rickshaw beside the cow
the rocker-bogie92% [88–95]0 [0, 0]nothing
perception and rocker-bogie84% [78–88]−9 [−13, −5]drives into water over its wading limit

Biggest caveat. The dog result rests on one hypothesis from the film's model: a still, silent robot makes a pack lose interest about five times faster than one that has merely stopped. If any still robot calmed dogs that well, the upgraded standard robot would get past the pack on 21% of streets instead of 0%. A siren on the lid is enough to stop a thief; dogs and broken, flooded roads are where Bharat-Bot's design wins. Full write-up, with seeds you can replay: research/evaluation.md.

Safety architecture

AI suggests. Safety decides. Hardware protects.

The same rule as GH-01, Sumith Shridhar's greenhouse digital twin. The AI may propose anything; a safety controller with hard limits approves or vetoes it; and hard-wired cut-offs still protect people and the robot if every computer fails.

1

AI suggests

  • Detects dogs, cows, potholes, water, people and autos
  • Proposes a path and a speed
2

Safety controller decides

  • Dog within 6 m → stop
  • Unknown water → no-go
  • Person within 1.2 m → hold
  • Link lost for more than 2 s → hold
3

Hard-wired cut-offs protect

  • Bumper switches and an e-stop
  • Tilt over 25° cuts the drive
  • Battery over-temperature cut-off
  • Mechanical lid lock

Every decision in the simulation is logged as SENSE → AI → SAFETY → ACT, and the film's control-room HUD replays that log frame by frame.

Honest economics

Can it pay for itself?

Parts, paper bill of materials
₹1.4–3.1 lakh

against ₹8–12 lakh landed for an imported Starship-class robot.

Where it can win

Only when it's busy. Gated societies, campuses, hospitals, night and monsoon hours. Not open streets, where a courier is cheap.

Cost per delivery for a ₹2.5 lakh robot
by deliveries per robot per day, against what a courier costs
courier ₹40–80
₹76
₹41
₹31
₹20
Show as a table, with a ₹4 lakh certified robot
Robot8 / day15 / day20 / day30 / day
₹2.5 lakh (prototype-grade)₹76₹41₹31₹20
₹4.0 lakh (pilot-grade, certified)₹104₹55₹42₹28

Estimates, not quotes: a 3-year life at 330 days a year, maintenance at 10% a year, 5% a year for losses, ₹60 a day for power, SIM and cloud, and one remote operator (₹25,000 a month) for every 6 robots. A courier costs "often under ₹50", roughly ₹40–80.

Honest limits

What we don't know yet

  • Everything here is simulated. The street ranges come from the research, but no value was measured on a real Indian street. The physics is kinematic (no wheel slip, tipping, battery or sensor noise), and perception is perfect for the robots that have it.
  • No verified open-street sidewalk-robot pilot exists in India yet.
  • The dog protocol is untested with a real robot. It follows expert advice (don't run; stop and let the dog lose interest), and ultrasonic repellers show no proven effect, so Bharat-Bot doesn't use them.
  • No robot maker publishes a wading depth. Knee-deep floods are a no-go: Bharat-Bot stops and calls an operator.
  • Big packs and dense crowds: hold and call a remote operator.
  • Costs are paper estimates.

Where Bharat-Bot still fails in the 200 runs

  • On 13 of 200 full deliveries, water deeper than its 8 cm limit covered every way through, so it stopped 1 m short and called an operator. That is the intended safe refusal.
  • Once in 200 it drove into a person who stepped inside its stopping distance: it stops for people in its path but doesn't predict where they walk.
  • Its wheels still clip potholes on most runs (2.4 per 100 m, against 3.9 for the blind standard robot). The suspension, not the planner, makes that harmless.
  • Its pothole swerves don't check for traffic behind, so it made the auto-rickshaw brake or pass close on 6% of passes.

How it's built

Python → Blender → Remotion

01 · sim/

Simulate in Python

A lattice path planner, rocker-bogie and rigid-chassis terrain kinematics, a dog pack that alerts, chases and loses interest, a thief, a cow, an auto-rickshaw and the customer. The runs are deterministic, so the film and its HUD come from the same run.

02 · Blender 5.2

Build and render

sim/build_scene.py turns a simulation run into an animated shot: procedural robots, people, auto-rickshaw and street, Poly Haven textures, Quaternius dogs and cow, rendered with EEVEE.

03 · video/

Cut the film in Remotion

React composes the film: the control-room HUD is drawn from per-frame telemetry, the results from evaluation.json, and the tanpura-drone music is synthesised in Python.

04 · docs/twin/

Replay it in 3D

The digital twin is three.js with no build step. sim/export_twin.py writes every agent's pose on every frame, sim/export_twin_models.py exports the Blender models, and the browser rebuilds the road surface from the simulator's own terrain function.

# the four simulations, with their event logs (about 25 s)
python sim/simulate.py all
# 200 random streets per test and robot, writes research/evaluation.md (about 5 min)
python sim/evaluate.py
# one seeded street, any robot
python sim/simulate.py bharat_full --seed 7 --robot baseline

Credits

Assets, tools and inspiration

  • Textures: Poly Haven (CC0). Asphalt 02 and Red Dirt Mud 01 by Rob Tuytel, Road Damaged 2 by Dimitrios Savva, Red Laterite Soil Stones and Painted Plaster Wall by Amal Kumar. Sky: Kloofendal 43d Clear Pure Sky by Greg Zaal.
  • Dogs and cow: Quaternius via poly.pizza (CC0): Husky, Shiba Inu, Cow.
  • Everything else on screen (both robots, people, auto-rickshaw, shops, poles and wires) is procedural.
  • Music and sound effects: synthesised in Python (video/scripts/make_audio.py; the twin's in sim/export_twin_audio.py). The twin's voice is the visitor's own text-to-speech.
  • Fonts: Rajdhani and JetBrains Mono (SIL Open Font License).
  • Built with Python, Blender 5.2, Remotion, three.js (MIT, for the 3D twin) and Claude Code.
  • Inspired by GH-01, Sumith Shridhar's greenhouse digital twin, and its rule: AI suggests, safety decides, hardware protects.
  • Licence: the code is MIT; the assets keep their own licences (all CC0).