Skip to content

Springy pen holder for 3D printer / CNC, with software

Creation quality: 5.0/5 (1 vote)
Evaluation of members on the printability, utility, level of detail, etc.

3D model description

This is a pen (or maybe drag-knife (untested)) holder for attaching to a 3D printer head or a CNC (untested). The holder is springy (changing the spring thickness will change just how springy) and highly customizable. It's designed to be moderately low profile to give more drawing space.

You will need some sort of a tool-clip for attaching this to your print head / CNC. I use this one to attach to my XYZ DaVinci 1.0a. The SCAD file will generate holes for M3 screws to attach to the tool-clip. You'll also have to by default drill through the holes for M3 screws for holding the pen (or other tool), as there is a mini-support platform there.

The default pen size is up to 15mm, but you can resize that.

Changing the "wave fraction" from 0.5 to 1 gives you a longer section of a sine wave for the springs.

You can use my python script to convert SVG path-only files (just load an arbitrary SVG file into Inkscape, Select All, Object|Object-to-Path, and save) to gcode for this (I've only tested this on a 3D printer -- no idea if it'll work with CNC). I suggest editing to change the xyMin (lowest device coordinates for drawing area), xyMax (highest ones), penDownZ (z-coordinate for drawing), penUpZ (z-coordinate for moving) and safeUpZ (z-coordinate for parking) parameters at the top of the Plotter class to match your printer.

Once you have a path-only SVG file, you can do:
python filename.svg > filename.gcode

Then send the gcode file with your usual printer control utility (I use Repetier Host). You can also send the gcode directly to the printer with:
python --send=portname filename.svg
(On my Windows system, COM3 or COM4 works as the portname; you will also need to install pyserial, e.g., with pip install pyserial.)

By default colors are shaded with parallel lines according to intensity. In theory, though I haven't tested it yet, you can use the script to switch pens for different colors, by using a pen description file.

The Hello Kitty was taken from here and drawn directly on a sticky note stuck on the print bed. Ideally, the other end would be stuck down with painter's tape, but I didn't bother (and it only resulted in a slight shift in shading in one area).

3D printer file information

  • 3D design format: STL Folder details Close
    • springytool.stl

    Learn more about the formats

  • Publication date: 2018-10-09 at 13:42
    Published to Thingiverse on: 2016-11-30 at 03:19




Issue with this design? Report a problem

Best 3D printer files of the Tools category

Best sellers of the category Tools

Add a comment

Would you like to support Cults?

You like Cults and you want to help us continue the adventure independently? Please note that we are a small team of 3 people, therefore it is very simple to support us to maintain the activity and create future developments. Here are 4 solutions accessible to all:

  • ADVERTISING: Disable your AdBlock banner blocker and click on our banner ads.

  • AFFILIATION: Make your purchases online by clicking on our affiliate links here Amazon.

  • DONATE: If you want, you can make a donation via PayPal.

  • WORD OF MOUTH: Invite your friends to come, discover the platform and the magnificent 3D files shared by the community!