ZeroBot - Raspberry Pi Zero FPV Robot

by Wingman94, published

ZeroBot - Raspberry Pi Zero FPV Robot by Wingman94 May 29, 2017
10 Share
Download All Files

Thing Apps Enabled

Order This Printed View All Apps


Design Tools

Fusion 360

Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

40698Views 3318Downloads Found in Robotics


More info: https://hackaday.io/project/25092-zerobot-raspberry-pi-zero-fpv-robot
Video: https://www.youtube.com/watch?v=16rxNzQvfYY&t=4s
Raspberry SD Image: https://hackaday.io/project/25092-zerobot-raspberry-pi-zero-fpv-robot/log/62102-easy-setup-using-sd-image

ZeroBot is a Raspberry Pi Zero W based robot. It can be controlled using any computer or smartphone via a web browser. The integrated camera module makes for a low latency video stream. In addition the Raspberry Pi acts as a Wifi access point, so no router is required. The parts for the hull as well as the wheels can easily be printed on any regular 3D printer.

Some of the key features are:

  • Compact CAD design with 3D printed components
  • Analog control via a joystick (and multitouch)
  • Simple battery solution using only a standard power bank
  • Low latency streaming (~0.3s)
  • Easy and cheap to build using widely available components

Print the two shells with the inside facing the print bed. You will need to include a lot of support material. Simplify3D works best for this, but Slic3r or Cura with optimized settings should be fine as well. I used support with lower density for the most part and higher density for the last 8 layer up to the part. This saves a lot of filament.
The tires should be printed with Ninjaflex or something equivalent to ensure good grip.
Everything else can be printed in PLA.

More from Robotics

view more

All Apps

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Print through a distributed network of 3D printing enthusiasts from across the US, at a fraction of the cost of the competitors. We want to change the world for the better through technology, an...

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

3D Print a wide range of designs with Treatstock. Easy to use tools to get the perfect result. The global 3D printing network that connects you with high-quality and fast working print services nea...

App Info Launch App

Very cool design! Mine works great! Only flaw is the camera is filming upward and another wheel would be needed to correct that... Also, adding a charging port at the back is mandatory, Ive simply drilled a hole for mine!

Thanks, glad you like it!

When I first boot up my pi, the right motor goes forward full speed until the pi finishes booting and starts running the program. Is there a way to keep this from happening? I'm using a L298N motor driver since I had one on hand. Currently I have a 3s lipo powering the L298N and then the 5v output from the L298N powering the PI

Edit - Figured out that GPIO 4 defaults to high on boot. So switched to using GPIO22 for this wire and in the code as well.

Good to hear that you could solve your problem. I was skeptical that the regulator on your motor driver board can power the zero, but it looks like it only draws around 300 mA which should be fine.

i am trying to rotate this image 180. Has anyone had any luck with this?

Have you tried editing the rc.local file?
You need to remove "-hf" and "-vf" from the mjpg-streamer line

I gave this a try and it worked perfect. Thanks for putting this software and project out there. The neighbor kids have been loving the robot

no i have not tried that. I kept trying to edit the HTML file. I could flip the image but the touch joystick on your phone would then brake. I did not think of try the rc.local. Thanks for the advice. I will give that a try tonight

for makers live in Japan
I found the yellow motor on Amazon.co.jp: https://www.amazon.co.jp/dp/B06WV85TPL?psc=1

how do i charge it? i don't see any connectors

There is no real charging port yet. You have to unscrew and open the case to charge the power bank.

Hi do you have a wiring diagram? I can't see by the picture where to solder. Cheers

Looks like you removed the inner axle stubs from the motors. Did you just cut them off?

Yes, I used a small saw but pliers should work as well.

i like the complete disinterest of the cat in the video :)
cool little bot dude.


I am using Slic3r and have many problems with removing the support.. My attemps all failed...

Is there an STL with a better support construction? Thanks for the great project!

Have you tried changing the support settings in Slic3r? Maybe print something smaller first before trying the robot.
I think slic3r has been getting quite good with supports, adding manual supports to the stl file will probably make it worse.

What Powerbank did you opened exactly to get that circuit board out of it?
I looked for some and i can´t find one with that board.

I bought it a few years ago for 4€, now its sold for 16€ on Amazon. Any other cheap powerbank will probably do just fine.
You could also get rid of the circuit board entirely and just use a step-up converter to get to the 5V.

What's the name of the Android app that you used to control the zerobot? Thanks

