MakerBot Print is our newest print-prepration software, which supports native CAD files and STL assemblies,
allows you to interact with all your printers via the Cloud, and many other exciting new features.

Download Now


Camera Gimbal

by fhuable Jan 23, 2019
Download All Files

Thing Apps Enabled

Please Login to Comment

Gracias por el proyecto, la verdad que está muy conseguido, aquí el resultado.

I might try to use this to make a moving head spotlight

What size print bed is required for the largest part on this?

Awesome, thank you :)

Good design but using an inductive sensor as a home switch is a bad idea. Too expensive and low precision. A simple IR LED with a photoresistor or a hall effect sensor with a magnet would be better and cheapper.
Also, consider using a planetary gearbox instead the giant gear. If your camera pointing up and you remove the power of the motor the camera will fall. Too risky. A planetary gearbox will lock the output gear and the motor doesn't need to stay powered, saving energy and preventing driver and motor overheat.


There are many possibilities for homing switches and they all have pros and cons. The inductive proximity sensors are quite adequate for this application (and given a stable ambient temperature they are quite repeatable). They don't require additional electronics, are easy to find and cheap (I've seen them for as low as $2).

A planetary gearbox would have the advantage of being smaller in size, however, it is just as backdrivable as the simple gear if it uses the same transmission ratio. It is true that if the power is lost, a heavy camera that is mounted unbalanced, will sag down. This is helped somewhat by the back-emf of the motor (think electric braking). In any case, the best performance is achieved by mounting the camera so it is in balance. Once the pivot point is in the desired location relative to the film plane I suggest to use weights to balance the axis. That way you get the same torque to work with tilting up and down.

Hey fhuable, i printed all parts and wow...
All fits perfectly together. Just print, assemble and now i starting coding!
Thank you so much for sharing this!

Glad you like it :)

For those who want to build it but aren’t sure about the components - this is /most/ of what you need in a pretty convenient package. you still need to buy stepper motors, but those are easy to source. if you intend to use it with dragonframe you need to pay attention to the pin outs, there are some instructions for that on the dragonframe site.


What is the maximum pitch and yaw speed that this can do? I am interested in using this to track rocket launches, but of course rockets can sometimes move a little quickly :)

Here's a excerpt from a discussion I've had a while back about this:
"Regarding your questions, I am looking at the motor config and it appears the x and y axis are currently configured with a maximum rotation rate of 6000 deg/min and an acceleration of 100 deg/ss.
Now, I didn't optimize it for speed since I use it for timelapse and I am lugging around a heavy DSLR.
I guess the most critical part is the very beginning of your timeline with an intense acceleration. You can do the math
yourself but I have a feeling you'd be pushing it to it's limits. There is a large wiggle room when you use the gimbal
for timelapse. You can pretty much print it and stick any kind of motor that you find in your drawer to it and it will probably
work fine. But once you start optimizing it for maximum acceleration, a lot of factors will suddenly have a huge impact.
The motor specs, the driver, supply voltage/current, even your print settings optimized for rigidity, the mass of your camera, etc.
Could you get away with a lightweight gopro or do you need to use a heavier camera. If the latter, could you move a mirror instead of
the camera itself?"
Hope this helps.

Great project!
Can it be use as star tracking device for astrophotography?

