PLA Spring Motor, Rolling Chassis

by FollowMeOn, published

PLA Spring Motor, Rolling Chassis by FollowMeOn Aug 16, 2014

Featured Thing!


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

82609Views 25096Downloads Found in Mechanical Toys


Just discovered this thing is featured! Thanks Thingiverse! And thanks to the viewers, "likers", downloaders, commenters and followers!

A rolling chassis version of the PLA Spring Motor (http://www.thingiverse.com/thing:402412), printed entirely in PLA, spring and all, requiring no batteries, bearings, screws, power supply, electric or drill motors to operate.

Wheelie, an updated wheelie pulling dragster version of this thing is here: http://www.thingiverse.com/thing:452248.

Video of upgraded wheel design (see UPDATE below) showing a 40 foot run is here: https://www.youtube.com/watch?v=_w1LrRPG0Uo&list=UUv_zm49u-RjnCJVwhUO-ecA&index=1. With the wife's assistance, it hits the baseboard at 40 feet, but has enough energy to run further.

Video of original wheel design is here: https://www.youtube.com/watch?v=MzcdfTisBjk&index=1&list=UUv_zm49u-RjnCJVwhUO-ecA. I did not have a large short carpet area to run it on, but I estimate it would run 30+ feet on short carpet. As you can see in the video, it spins out once it reaches the hard floor, indicating a waste of whatever energy was remaining in the PLA spring.

The first photo is of the original PLA Spring Motor, Rolling Chassis. The second is with the updated rear wheels and axles.

The original prototype works best on short carpet with the original wheels as it will spin out on hard floors or when wound to 100%. With the updated wheels and axle (see UPDATE below) it works best on hard surfaces and will run 40 feet plus.

UPDATE: I've uploaded two new files, "Axle Rear Slotted.stl" and "Wheel Rear Slotted.stl". The new wheel allows for a rubber band tire, and the new axle allows for the new wheel width, both of which allow the PLA Spring Motor, Rolling Chassis to run on hard floors. The prototype runs an average of 40' (approximately 12 meters) across a hard surface before coming to a stop.

UPDATE 2: I've uploaded "Pawl New.stl", use this if your slicer has trouble with "Pawl.stl".

Use safety glasses when operating the PLA Spring Motor, Rolling Chassis. While I've operated the mechanism well over a hundred times without a failure, I always recommend erring on the side of caution as the spring could snap and send pieces flying where they shouldn't be flying, and that's never a good thing.

Designed using Sketchup 8, and printed in PLA on a Makerbot Replicator 2 using Makerware


Use safety glasses when operating the PLA Spring Motor, Rolling Chassis. While I've operated the mechanism well over a hundred times without a failure, I always recommend erring on the side of caution as the spring could snap and send pieces flying where they shouldn't be flying, and that's never a good thing.

Carefully study "Assembly.skp". Note that the .skp file should be used as an assembly diagram and not be used to print parts as the parts in the .skp file may not be the final parts as found in the .stl files.

Print all PLA parts from the .stl files. Print "Knob.stl" and "Spring.stl" with Makerware "Standard" settings modified for 100% infill, the remaining parts using Makerware "Standard" settings with the default infill.

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 will be required.

Assemble as per "Assembly.skp".

Lubricate moving surfaces with light machine oil.

Comment if questions.

Hope you like it!

More from Mechanical Toys

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

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

Thanks again for the quick response ! I'm happy with it the way it is, going to move on to your newest one with the body. Looks Awesome !

Got this together and getting some playing time, but it doesn't coast like I think it should. Any idea what I need to do ? I want to get it to work as it should, then I'm going to try the one you have with a body for a friend.
Thanks Again !

It will never actually "coast" since the pawl is constantly connected through the drive train to the drive wheels. The longest coasting versions of this model will be with a "weak" pawl, meaning printed at the lowest infill setting you can print with without the pawl breaking during use. Also, after break in and use, the pawl will loosen just a little.

I recently won First Place in a design contest for this vehicle: https://www.instructables.com/id/Dual-Mode-Windup-Car/. This model has a floating pinion gear that disconnects the pawl from the rear wheels, allowing it to truly "coast".

An open chassis version of the floating pinion design is here: http://www.thingiverse.com/thing:2025760. Since this one is lighter in weight than the car, it will run further.

You are welcome, and I thank you for your interests in these designs!

Dual Mode Spring Motor Rolling Chassis

Wanted to note for future builders : Neither the pawl, or the new pawl stl files would slice correctly in Slic3r for me. Both sliced ok in Cura.

Looks wonderful ! But how do I open the skp file for assembly ? Thanks !

Thank you!

The program I used is called "Sketchup", and it's free for most non-commercial users.

Thanks Much ! I found a "sketchup" viewer that worked fine. So I printed the picture, now printing parts. Thanks again, looking forward to trying it out.

Hi, really cool project, my daughter and I printed and built this model and having great fun!
Thank you for putting some engineering-mechanics up to share. My daughter is trying to port the spring engine now to a lego construction for a school project.

Thank you very much, I'm very glad that your daughter and you spent the time together to print and assemble this thing!

If you enjoy mechanical things, check out my lates design here: http://www.instructables.com/id/Four-Whistles-Version-2/.

Thank you both so very much!

can the spring be made from ABS ?

Can you post the .prt files?

I've uploaded both the ".skp" and ".stl" files, but am not familiar with the ".prt" format.

Can you provide more details? If so, I'll do my best to do so.

Sorry for the difficulties you've experienced.

How much does the vehicle weigh?

I don't know, I donated the last ones I had!

I'll try to print another and post the weight.


Hey, I havn't completely finished mine yet (I still need the front wheels and axle) but from what I see the car will just stop after the spring finishes. Is that suppose to happen because in the video it seemed that yours just kept going. What should I do to fix this if it is an issue?

When your pawl breaks in, after the spring winds down you will hear the pawl click as it slips by the gear. This provides some extra distance and is why I printer mine at 10 to 20% infill.

Nevermind I now realize that it actually rotates enough times, which I calculated to be about 63 rotations

I've a problem with editing the side_left and right. When I import them to openscad and try to manipulate the params, the rendering gives the following error:
CGAL error ... assertion violation ...
All the other pieces can be edited perfectly.
Without editing I can render them in openscad without error, but I'd like to model a 'real car' around the motor.
Do u have an other file format of these parts, that I can open in openscad better?

The file "Assembly.stl" is a .stl file at 1000 times scale. If you can read that, you may be able to export to a different format, or import directly into openscad. I haven't used openscad to I'm unsure as to its ability to read .stl files.

Let me know if you can't use "Assembly.stl".

I wasn't able to open the skp-file (I have no sudo-ers rights on the university computers, so i couldn't install any specific software), so I just rebuilt the 2 parts Side_Left and _Right in openscad (only took me about 2 hours).
If anyone needs the ".scad" files I produced, let me know ;)

