Introduction: Hummingbird

About: Formerly the owner of a company that designed software for avionics (EFIS, FMS, etc.) and video games (Tetris, Robocop, Predator, Michael Jordan in Flight, and a number of others), I'm now retired and finall...

Hummingbird is a hummingbird themed automata I designed for my wife, who smiles from ear to ear while feeding and watching the gathering hummingbirds at our home. Hopefully it will bring smiles to many more faces.

Hummingbird consists of 97 3D printed parts (38 unique parts) and, as I discovered, requires plenty of time and patience to print, assemble and tune. Along with the 3D printed parts, Hummingbird also requires a "uxcell 16mm DC 6V 60RPM Speed Torque Gear Box Electric Motor for Robot" (available from a variety of sources), a 6vdc power source, and four 1/4" or thicker stick on felt or rubber pads (for the base).

The file "" contains all cad images and photographs included in this Instructable.

As usual, I probably forgot a file or two or who knows what else, so if you have any questions, please do not hesitate to ask as I do make mistakes in plenty.

Designed using Autodesk Fusion 360, sliced using Cura 3.2.1 and printed in PLA on both an Ultimaker 2+ Extended and an Ultimaker 3 Extended.

Step 1: Print the Parts

I've included file "Hummingbird" which contains the parts list and print parameters I used to print Hummingbird.

I've also included the file "" which includes all the parts in stl format.

Hummingbird is a high precision print and build. Prior to starting assembly, test fit and trim, file, sand, etc. all parts as necessary for smooth movement of moving surfaces, and tight fit for non moving surfaces. Depending on the colors you chose and your printer settings, more or less trimming, filing and/or sanding may be required. Carefully file all edges that contacted the build plate to make absolutely sure that all build plate "ooze" is removed and that all edges are smooth. I used small jewelers files and plenty of patience to perform this step.

Hummingbird uses threaded assembly, so a 6mm by 1 tap and die may be needed to clean the threads.

And finally, I used petroleum jelly judisiously on the gear train and between the rotating contact surfaces.

Step 2: Assemble the Base

Press "Gear Motor.stl" onto the motor, then press the assembly into "Base.stl".

Assemble "Gear Compound (60, 20 Teeth).stl", "Axle Gear Compound 60, 20.stl" and "Spacer Axle Gear Compound.stl" as shown, then lace the assembly into the base and secure with two "Bolt 6mm, 8mm head, 4mm shoulder.stl" as shown.

Assemble one "Wheel Base.stl, "Axle Wheel Base.stl", "Bolt Wheel Base.stl" and "Bushing Axle Gear Base Long.stl" as shown. Position "Gear Wheel Base (60 Teeth).stl" in the base as shown, then slide the assembly through the Base, Gear Wheel Base (60 Teeth) and the Base as shown. Insert "Bushing Axle Gear Base Short.stl" onto the free end of the Axle Wheel Base, followed by the remaining "Wheel Base", then secure with the remaining Bolt Wheel Base.stl.

Finally, apply four 1/4" or thicker stick on pads to the bottom of the base, one in each corner.

Step 3: Assemble the Transmission

The first image shows (left to right) "Bolt 6mm, 12mm head, 23 mm shoulder.stl", "Arm Body Front.stl", "Arm Base Right.stl", "Spacer 8.2mm.stl", "Spur Gear (30 teeth).stl", "Arm Body Front.stl", "Arm Base Left.stl" and "Bolt 6mm, 12mm head, 23 mm shoulder.stl".

Position "Arm Body Front.stl" and "Arm Base Right.stl" as shown, then slide "Bolt 6mm, 12mm head, 23mm shoulder.stl" and secure loosely in place with "Spacer 8.2mm.stl" as shown.

Position "Spur Gear (30 teeth).stl" onto the spacer.

Complete the assembly with the remaining components as shown.

Step 4: Assemble the Body

Securely attach nine "Spacer 8.2mm.stl" to "Body Right.stl" using nine "Bolt 6mm, 8mm head, 4mm shoulder.stl".

Assemble "Bolt Wheel Body.stl", "Wheel Body", "Bushing Wheel Body.stl" and "Axle Wheel Body.stl" then position on "Body Right.stl" as shown.