It would be a little tricky because typically telescopes have an equatorial tracking mount, meaning the rotation of the rig is aligned with the rotation of the stars. While this could definitely track a particular star if you write the code to do so, it won't be able to track the rotation unless you mount the rotational axis to align with the Earth's rotation (look up "barn door trackers" for some guidance on how that's done). So basically, this would be great for tracking a single star's position, but bad for tracking rotation (roll) unless you mount it right. I am also interested in building this at some point for the same use case, so I'll figure that out some day if I get the time!

I'm no astro-photographer but I'm thinking most tripods would be sufficient to tilt the rig the required amount ?

Thanks. Not sure. Haven't tried to track stars with it. Why don't you have a go and let us know what you find?

hi!what software did you use to create gcode for grbl?

I was just using a bunch of python to generate the gcode. Nothing fancy. G1 over here, G4 here for a bit, was using the coolant pin to trigger a relay for lights and python-gphoto2 to setup and trigger the camera over usb.

Thank you for this awesom design. I did a few modifications.
You can add to the supported Cameras all Canon DSLRs from the smallest to the 5DmkIV. I have the 5DmkIV and 70D. The 5D is one of the biggest.

Thanks for letting me know. That's great news. The 5D is indeed pretty large.
What modifications did you make?

I've modified "CamDovetail" and "DoveTailStop" together in one piece so you dont have to glue or screw it together. I've also extend the long holes in "CamDovetail" to get a larger adjustable range. And said that, I would screw the Dovetail the other way round on the "Camleg" becaus the balancing will be better.
To "SpurgearM!x16fat" I've added the flat side into the holes for the motoraxis so they just secure themselfes via friction without a screw. I've printed them at 100% infill so in that way they last very long and dont need to be replaced.

The other changes aren't that interesting because they are custom for my needs. I've removed the sensorholder on "motorMountB" becouse I didn't use endstops.
And I've designt my own "base" so I can use with different screwholes it on a tripodhead or my slider. And it has a hole to fit perfectly a M10 60mm hexscrew as the axis.

Sry for bad english.

Wow, you've really made it your own. I'd love to see your make. Care to post some pictures?

added to description :)

finally, I printed :)) - now assemble. Do You share fusion360 project files?

Looks awesome! I'm not sharing the Fusion files at this point but assembly is pretty straight forward. Check out my videos. Should be fairly clear where everything goes.

Now is complete :) and working!. Now I have to do a bit of modification. Make a slider.

IMO, this is the best project on Thingiverse. I'm working on printing it now. May I ask what your design process was when doing the gears? Any thoughts on using belts instead of direct drive? Are you willing to share the original CAD? I'd like to customize to add a guidescope to enable object tracking. I understand if no, I'm impressed with the effort that you put into this design.

Thanks :) Fusion 360 has a plugin that can generate involute gears. It's very nice and makes the process rather easy. I think timing belts would also work great and make the rig much quieter. At the time I found it easier to print gears for two reasons, 1) the timing pulleys for the most popular belts (GT2) are a bit difficult to print with a 0.4mm nozzle and 2) I didn't want to find/order/wait for the right timing belts.

What are this for "XLR type sockets" i dont see them in the first video and i really dont understan how it works from what i can see in the main image. thanks

I am using mini-XLR plugs as a means to connect/disconnect the cables to the rig. Being able to unplug the cables is really useful as opposed to having everything permanently wired up. You can get a glimpse of them in this video if you fast-forward a bit https://www.youtube.com/watch?v=4wD33VfrTi4

Thank you for this awesome design !! I'm printing the parts right now, and I hope my 5D mak II will fit with the cables connected. I also would like to add threaded holes under the base to attach it on an X axis, would you share the F3D project ?

If you want to use 608 bearings instead of the 6000 series deep grooves, these adapters will help: https://www.thingiverse.com/thing:3424047

608 adapters for "Camera Gimbal by fhuable"

The Nema 17 17HS8401 is strong enough to move the DSLR camera?

Yes. Easily.

Yes. Easily.

thanks guys, now i can proceed... i will post the make once finished

Boy, am I stuck..

I have almost built this unit, and still love it.. here is the thing, I have no idea as to connecting the stepper motors up, what the circuit is supposed to be, program in the Raspberry Pi, the entire part that is not listed here.. and i hope I am not too much of a pain to ask if it is available, otherwise I have basically built a tilt pan base for a camera.. and that is it..

it fits my Nikon D850 quite well

Looks like the project laserkil mentioned below explains everything pretty well.

Thanks for letting us know that your camera fits. That makes two.
D3400, D850.

I'm not the creator, but I'm about at the point where you are and I'm using this tutorial for Arduino control of the stepper motors: https://howtomechatronics.com/tutorials/arduino/diy-motorized-camera-slider-pan-tilt-head-project/