I tried to print both pawl files on a PrintrBot using Slic3r, but no go. Kept getting an error message that didn't really make sense to me. I have access to two Makerbots, too, so I ended up just printing it on one of those. Problem solved. The gears are printing right now, and I am saving the spring for last. Such a fun little project.

I'm a public librarian, and we have 3 3D printers here. I am making this little car to encourage users to take on long-term projects that might take a few days to finish (users are limited to 2 hours a day).

Oh, and see PowerScissor's pawl comment below, that may help.

The pawl is "inside out" which is probably why you experienced the troubles. If you need any assistance, please feel free to comment and I'll do my best to respond.

Remember to print the spring and knob at 100%.

Don't give up!

The spring has a hexagonal socket, but the knob is a square. It won't wind. Any ideas?

The spring has a square socket on the flat side, and that is where the knob inserts. On the tower side, the spring has a complex interlocking shape to the pawl. Carefully study the assembly and make sure the orientation of the parts is / are correct.

Please continue to comment, we will figure this out.

The problem was that I printed out the spring from the page where the pawl file is situtated. That spring has a hexagonal socket for the winding knob. I am currently printing the knob that goes with that spring, in the interest of saving time.

I am having some other issues that require me to sand some parts down. More later.

Ok, it mostly works, but I have some gears that jam, so I am inspecting and cleaning them up. Also - is it ok to glue the knob? it keeps bailing out.

Update: NM about the knob. I just didn't push it in enough.

This probably won't help those of you like me who didn't sift through the comments before printing, but after a day of messing with both Pawl files in this download and not getting a single usable print. The Pawl file here: http://www.thingiverse.com/thing:448340 works perfectly. Hopefully this saves at least one person a giant headache!! :)