You can use any web browser you like. There is no specific app needed.

What is the between the yellow one and pink thing. (Its green) I don't understand

Its the electronics board of the power bank. It supplies 5 V to the Raspberry from the 3.7 V battery.

I absolutely love this model and am working on printing one now. Is that a switch on the back side? I didn't see that in your parts list. Do you know what switch you used?

Glad you like it! Yes, that's the on/off switch. It measures 11.5 x 6 mm, but I don't have a direct link on where to buy it.
In case you haven't found it already, here is a link to the 3D model: http://a360.co/2rV2NQo

I just can't seem to get the motors to turn!

everything appears to load
i see the ui
but the motors won't turn

i've reloaded from scratch. i've tried multiple motor drivers

i just don't get it

To rule out the motor drivers you can use a multimeter to probe the GPIO pins. The voltage should be between 0 and 3.3 V.
If the voltage doesn't change while moving the controls, it must be a software problem.
If you are using Chrome you can try pressing ctrl+shift+i and look if there are any major errors in the console when the html is opened.
I am also thinking about putting an .img image of the sd card online, that would be helpful if something goes wrong with the tutorial.

ok time for me to admit being an idiot

i didnt realize the numbered gpio pins on the pi weren't as easy as counting from pin 1

:) These things happen, glad you got it to work.

Do you think you can share the CAD files for easy remixing?

EDIT: Ignore this; saw the link to F360 on hackaday.

Nice project. Currently working on something very similar. Keep it up.

Can you post your settings for supports in S3D? With my settings the support material get fused with the part and I don't want to waste more filament on a bad print :/.

I added a screenshot of my support settings to the thingiverse page. I hope this helps!

I may be missing something, but the filler/camera mount. Is there a model or did you mention what you made it from someplace? This is really cool, and I am thinking of popping one together and letting some kids program on it to make it move and do stuff.

You are absolutely right, I forgot to export that part. It is online now.

Thanks... In the pictures, it looks like the same material you used for the tires. Sure it's not, but what filament do you use for the tires? Is it NinjaFlex, or is it one of the other TPE/TPU filaments?

Quote from the description:
The tires should be printed with Ninjaflex or something equivalent to ensure good grip.
Everything else can be printed in PLA.

you know the game rainbow six siege??
this looks like the twitch drone

Yeah, I've played the game during a free weekend. Indeed it looks a bit like my robot.
I might have to include shock darts in the next version. ^^

Most excellent model.

I think my kid and I will tackle this build next month. Any chance of getting a wiring diagram?

Thanks so much for so many awesome projects!

Thank you!
I hope that I will have a wiring diagram and a basic tutorial ready by the end of the week.

Wow, really nice and well made! Gonna make one with my son.
Is it possible to connect it to the home wifi or do you have to use it in adhoc mode? Would be really fun to control it over internet. Maybe it would be possible to add a login screen for security then.

Thanks! Connecting it to a wifi router is very simple. The adhoc mode is just an option.
Using it over the internet might be a bit more complicated.

Perfect. Aslong as it's possible to hook it up to home wifi I can VPN to my home network and connect to it. Shouldn't be a problem. Higher latency ofcource. But should be pretty straight forward.

So cool! How well do the printed wheels grip..perhaps a rubber band over them or maybe a groove for an o-ring for extra grip
Disregard..found this entry on your hackaday post: The wheels are designed to have tires made with flexible filament (in my case Ninjaflex) for better grip.

Very cool little robot and the fact it does it's own wifi ap is very neat

Great design and build!

Thank you, I appreciate it!

Will the new Pi Zero W fit where the regular Zero was before?
Also..is there a way a new revision could house the Orange Pi Zero? Much smaller, same IO's but with a quad core (a bit overkill sure)
And how about a V2.0 with space for putting in 2-3 18650's in parallel to increase run time

Ah crud...just realized the Orange Pi zero doesn't have the ribbon cable for the camera...

The robot already uses a Pi Zero W, is there an even newer version?
The orange Pi could probably fit into the robot ,as well as other batteries.
I am thinking about making a second version but I don't have time for this at the moment.
The CAD files are available on Hackaday.io, so you can customize the 3d printed parts yourself.

no, I realized it said to use the RPi0 W sorry
There is an OPi0+2 that I have ordered...I think it has the connector to the camera


Great design...I just glossed over you said use the W version already (pays to drink coffee before posting..hah)