Place three "Spur Gear (30 teeth).stl" onto the assembly as shown, then secure "Body Left.stl" to the assembly using nine "Bolt 6mm, 8mm head, 4mm shoulder.stl".

Finally, attach the remaining "Bolt Wheel Body.stl", "Wheel Body" and "Bushing Wheel Body.stl" parts to the assembly as shown.

When complete, the gears must rotate easily.

Step 5: Assemble the Wings

Position "Pivot Wing.stl" onto "Pivot Shoulder.stl" and secure in place with "Bolt Pivot Wing.stl" as shown. The shoulder pivot and bolt must rotate easily in the wing pivot.

Position "Wing Right.stl" onto "Pivot Wing.stl" as shown, then secure firmly in place with "Bolt 6mm, 10mm head, 4mm shoulder.stl" as shown.

Snap the small end of "Rod Connecting 6.3mm Hole.stl" onto the ball on "Pivot Wing.stl" as shown.

Position the assembly on "Body Right.stl" as shown, then secure in place with "Bolt Pivot Shoulder.stl" as shown.

Snap the large end of "Rod Connecting 6.3mm Hole.stl" onto the ball of the right body wheel as shown.

Repeat the assembly process for the left wing, then attach the left wing assembly to "Body Left.stl" as was the right wing.

Step 6: Attach the Transmission to the Base

Slide "Spacer 8.2mm.stl" into "Spur Gear (30 teeth).stl", then position the assembly into the base as shown.

Position the transmission assembly on the base, then secure in place with two "Bolt 6mm, 12mm head, 8mm shoulder.stl" as shown.

Position the right and left base arms on the base wheels as shown, then secure in place with two "Bolt 6mm, 10mm head, 4mm shoulder.stl" as shown.

To test the assembly, remove the motor and make sure the gears turn and the transmission pivots freely. Reinstall the motor, and attach a 6vdc power source to the motor such that the right "Wheel Base.stl" rotates clockwise as viewed from the arm side of the wheel.

Step 7: Attach the Body to the Transmission

Attach the two "Arm Body Rear.stl" to the base assembly using two "Bolt 6mm, 12mm head, 8mm shoulder.stl" as shown.

Slide one "Spacer 8.2mm.stl" into "Tail.stl" as shown the position the assembly into the body assembly as shown.

Slide one "Spacer 8.2mm.stl" into one "Spur Gear (30 teeth).stl" as shown, the position the assembly into the body as shown.

Lower the body onto the front and rear body arms an secure loosely in place using four "Bolt 6mm, 12mm head, 8mm shoulder.stl" as shown.

Step 8: Attach the Stem and Flower to the Base

Press "Flower.stl" onto "Stem.stl" as shown, the press the assembly into the base assembly as shown.