Anyone know of any models on ThingiVerse that have a 2nd stage? I wanted to try my hand in Sketchup and make it so after this Spring does it's thing, it engages a 2nd Spring that's geared even lower (Since it already has speed) like a 2nd gear. Maybe there's already something like that on here though, I didn't find anything with a search.

Spring Plus

Printed one in PLA on my Printrbot Metal Simple. Worked really well, only the Pawl was a very tight fit and required some adjustment (maybe print it slightly bigger next time).

Printed Spring and Pawl with 100% infill, the other parts with 30%. Would definitely recommend printing the slotted wheels and use some rubber bands.

Overall very nice model, perfect parts (except Pawl which had to be repaired with netfab) and nice sketchup assembly diagram.

Awesome Design! Works really, but I would recommend for future people who make this to use the spotted wheels, and putting rubber band in the gaps for better traction.

Hi Gzumwalt,

I'm so excited by your design and the popularity it has gained. Would you like to share more of the math behind your design decisions? I'm really curious to know how you designed the gears (shape of teeth, number of teeth, optimal gear radius, etc), as well as the torsional spring (how to space the winds, how many winds to have). Were you aiming to optimize distance? If not, what was your design intent/focus? I'm also working to model all of the parts in Solidworks, so any dimension references you can provide will be a huge help to me (especially regarding the parametric gear teeth)! I've looked at many windup cars to date, and appreciate your willingness to share your ideas and designs with the world.

First, thank you very much for your most kind comments.

Second, and hopefully I won't disappoint you but I must be honest, printing a spring with a 3D printer is not exactly a science (as I found out the hard way, well not yet at least), thus, I must admit, I probably threw away 10 or so spring designs before I settled on the final one that was used in this thing. There are a number of problems to address in designing a 3D printed spring, including the tensile strength of the PLA used (I found the largest variation between translucent and solid colors, translucent being the most "brittle"), the resolution of the 3D printer used (primarily along the X and Y axis), the layer height (the Z axis), the print temperature (I had most success using 230C for the first layer, 210C for the subsequent layers), and a number of other parameters. I did use some basic spring design equations, but they indicated that the required spring thickness was too thin for printing using PLA on my printer and as a result, the layers would de-laminate and the spring would fail. For my final designs, I opted to use a strain gauge to measure the amount of force the spring design could impart after two windings or so.

Third, regarding the gear ratios, a PLA printed spring dumps its energy quite quickly, thus a high gear ratio (which includes the wheel diameters by the way) assists in slowing down the energy release from the spring.

I'll try to locate the article I read regarding spring designs, but I must admit, again, I had to disregard most of it as it did not apply to printing a spring using PLA on a 3D printer.

Again thank you for your kind words, and I hope my response does not discourage you from continuing your work!

Feel free to comment or message me if you have any further questions, and I will do my best to answer them.

Thank you for your quick response! All of the information about spring design is very helpful, and I will keep an eye out for the article you mentioned about spring designs.

I have imported the stl files into SW for some rough analysis of dimensions/geometries. Can you provide some guidance/details about the gear teeth design? For instance, I see that there are 12 teeth on a 10.3mm outer diameter in Gear_Rear_Axle. I know that the tip of the gear tooth is 0.66mm wide, and the gear tooth is 8.2mm deep, but the shape from the protrusion point from the center of the gear to the tip of the tooth is unclear/undefined for me.

Any help will be much appreciated!

Designing gears is science (there are numerous gear design documents that can be found on the internet, most of which are quite accurate); designing gears for 3D printing is an art. Of primary concern is making sure the ratio of number of teeth and the pitch radius remains constant. However, when 3D printing a gear train, you must take into account a number of issues, none the least of which is what I call "oozing". If your build plate is too close to the print head, or you are extruding too much PLA, the gear teeth will be too close to mesh efficiently, thus they will bind. Again here there is much to be said for trial and error, since one cannot guarantee that what I print on my printer with the Makerware "default" settings, will print on your printer with your settings.

I've found the greatest success by designing parts that mesh to have at least a .2mm gap between the inter meshing parts, and in the worst case, .4mm gap. I used to use Sketchup 8, and now use Sketchup Make, and with the latest release, have found that .4mm gains the most reliable results.

