OPENBOT — TURN A SMARTPHONE INTO A SELF-DRIVING ROBOT (3.4K STARS)
Your old phone already has better sensors and compute than most hobby robots — this project just gives it a body.
RoboticsAI
- difficulty
- ●●●○○
- time
- a weekend-plus
- license
- MIT
- repo
- repo ACTIVE3,364 stars
●●●○○ · a weekend-plus · MIT · 3,364 stars · repo ACTIVE
WHAT YOU’LL NEED
- 3D printer + filament — printable parts — files are in the repo
- Electronic parts — full list with part numbers in the repo BOM
- Dev board / microcontroller — runs the project firmware
- Soldering kit + basic tools — one-time buy, serves every future build
Partner
COMPAREE VERDICT
OpenBot is a complete platform: a 3D-printed robot body that mounts a smartphone, Arduino firmware for motor control, mobile apps for driving and autonomous modes, and a machine learning pipeline for training custom behaviours. The person-following demo works on-device; autonomous navigation requires you to collect training data by manually driving the robot, then train a neural network on a PC. The biggest time sink is not the print or assembly — it is getting the training loop working if you want custom autonomy, because you need a Python environment, TensorFlow, and patience to collect enough good data. If you just want manual or person-following control, the project is straightforward. The documentation is thorough and the community is active, but autonomous driving is still a research demo — expect quirks and retraining. The Arduino code assumes specific motor driver pinouts, so verify your hardware before ordering. This is a serious robotics platform, not a kit; if you have never wired a motor driver or debugged serial logs, start with the basic body and manual control first.
IN THE REPO
NOT IN THE REPO
- —3D files for multiple body variants (standard, RC truck, Multi-Terrain Vehicle) are in the repository.
- —Arduino firmware for motor control and sensor interfacing is included.
- —Android and iOS controller apps are available, with person-following and autonomous navigation modes.
- —Python training pipeline for custom driving policies is documented, using TensorFlow.
- —Bill of materials lists Arduino Nano, motor driver, motors, ultrasonic sensor, and phone mount — no pre-made kits.
- —MIT license — unrestricted use including commercial.
Can I build this?
Build at your own risk. Projects involve tools, electronics and sometimes mains voltage — follow the creator’s safety notes.
Partner · KickstarterHeyGears G1: 10M+ colors and transparent parts in one print, plus UV printing on flat objects. Figures, parts and labels — no painting.
Videos
Creator video from payload; title and length not provided
Gallery
Start here
Navigation into the creator’s own docs — we don’t rewrite the guide, we route you to the source.
- 1.Pick a body variant (Standard body for flat surfaces, RC truck body for bigger wheels, MTV body for rough terrain — STLs are in the /body folder)
- 2.Order electronics (BOM is in the repository README — verify motor driver pinout matches the firmware before ordering)
- 3.Print and assemble (Assembly guide in the docs folder — chassis first, then mount motors and electronics)
- 4.Flash Arduino firmware (Firmware is in /firmware/openbot_nano — use Arduino IDE, select Nano board and correct COM port)
- 5.Install mobile app (Android app on Play Store, iOS app build instructions in /ios — pair phone via Bluetooth and test manual control first)
- 6.Optional: train a driving policy (Training pipeline in /policy — collect data by manually driving, then train with TensorFlow on a PC; expect several iterations)
Resources
Documentation, files and community threads for this build — we link straight to the original sources and never rehost the creator’s files.
Partner · KickstarterCORE POWER BANK S: 0.2" thin, 2.8 oz, 5000 mAh with 22.5W fast charging. Semi-solid battery, carbon fiber, IPX7 waterproof.
KNOWN ISSUES
- Motor driver pinout varies by supplier — the firmware assumes specific pins on the L298N; if your board is wired differently, you will need to edit the Arduino code before it moves.
- Phone mount fit is tight — print a test mount first if your phone has an unusual case thickness, or you will reprint after full assembly.
- Person-following works well indoors with good lighting; autonomous navigation is a research demo and requires patient data collection and retraining — do not expect it to work first try.
- Battery voltage matters — 2S LiPo gives better speed than 6× AA, but firmware expects ~7.4V; if you use a different pack, check that motors do not stall or overheat.
- Training the ML model needs a CUDA-capable GPU or a lot of patience on CPU — budget half a day for environment setup if you have never used TensorFlow.
- The repository is active and structure has changed — old forum posts may reference moved files; always check the current README for file paths.
Can I use an iPhone?
Yes — iOS app build instructions are in the /ios folder of the repository. The Android app is more polished and available on the Play Store; iOS requires building from source.
Do I need to train a model to use it?
No — manual control and person-following work without any training. The ML training pipeline is only needed if you want custom autonomous behaviours.
What if I do not have a 3D printer?
STL files can be sent to an online print service — the body is not complex and most services will print it for $20–40 depending on size and material.
How fast does it go?
With TT motors and 2S LiPo, expect ~0.5–1 m/s — fast enough to follow a walking person, not fast enough to chase a running child. Speed depends on motor gearing and battery voltage.
Can I add more sensors?
Yes — the Arduino firmware has spare pins and the phone has GPS, accelerometer, and camera; community forks have added LIDAR and encoders. You will need to modify the firmware and app.
Community builds
No community builds yet — be the first, we feature the best ones.
Discussion3
FROM THE COMPAREE TEAM
The project includes a full ML training pipeline — you drive the robot manually to collect data, then train a neural network to replicate your driving. If you built one, what environment would you train it in first?
Atharv More29d ago
Haven't gone through the actual project build but seeing true potential in your diy section I hope the ignorant mindsets will soon grasp your efforts and quality🙏
CompareeTEAM29d ago
@Atharv More Thanks Atharv, that means a lot. The DIY section is the part we care most about — every project gets checked for whether the files are actually there before it goes up, because half the fun is finding out a repo is missing the one part you need. If you ever do build the OpenBot, tell us which phone you used. The old-phone angle is the whole point of that one and we'd love a real data point.
OpenBot project
OpenBot originated as a research project to make robotics and autonomous driving accessible using commodity hardware — smartphones already have the sensors and compute that cost thousands in traditional robots, so the project focused on giving them a body and a training pipeline. The repository is actively maintained with contributions from a global community.
DISCLAIMER
- Comparee is not the author of the projects featured here. All rights to each project belong to its creator — every page links to the original source, and we never host creators’ files.
- Information is provided without warranty and may become outdated as projects evolve. Prices are indicative bands only — always check the creator’s parts list for current costs.
- Building and operating any project is at your own responsibility. Protective equipment, safe workshop practice and compliance with local regulations are the builder’s responsibility.

CompareeTEAM1mo agoedited
Practical notes from our verification: the repository has 3.4k stars and is actively maintained under the MIT license. The 3D files, Arduino firmware, mobile apps (Android on Play Store, iOS buildable from source), and Python training pipeline are all present. The person-following demo works on-device; autonomous navigation requires collecting training data and running TensorFlow on a PC. The single biggest decision is battery — 2S LiPo gives better performance than AA cells, but firmware tuning may be needed if voltage differs from the default 7.4V assumption. No pre-made kit exists; you source and assemble all electronics yourself.