Hello, and wow... I have printed all of the parts that you had in this kit, I have also ordered the non printable items, and will b happy to say that when it is assembled it should be awesome.

I do have one question, it is connecting it up to something, for it to work, I have a few Raspberry lying around with touch screens.. will they work withit, or do I need others,, and the code.. I can do electronics quite well, I have not ever done programming.. The design is really great.. thank you for sharing it

You'll need 1) 2x stepper motors 2) 2x stepper drivers 3) a motion planner (pulse generator).
The stepper motors 1) are obvious and there are a range of solutions out there that can be used for 2) and 3).
The simplest solution would be an Arduino Nano with Grbl installed connected to two DRV8825-style drivers. This would fit on a single breadboard and cost a few dollars. You could also use a RAMPS board (3D printer mainboard) if you have a surplus one. Or, the most deluxe version, Mach3 on a PC connected to 'real' stepper drivers. Depends on how 'nice' you want to make it.
My setup is a Nano (Grbl) connected to DM422 style drivers. And a Raspi to send gcode over USB-serial.

In this is the nano the 'motion planner'?

Yes. It takes a gcode program and generates the pulses to control the stepper drivers. https://github.com/grbl/grbl/wiki/Connecting-Grbl

I have 608 bearings on hand but they're undersized for the design, so I'll print an adapter for the pieces. Great design, I'm excited to get it working!

Edit: Looks like I'll also have to reprint the main M1x160 gear to fit these bearings.
Here's the modified version and the other adapted pieces if anyone chooses to go this route: https://www.thingiverse.com/thing:3424047

And if it helps, here's the pieces I've purchased online:

SpurGearM1x16 stainless steel replacement: https://www.amainhobbies.com/traxxas-hardened-steel-mod-1.0-pinion-gear-w-5mm-bore-16t-tra6489x/p661892?v=628268

2Pcs Inductive Proximity Switch (LJ12A3-4-Z-BX): https://smile.amazon.com/gp/product/B07GDGPSVW/

Here's a link I found to the 6000 series deep groove bearings: https://www.bearing-king.co.uk/bearing/6000-2z-skf-shielded-deep-groove-ball-bearing-10x26x8mm/4167

Or if you'd rather go for the 608 bearings (20pk): https://smile.amazon.com/gp/product/B07216D1SZ/

608 adapters for "Camera Gimbal by fhuable"

nice one! thanks for sharing.

One question, could we get a little more insight on the XLR cable wiring? It looks super clean but I've never used these connectors in a project before, and I'm curious to see how you went about that here.

Not sure what to tell you. The cable management is somewhat up to your taste. The connectors I used have 4 pins so it was convenient to route each motor into one and use the 3rd plug for both sensors. The proximity sensors have to be powered so 2 wires provide 12V power and the other two are the two signals.

Such great work! thanks for all the work! The wait has paid off!!

Great gimbal! Can I use SuperGearM1x128 instead SuperGearM1x160? (my printer have not enough area for 160mm...)

Hmm, no the two gears are not interchangeable. What is the size of your build plate? If the large gear doesn't fit on it you may also have trouble printing parts of the main assembly. The reason the 128 won't work out of the box in place of the 160 is that part of it functions as an axle and mates with the bearing. That bit is not present on SpurGearM1x128. You could meshmix this nob off of the large gear and add it to the small one. You'd also have to move the motor mount up to meet the now smaller gear. (Btw, it's also an option to just clip off one side of the gear since it's rarely desirable to rotate the axis a full 360 degrees, if your build plate is not a square)

Yep, already thinked about it... Maybe you share Fusion project, for edit? )) Thanks

Could you share the Fusion F3D ?

Thanks, I'm following you in hope you release this project since I saw it on Hackaday!

would also love the fusion file. I'm learning fusion and this project is very interesting.

Sorry for the long wait ;)

What size screws are used throughout this?

Hmm, I'll have to check. The main axis is bolted together with 2x M5x16 hex bolts (needs to be tapped) the rest uses self tapping screws. Most through-holes are 2.5-3mm with a slightly smaller hole on the receiving end. I'll make a list when I get to take it apart again.