There are a number of methods to design a gear for PLA. You can use Sketchup and the a gear drawing plugin, or you can design your gears yourself. I've found that printing in PLA, you can easily design your gears yourself using the circle tool, setting the number of sides in the circle to the number of teeth you want X2, expanding one segment to a gear tooth, then duplicating it by the number of teeth you desire. It takes practice, but you can do it!

A little off topic, but related to Sketchup. When I was poking around your Assembly file I noticed your wheels were one solid piece, as in the whole wheel, including the rounded edges were smooth and could be all selected at once. When I create wheels, I get massive amounts lines. How did you just get that nice smooth wheel?

I've uploaded a file "How I Make Wheels.stl". Hope this helps.

Thanks! I've never used the "follow me" tool, that is really helpful!

I can only print PLA, so I can't test whether ABS works or not, but I do know others have printed it in ABS with success.

Comments deleted.


i wanne print the car but i can't print the spring
my printer is heating and after the heating it stops and come printing compete but it print nothing

plz can someone help my

Did not work for me until i used Sewing machine oil. Its amazing. Just buy some sewing machine oil and lubricate half of the teeth on all the gears and it should mix and spread to the rest of the teeth. Also lubricate the inside of the wheels are they rub against the main body and cause the car to be slower.

Last tip, lubricate main bodies shaft where the gear slides in. it will make it free spin for much longer and thus a longer ride :)

I am having trouble in printing the spring. I am using Cura to slice and print. The first issue is that the gcode that it generates is terribly inefficient. The print time turns out to be about 1 hour and 45 min. And most of this time is spent "travelling" and not printing. I used slic3r to slice it but that generated only 6 or 7 layers, and seems to think that the spring is only 2.4 mm high. I have tried printing it twice so far with Cura, but both of the time it failed. First time, it clogged which I believe is because of too much travelling and not as much printing which tends to make the hot filament clog. And second time, it just stopped at 5.2 mm height and I don't know why because I was not around, and Cura was showing option to Print (the Print button was re-enabled) that makes me think that it thought it was done printing. The preview does show fully sliced part though.

Do you happen to have a good efficient gcode file that you could upload for .4 mm layer height, ABS 220C, 10 mm/s bottom layers, 30 mm/s other layers.


Sorry you are having difficulties with the spring.

I use Makerware and cannot alter the print speed by layer.

Hopefully, someone else here can help.

how do i open the assembly.skp file ?

I use Sketchup 8, the free version.

Can you please post the source files. I love your design but all of the parts require much more sanding then I would like to do. For example, no the axles always come out too big for the wheels. If you posted the source files, we could get the parts printed to a slightly better size,

Thanks Steven

The file "Assembly.skp" is the source file (well, mostly) at 1000 times scale. If you grab a part from the file, create a new file, scale it by .001, then center it as appropriate, you will have the part.

If that doesn't work for you, let me know which files you need and I'll send them up.

Sorry for the problems...

Are the front and rear axles essentially the same thing? I was trying to print them and I'm not sure which one of the two I printed!

For the original wheels, yes. For the slotted rear wheels, the rear axle is slightly longer than the front.

Hello gzumwalt, just finished printing your project with a Prusa i3 (bq version, PLA, 210ºC) and works perfectly.

I just modified the Knob, specially because the one i printed from your original project seemed not to be adapting so well to the spring (reduced dimensions on the connection).

If you let me, maybe you could make an optimization on the main gear (Gear_Main) fixing system since it has somehow a loose behaviour (at least on my project).

Many thanks for sharing this project!



I modified Wheelie to better hold gear main in place. Check that out and let me know!

Comments deleted.

i am having problems printing the spring on maker bot replicator 2 printing at 0.2 layer height, 2 shells i have tried 100% / 50% infill with no look has any one got any ideas what i am doing wrong ??? any help is much appreciated

What kind of problems are you experiencing?

it keeps failing to print at about 70% i am trying a differnt colour plastic to see if that is the problem

How does it "fail", printer stops, extruder stops, won't stick to build plate?

I printed the prototype and two more on a replicator 2 using Makerware.

extruder stops i have taken it to bits and cleaned it but still the same

Try slight tightening of the build plate leveling screws. The build plate may be too close to the print nozzle which can cause clogs. You may have to do this a few times before you see results.

i changed the filament and re-leveled the build plate and it as worked find thank you for your help

Great! I'll be looking forward to see your results!

Works great! be sure to check remix for upgraded tires and such and a slicable pawl!

