Pulsar Spinner

by berky93, published

Pulsar Spinner by berky93 Feb 14, 2017


Use This Project

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

7552Views 2074Downloads Found in Toys & Games


Announcement: You can now purchase this spinner from my shop. Check it out!

Update 2/20/2017: Added a version of the pins that features a twist-lock mechanism based on 2ROBOTGUY's ingenious design. They interlock for a nice, sturdy fit that won't come loose easily.

Update 2/20/2017: I've added a new version of this spinner that features an embedded bearing, as well. Simply pause the print as normal and insert the bearing alongside the 3 counterweights.

I decided to hop on the spinner bandwagon because I love fidget toys. But I don't like the exposed hardware on most spinners. This version uses hex nuts that are inserted during printing as the counterweights for a seamless look and feel. It's also a bit more compact than spinners that use bearings as counterweights.

Requires 1x 608 skateboard bearing and 3x 3/8" hex nuts. I chose brass ones since they're heavier but any nuts should work. You could also use hex stock cut to the same size, which would increase the weight (since the center of the nuts is hollow) and improve the spin time, but also increases the amount of work that needs to be done to build these. The nuts must be a maximum of 6.35mm thick and 15.85mm wide (from flat to flat). The ones I used are here but you could probably find others that will work.

Printing one of these is fairly simple but the mid-print hardware insertion can be confusing for some people so read the printing instructions below for more information.

Print Settings

Printer Brand:



Wanhao Duplicator i3 V2


Doesn't Matter




Assembly steps:

  1. Slice the models like you normally would. Be sure to print 2 of the pins, one for each side of the spinner. Make sure you don't have supports enabled.
  2. Take note of which layer is the first one to cover the hexagonal holes. You will need to insert a pause command into your gcode before that layer. I've included some sample code -- the code I always use for pauses -- below. Simply open your gcode file in any text editor and insert the code on the line before that layer starts. Most slicers include comments that denote the layer numbers.
  3. Print!
  4. When the printer pauses, insert one hex nut into each of the 3 holes.
  5. Resume the print. Different printers handle this in different ways. Some show a "resume" button/option on their main screen, while others bury it under menus. You'll have to do some research if you aren't sure how to pause/resume on your printer.
  6. Assemble your spinner. The tolerances can vary from printer to printer, so you may find the bearing or pins are slightly loose. A drop or two of CA glue (super glue) should do the trick.
  7. Enjoy!

Here's my pause code:

M85 S0; Disable Timeout
G90 ; Absolute
M400 ; Wait Buffer
g28 X Y;
G91 ; Relative
G1 Z50 ; Move Up 50
G90 ; Absolute
M117 "Change Filament" ;
M400 ; Wait Buffer
M300 S2000 P150; Play Tone
M300 S2000 P150; Play Tone
M300 S2000 P150; Play Tone
M25 ; Pause SD Print
G92 E0 ; reset extrusion distance

More from Toys & Games

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

could you make a version that fits 608 bearings? aka skateboard bearings

This one was designed to fit 608 bearings. If you're having trouble getting them to fit, you might need to check that your dimensions are accurate (try printing a calibration cube) and that you aren't over-extruding.

which one is it?

3 days ago - Modified 3 days ago
berky93 - in reply to tjnorris26

Both. The only difference between the two versions included is that the regular one has an embedded bearing, meaning you insert it during the print alongside the nuts and it gets permanently integrated into the print, while the press-fit one allows you to insert the bearing after-the-fact.

so i can imbed bearings too?

Yep! Just print the normal version (the one that doesn't say "press fit") and when you pause the print to insert the hex nuts you'll insert the bearing, as well.

so can i use bearings on the outside instead of nuts?

3 days ago - Modified 3 days ago
berky93 - in reply to tjnorris26

No, sorry. The spinner was specifically designed to use 3/8" hex nuts and bearings won't fit. There are plenty of options if you would like to use bearings as weights but, frankly, I don't see what the point would be in a spinner like this since they would be completely encased. Hex nuts are far cheaper.

nice design , sadly the measurements for the bolts excludes any country that uses metric nuts like M8 M10 M12 etc as the nuts uses are imperial ( mainly used in USA ) would be nice to see a Metric version of this design :-)

I mainly chose the nuts I did because I was able to source them in brass, which is heavier than steel. However, I can tell you that the ones I used are 6.35mm thick and 15.85mm wide from flat to flat (I also updated the description with those measurements) so you can try to find metric nuts that fit those measurements. They don't have to be exact -- if you get some that are slightly smaller you can just put some super glue (be generous about it) in the holes with the nuts and it will harden to fill the gaps and keep everything in place.

what size nut sory

3/8". You'll want to make sure the nut is 1/4" thick, which is just under the 7mm thickness of the bearing.

what is that in the metric system? I am not sure to use m8 or m10 nuts

Not sure the exact metric size but I can tell you the nuts I use are 6.35mm thick and 15.85mm wide from flat to flat.

Unless I'm crazy the v1 and v2 uploads are the exact same.

Mar 12, 2017 - Modified Mar 12, 2017
berky93 - in reply to alkiax

The V2 has an overhang on both the top and bottom of the bearing, so you can embed it into the print alongside the nuts. The V1 is a press-in bearing (I've also slightly updated the tolerances on the V2 but the V1 works great, still).

Good to know. Thanks going to try it now. How tight of a fit is it to push the bearing in or does it just plop in. First time I will be pausing a print so is it better to put that into the gcode or just do it manually?

The bearing is snug but goes in pretty easily. I would recommend putting the pause command into the gcode, for two reasons. First off, it ensures you can pause at the exact right height since pausing too high would be too late and too low might cause the nozzle to run into one of the protruding parts. Second, it lets you include a move command (I have the printer home X) before the pause so that you have room to insert the parts without having the hot extruder in the way.

Thanks for the help. Now to figure out to do it all. :)

I'm guessing it isn't a 608 bearing. Its still printing but holding it up the the hole thats there now i dont think it has a chance of fitting in there

It is a standard 608 bearing. Should fit, with just enough clearance to be able to press it in. It's not a loose fit, though it's not so tight that you will push the print out of alignment inserting it.

Haha well if you need any help, let me know!

My bearings must be bigger bc there is no way haha. Been meaning to work with sketchup so itll be a good experience for me to try to create one. I did get the print to pause so atleast I'm learning. not sure how well it will turn out. seemed like the layers didnt start back at the exact right spot. A little high or something.

That's possible. You might also want to print a calibration cube to make sure your printer is printing accurate dimensions. There are also things you can add to your pause script, such as position resets, to help ensure things stay aligned.

I have a printrbot play with a auto level sensor, How would one go about doing this
and the sensor not detect the nuts while printing? If I'm not mistaken the sensor detects
metal surfaces. Which I would think would pick up the nuts... Or is it only detecting during
the beginning homing quiescence?
Thanks in advance.

Generally printers with an auto leveling sensor only level when told to, or at the beginning of the print. You don't insert the nuts until close to the end of the print, so they shouldn't interfere.