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!



    • Creative Misuse Contest

      Creative Misuse Contest
    • Fix It! Contest

      Fix It! Contest
    • Tiny Home Contest

      Tiny Home Contest

    96 Discussions


    Question 7 weeks ago

    I have printed out all the parts. But it is very difficult for me to get the gears inside the bird's body to roate, I gears I printed seem need a little decrease in size. I used Ender 3 printer.

    anybody help :(

    2 more answers

    Many thanks for your reply.

    As you said, plenty of time and patience are needed.

    I did it. Thanks again.

    >>> I resize the gear :

    Gear Compound (60, 20 Teeth)


    >>> lower the "Bolt_Wheel_Body" cap hieght

    >>> extended the holes distance of "Rod_Connecting_6.3mm_Hole_2.2mm_thick", and make it thinner.

    Sorry you are having difficulties with this model.

    Did you print the gears on a raft?

    If so, try scaling down the X, Y plane of the gear (not the Z) by a very small amount, print two gears, then try them on the model (you may have to slightly enlarge the hole for the axle).

    Hope this helps.



    3 months ago

    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!


    3 months ago

    third attempt to upload. thx for sharing!

    1 reply

    That looks awesome, congratulations !


    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.

    5 more answers

    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.

    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.


    3 months ago

    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?