This project has made me very excited about 3d printed springs. Thank you for posting this. I am currently sanding my printed pieces however I would like to know what print/slicing settings are best so as to have the pieces fit better. I must have some settings off since I have to sand every piece that connects. I am using slic3r. Cheers.

Thanks, and you're welcome, glad you liked it!

I used Makerware "Standard" settings, .2mm layer height, 2 shells, 10% infill for all parts except "Knob.stl" and "Spring.stl", which were printed at .2mm layer height, 2 shells, 100% infill.

You're settings may be just fine, I find that different colors fit different ways. I make the parts such that sometimes some material must be removed, since after it's printed, if it's too loose, you can't add back plastic.

Thank for your reply with the settings. Mine were similar. I just bought some sand paper and the pieces have started to fit in! Cheers!

This is awesome. But unfortunately I can't slice either of the Pawls. I'm using Slic3r. Any suggestions on how I can get it to slice?

I've checked "Pawl New.skp" again using Solid Inspector in Sketchup 8, and it doesn't find a problem. I have heard others upgrade Slic3r and have solved similar problems.

Check you used the file pawl_repaired.stl not the old one twice
the file is verified and exported from netfabb
It sliced successfully with Slic3r version 1.2.0

I have tried Pawl.stl and Pawl_new.stl. I'm not seeing a Pawl_repaired.stl file.

repaired pawl is added to spring plus remix
http://www.thingiverse.com/thing:448340 or go there with remix button and select the Spring Plus Remix

Spring Plus

printed nicely at 80% on my simple. Tolerances are a bit tight though. It's going to take a bit of sanding/drilling to make parts move freely. Thanks for posting!

You're welcome! Hope you enjoy it.

I couldn't get 100% fill to work on my Makerbot Replicator 2 (for the spring and knob). So I used 50% fill and it worked really well.

My kids have been playing with it all weekend!

repaired pawl is added to spring plus remix
Maybe you can change original file instead and i will remove it from the remix again

I posted "Pawl New.stl", but others say it still has problems using Slic3r.

Comments deleted.

awesome, will print it soon. Thank you!

Thanks! Glad you like it.

Comments deleted.

I will upload modified wheels by tomorrow monday if still somebody here wants them - sorry, i was out of town over weekend

Just printed, amazing...I printed it at 70% scale to save time and it seems it is the minimum scale we should go, below that things get harder to sand/clean without breaking them :)

My spring resulted with 100% infill (only perimeters, about 4) maybe this is the reason why few energy is transmitted to wheels in my case.

A question. "Gear main" is quite loose on the axle since it does not have a way to stay in its position, it "rests" on the Idle gear to stay "aligned". I do not know if is is clear. A washer on the hole where it fit should help but I understand "gear idle" will not fit in this case... anyway it's amazing work! :)

"Gear Main.stl" should be free to spin on the axle, but it is held in position by "Pawl.stl". If not, then the pawl may be worn out. I'll check on it.

pawl is non-manifold. it wont slice on slic3r for me.

Uploaded "Pawl New.stl", but others say it still doesn't work...

fixed in "spring plus" remix

Getting the same issue here

I'll check on it, sorry about that!

I moves, yet it has no horse or man pulling it? This is sorcery I say! Nice work btw. :)

Tis the sorcery of PLA!

Thanks, glad you like it!

Well done, thumbs up!

Thank you very much!

Congratulations on the feature - very well deserved:-)

Thanks loubie!

I was hoping you could design a wonderful body for it!

You're on. I need to have a think....:-)

Would be a nice upgrade.
I'm looking foreward!

Great! I'll adjust the chassis to fit your design!

Can use ABS for make it?

Yes, but you may require more sanding, filing, etc. of the holes.

If you try it, and need some changes made for ABS, let me know and I'll do what I can.

I've printed only the spring in ABS and it seems to store plenty of energy!

Great design! I will give it a try and already started printing now

Thanks! Don't hesitate to comment or pm if problems.

I've been working on this, but you've beat me to it!

Hey, there's more than one way to skin a cat, I'll look forward to seeing yours!

Don't give up, I'm sure there's a better way.

Very nice. Needs a safety cover over the spring so the kids can use it. Push button to start it too?


I designed it "open frame" so the internal workings could be viewed. I can't tell you how many times people questioned my perpetual motion design!

A cover and push to start would be nice additions.