Hope you enjoy Hummingbird!



    • Microcontroller Contest

      Microcontroller Contest
    • Woodworking Contest

      Woodworking Contest
    • Casting Contest

      Casting Contest

    We have a be nice policy.
    Please be positive and constructive.


    14 Questions

    Hi. I am attempting to print this project. I printed some starter parts with no problem (100% infill) , but when it came to the base and the 20% infill, it turned out too fragile, like a semi-stiff foam. It took a long time for the base to print, and will be even longer if the infill is increased to something like 60% but I think thats what it will take. Also even though I had support checked in Cura, it didn't print with support which is very strange but it still printed. Just wanted your experience and thoughts on this. Thanks.



    i printed with 10% infill. turned out to be very strong. but used tough pla.
    also use thicker walls, I used 3 layer wall and 4 layer top.

    4 more answers

    As noted, I'm using Cura 3.2.1 as well on Ultimaker 2+ Extended and Ultimaker 3 Extended printers. I haven't a clue as to why your experiencing this, but you might try the "Enable gradual" infill option that should increase the infill as the model height increases.

    Sorry for the problems.


    I’m sincerely sorry for the difficulties you’ve experienced with this model.

    Could you please provide the version number of the Cura slicer you are using and your printer model?

    I used Cura 3.2.1 and printed on an Ultimaker 2+ Extended and an Ultimaker 3 Extended.

    Again, I am trying sorry for the difficulties you’re experiencing.


    I am using Cura 3.2.1 and the Prusa MK2s. It turns out well, except for the actual parts on top of the base being too fragile. I was tempted to make it all 100% infill but that would be a huge print. Maybe my Cura version will do as someone else said, to change to 100% infill from the top of the base up?


    I used simplify3d version 4 to slice the base with 2 process : 15% infill until I reach z=19mm and then I switch to 100% infill for the rest.


    Very impressive Greg!

    Can I trouble you to write up your workflow on how you designed this? I find it very difficult to create intricate mechanisms and would love some pointers or resources that you use to design this.

    Many thanks!

    Hi ntiong,

    Thank you very much for your kind words!

    Regarding the workflow for Hummingbird, as I mentioned in the introduction, my wife truly enjoys feeding and watching hummingbirds as they pass through, so I decided to create Hummingbird for her to watch during the hummingbirds "off season".

    I started the design using the numerous photos we've taken of the hummingbirds. I imported a few select photos into Autodesk Fusion 360 using the Canvas function then outlined the various body components (body, wings and tail) using the Autodesk Fusion 360 spline function.

    Next, after studying the wing motion of a "typical" hummingbird, I decided to use a captured ball joint (somewhat similar to a helicopter swash plate) for the pivot and rotate mechanism, and since I try to make my designs 100% 3D printed, I designed a test fixture to determine the minimal size ball joint I could reliably 3D print, which ended up being a 6mm ball and a 6.3mm hole. With these two dimensions, I was then able to scale the body, wings and tail outlines I had traced earlier to a size suitable for the wing motion mechanism. With the scale (size) determined, I next designed the gear train for the hummingbird body using the Autodesk Fusion 360 Gear add-in, then printed and assembled the first body and wing prototype which ended up looking like this:

    Next was the base design. In order to move the hummingbird fore and aft, I decided on a ratio of 6 wing flaps to 1 complete fore / aft cycle. This required a gear reduction which also provides the increased torque required for the fore and aft body motion. The first base design used a gear train to connect the body to the base and maintain a level pitch, and ended up looking like this:

    As I noted in the Youtube video comment section, I wasn't pleased with the smoothness (more correctly lack thereof) of the fore and aft motion with this base design, so I redesigned the base mechanism using a parallelogram to connect the body to the base to facilitate the fore and aft motion.

    Finally, the flower is my interpretation of the plastic flowers on the humming bird feeders my wife uses, and the stem was designed to position the flower at the correct point.

    Hope this helps, and if you have any further questions, just ask!


    This is an awesome project and I can't wait to have it up and running. I've just ordered the motor for this, how do I go about attaching the 6v power source? Do I cut the end off and solder the wires to the motor? or is there some connectors I need to get as well? Not done anything that requires a power source before. Thanks for the help.


    Thank you very much, I'm truly glad you enjoyed this model!

    Regarding the power source, I use a "power jack" soldered to the motor matching the size and style of the plug on the power supply (I use ac to dc wall mount style power adapters), but you may just as well solder the power supply wires directly to the motor. Just make sure the motor turns the gears in the correct direction. Also note the motor may be installed in either side of the base, depending on which way you want your model to face and whether or not you want to see the motor.

    Thanks again!


    I like your design, it's a great project and I'm currently printing it with my home built Mendelmax 1.5.

    I have one question, I can't print the flower, every attempt results in the flower tossed off the print bed. I use a heated (70C) print bed covered with kapton. I tried inserting a raft layer but without much success still tossed after just a few layers printed. Can you post the design file or can you add a pedestal that we can snap off after printing, so as to have a solid area on the print bed? Or can you share the design file or any other trick to help me print it?

    Thanks for all that work in this project, it's very impressive.

    Thanks in advance, Rolland..


    Hi Rolland,

    I've uploaded the Autodesk Fusion 360 "Flower.f3d" file which is the design file for the flower.

    Hope this helps!


    1 more answer



    Sorry about the difficulties you’re having.

    I printed the flower with both a raft and support on an Ultimaker 3 in PLA using a heated bed with no tape, but I always clean the build plate with dishwashing soap then reinstall it and carefully level the it before printing a model such as the flower.

    I’m out of the country right now and will return in a few days. I’ll post the Autodesk Fusion 360 file for the flower when I return.

    Again, I’m truly sorry.



    Spacer Axle Gear Compound.stl it's the same as Axle Gear Compound 60, 20.stl


    Just uploaded what I believe to be the correct "Axle Gear Compound 60, 20.stl".

    Sorry again, and hope I got it right this time.


    1 more answer


    I’m truly sorry about this. Unfortunately, I’m out of the country right now but I’ll fix this when I return in a few days.

    Again I’m truly sorry.



    I have completed printing all of the parts but the Spacer Axle Gear Compound.stl it's the same as Axle Gear Compound 60, 20.stl. Can you post or email the correct stl for the Axel Gear Comppound 60, 20.stl?


    Just uploaded what I believe to be the correct "Axle Gear Compound 60, 20.stl".

    Sorry again, and hope I got it right this time.


    1 more answer


    I’m truly sorry about this. Unfortunately, I’m out of the country right now but I’ll fix this when I return in a few days.

    Again I’m truly sorry.



    I have successfully printed all of the parts but I am unable to find the Axle Gear Compound 60, 20.stl. When I look at the part on the slicer platform it is the same as the Spacer Axle Gear Compound.stl. Can you upload the correct stl?


    an alternative for the motor.
    i used this cheap motor and a 5volt usb loader 1.5 A.
    works like a charm:

    16MM Short DC3V 50RPM High Torque Gear Box Motor Inversion dc 3V 6V 7.4V motor Smart home/robot power system to Clipboard

    Thank you so very much for your kind words, I'm truly glad you enjoyed it!


    thank you so very much, I’m pleased you enjoyed it!

    third attempt to upload. thx for sharing!

    1 reply

    That looks awesome, congratulations !


    what a great design!
    i am almost finisched but having difficulties with the connecting rod keeping falling off.
    seems to the hole is to big for the bal. any suggestion? just scale down an try?

    3 replies


    I'm truly sorry you're experiencing difficulties with this model. The ball joints are perhaps the most precise parts in this model. Try scaling the arm down very, very slightly on the X and Y dimensions, but not the Z (thickness) axis.

    Hope this helps!


    are u using the 1.2 or 2.2 thick version? can't seem to find this answer in the text

    That depended on the color for the ball joints. When I printed the first model using Ultimaker Transparent PLA, there was no "oozing" and the ball was almost exactly 6mm. In this case I use the 2.2 mm version which, being thicker, has a larger surface area between the rod and ball. When using certain other colors, white for example, there was some oozing and the ball was slightly larger than 6mm I used the 1.2mm in these cases.

    Hope that helps!


    Looks like a great project.

    I have a Monoprice mini printer with 4.5" x 4.5" bed. Has anyone tried scaling this down so parts would fit a smaller printer? Parts that are too big are wings, body and flower stem, but if scaled down, everything would need scaling.

    Another solution would be to cut these part using MeshMixer and glue together using epoxy.

    Any comments or suggestions?


    2 replies

    If you’d like, I would be happy to upload the body halves, wings and stem in Autodesk Fusion 360 format.

    Thanks, but I am not familiar with Fusion 360, but I think I can split the parts using Meshmixer, then slice the parts for printing with CURA, print, and glue them with epoxy. One day perhaps a larger printer...


    Thank you very much, and you are very welcome, I’m truly happy that you enjoyed it!

    What courses teach how to design things like that?

    1 reply

    Hi ArielB10,

    I'm sorry but I don't know!

    At my age, I've simply had many years experience tinkering with gears and mechanisms, and used some of our photographs and videos as a guideline to combine the gears with a hummingbird, and this was the result! You may try searching for gears and mechanisms on the web. I would try and search for "Autodesk Fusion 360 Gears" for example to study gears.

    Hopefully someone else here can direct you to an appropriate answer.


    Awesome work! just finished mine. Printed the hummingbird in 70% copper filament and polished it up. Gears are all 70% bronze and the rest is pla.

    1 reply

    Can't seem to view the video. :(


    A couple photos to go with my review/ video