Introduction: 3D Printed Flexi Snake
When I was younger, I remember playing with a flexible wooden snake toy that you would hold by the tail and it would flop back and forth and have snake-like movements and all you'd have to do is twist the tail subtly with your wrist.
I was recently thinking about the different articulated hinge methods people have tried with 3D printing and decided I wanted to try recreating this snake using 3D printing.
This took a lot of trial and error and there are different ways to approach it. My original goal was to make it entirely printable in PLA and make it so you could just bend it at the joints with the intent being it is easy for anyone to make. While I did get this to work, it eventually broke and an additional test completely failed. I found the best way to realistically recreate it was with PLA and a tulle hinge OR just using TPU flexible filament. I feel the PLA + tulle gives the most snakelike results. I'll share the outcome of both and the files you can try out.
There are lots of ways to approach recreating this wooden snake toy. I hope you will share if you try this out or come up with your own method!
*The tulle version is not super durable. I don't recommend it for young kids or kids who are just pretty violent with their toys. The flexible filament one is very durable.
- 3D printer - I use a Prusa MK3 with MMU2
- PLA or TPU filaments
- Tulle - if you are going that route, and don't want to invest in more tulle, I recommend ivory for a light filament or black for a dark one, but it can be nice to have a nice variety of colors available if you like to use tulle in your printing process.
- Flush cutter - handy to have with 3D printing regardless, but helpful with the tongue
- Flex Red filament
- Glue, whatever you have on hand, many should work here and you only need a small amount - Super Glue - E6000 Glue - Hot Glue
Files below. There are ones meant to be printed with tulle and the others flexible filament.
Step 1: Initial Design - Just Break It
My original design consisted of big segments that were spaced fairly far apart. This printed as one piece and I essentially broke and bent it at all the joints and this actually worked...for a while. I was so proud until it broke into pieces. Eventually those bends just couldn't take going back and forth so much and it started to break apart.
I thought it was a fluke and I could get it to keep working, but the next one I printed in Silky Copper, when I went to bend at the joints, they just completely snapped apart right away. No bend at all, just a break.
The video of the orange snake shows that I did get it to work quite well originally, but then with the Silky Copper one, it just broke right away.
Step 2: Enter Tulle
I went on to try this design with tulle and while it works, it has to be printed on the side with tulle and since the sections were so far apart, you had to have support to make it work. This seemed not ideal.
I moved on to doing smaller segments that were much closer so while there was overhang, it wasn't much and you didn't need support between all the sections.
Step 3: Tinkercad Design - Initial
Now to talk about the snake designs I made in Tinkercad.
I just wanted to share a look at where I started. The final design is made up of the same pieces, just spaced differently.
The body of the snake is made up of half cylinders, the head is an elongated sphere, the spine is a rectangle, and tail is a paraboloid.
When I initially "broke it", it was printed on its belly. Instead of a tail, I did an end with a thumb indent, but then went on to the paraboloid to make a tail that more closely matches the inspiration toy design. I also cut off the belly a bit to make sure there is enough touching the build plate to help with printing.
Step 4: Tinkercad Design - Tulle
To make the design work with printing with tulle, as I mentioned, I rotated my snake so it would print on its side. This is because I wanted the tulle to go all down the middle which would allow the snake to flop right to left.
I wanted to print it as long as I could, so I determined the length based on how much space I had if I printed it on the diagonal.
I flattened both sides (the bottom so it would print better and the top so it would match).
For the initial segment section, I had one half circle overlap slightly with another half circle. Then, these sections were spaced .04mm apart to allow for some, but not much movement. This was to allow for the snake to bend back and forth. If they all print touching, they'll break when you bend it and potentially tear the tulle.
I used the Duplicate function, drop function, and moved the workplane to make sure I got the distance I wanted and that all of the segments would be the same distance apart.
The top layer of segments overlap with the bottom layer by .8mm so that there would be two rows before I placed the tulle and two rows printing on top of the tulle.
The head is an elongated sphere and I added spheres for the eyes and used a cylinder to cut out a hole for the tongue slot. You don't need to add a spot for the tongue if you don't want.
The tail is made of an elongated paraboloid and after much debate, I decided to leave it so that it would require support to print.
I have the main long snake, I cut out a section to make a shortened version, I scaled it down (and messed with it) to make a small one) and also shown is the original one that works, but doesn't have as much bend.
Step 5: Tinkercad Design - Flex
If you don't want to use tulle in your design, using a flexible TPU filament is also an option.
The design is different in that all the segment sections have to touch, but I wanted them to touch as little as possible to have small connections that are as bendable as possible.
This design is still made up of half cylinders for the body, a sphere for the head, and paraboloid for the tail. Since this one is printed on its belly, I did flatten it a bit to help with printing, and I tilted the tail down so it wouldn't require any support.
Like with the other design, it also has spheres for eyes and a cylinder cut out for a tongue to be added later.
Also like with the other design, I created a shortened version and a scaled down version.
Step 6: Slicing the File - Tulle
There are a couple things of note for slicing the tulle version of the flexi snake.
One of the main things is the pause. This snake was designed to work with a .4mm nozzle that prints at a .2mm layer height. With those settings, you should get 4 layers in the middle that you can put the tulle between.
As shown in the second image, you should print two layers where there is overhang, then add the pause to add the tulle. The print will resume to print two more layers on top of the tulle before finishing the top segments.
If you are using the PrusaSlicer, you need to add the pause to the layer AFTER where you want the pause. So I added it to the third layer above the overhang.
RAFT or NO?
One more thing to point out is I actually printed this snake fine without a brim or raft for a few tests, then all of a sudden it just did not want to print; the pieces kept coming off the build plate.
The brown shortened snake was printed with a 2 layer raft under it. So if you are having issues, consider a raft. I don't recommend a brim as that could be difficult to remove with all the segments.
I also added extra perimeters to just the tail section. It is not necessary, but I hoped that would help with the overhangs that needed to print there.
Step 7: Slicing the File - Flexible Filament
The flexible version is actually pretty straightforward to print. Just use your prefered settings for flexible filament.
There isn't really anything special to take into consideration and no support is needed.
You can see from the layered shot that I was attempting to get as little connection as possible while still having it connect.
Step 8: Adding Tulle Mid-print
As long as you put the pause in the Slicer, the printer should pause after doing two layers of the overhang and the hotend should (hopefully) move out of the way.
Take your tulle and cut it to length. I didn't want it sticking out both ends, so I just made sure it went into the tail section and head section. I cut 4 pieces and stacked them together to try to get extra strength in the snake (I have only done these with 4 pieces of tulle so far and am unsure how strong a single piece will be).
I like to tape my tulle down with blue painters tape (if you're going to use tape at all, use this type), but I know magnets are also commonly used for this.
Once it is all set, resume your print and make sure it gets through that next layer without catching on the tulle. As long as it makes it through that next layer, the rest of the print should be fine because the parts shouldn't even dislodge at this point as the tulle will hold them all together!
BE CAREFUL taking the snake off the bed. I have a flexible bed and the first full snake I did with tulle, I bent the bed outwards and since the snake was stuck on there because I'd used glue, the snake didn't want to come off right away and the tulle tore right in the center of the snake! If you have a flexible bed, I recommend bending your bed inwards so you aren't putting stress on the tulle between the joints.
Step 9: Cleaning Up the Print
Once your snake is safely off the bed, it's time to clean it up!
Remove the support.
Carefully cut off the excess tulle. You don't want to tear into the joints, so I find using a flush cutter really easy for cutting along the edge without damaging it.
Step 10: Flex Tongue
Optionally, you can give the snake a flexible tongue.
Simply cut a piece of red flexible filament that will fit inside and stick out about an inch. Carefully cut down the center to split the end of the tongue. You can glue it in to make sure it stays.
Step 11: Break It? It's Not the End of the World
Like I mentioned, I actually broke my first "successful" tulle snake when I bent the flexible plate outwards and it just broke the snake right in half. I was discouraged, but still wanted to see how well it worked since it was a full sized test. I decided just to quickly glue the sections together and this works fairly well and it would actually not be too noticeable at all if I hadn't done it so carelessly.
The point is, even if your snake breaks in a section or two, just glue it together and while that single joint won't bend, the rest will and it will still work decently and your print won't be for naught!
Step 12: Finished Flex Snake
The flexible filament snake has lots of flexibility and durability but not a lot of flop like the original toy. It's great for younger kids tho as I don't see this tearing any time soon.
Step 13: Finished Tulle Snake
The tulle version has a lot of flex and moves much like the original toy, but it is not as durable. Mine has survived so far, but I'm unsure when it will truly tear in two. I believe the 4 pieces of tulle (rather than 1) helps, but at the same time, I feel a tear is inevitable.
This is an entry in the
For the Home Contest
1 day ago
This is very nice! very creative!
Reply 1 day ago
Thank you :)
4 days ago
Reply 4 days ago
Thank you :D
5 days ago
Cool - this will also encourage some fishermen to experiment with 3D printing, because the product looks like an artificial lure. No idea if it would survive the harsh conditions in the water
Reply 5 days ago
That would be interesting to see! You could also used 3D printed articulated joints and there are stronger filaments that might hold up!
7 days ago
Hey, you really might need to use cura / ultimaker cura instead of PrusaSlicer
Reply 7 days ago
I've used it and think it's fine, I just prefer to use the PrusaSlicer with my Prusa. I also have Simplify3D but haven't used it in a while :)
7 days ago
These are so cool! :D
Reply 7 days ago