I love machines that help me to build my projects. I also love to hack devices to do more than they were built for. So you can imagine what a fun project it was for me to hack my desktop 3018 CNC mill into a vinyl cutter!
A while back I got a cheap Chinese 3018 CNC desktop mill (link to banggood). It can mill wood, acrylic and many other softer materials. Some people even used it to engrave aluminum.
You can buy these devices in many different versions and sizes. They are usually built with 2020 and 2040 extrusion elements and 3D printed parts. 3 stepper motors control the position of the tool. One for the table in the Y-direction. And two stepper motors move the tool in X and Z direction. Mine is called 3018 in reference to the size of the build table: 30x18cm.
A spindle motor rotates the tool bit to engrave or cut away from the base material. With many of these CNC machines, you can replace the spindle motor with a (weak) laser module for engraving or cutting. I extended mine with a 2.5W laser (buy here) and it is strong enough to cut cardboard or even thin balsa wood. Turning the CNC machine into a laser cutter is quite easy. The controller board of my machine has a plug for the laser module. And a jumper to switch between laser and spindle control.
More Functions, Please!
But milling and laser cutting are not enough. I wanted to turn the desktop CNC mill into a vinyl cutter. You can use vinyl cutters to create stickers for your car. Or create your own T-Shirt patterns with heat transfer vinyl.
It turns out with the right tools it’s really easy. All you need is a drag knife and a 3d printed converter.
You can make the drag knife from a razor blade. Or you can buy a replacement part intended for a professional vinyl cutter. I believe it’s worth to spend $10 on this part rather than making it yourself. This will have a big impact on the quality of your cuts. You can buy a drag knife that fits the 3d printed part here from Banggood.
Thingiverse user [barts] has designed a two-part adapter to fit into the spindle motor holder. You can download it here.
[bart]’s 3D design is brilliant: it uses two thin connections as a spring mechanism. This way the cutter can compensate for uneven build surface and applies pressure more or less evenly. Other designs I found on Thingiverse involved proper springs. To find the right spring for the design can be complicated. The 3D printed spring mechanism, however, works really good.
As I said, the 3D printed model comes with two different parts. The first is the drag knife holder. The second one is the converter which neatly fits into the spindle motor holder. You connect the two parts with M2 screws. This can be a bit complicated since the nuts are inside the spring mechanism and hard to access. One note: put the two 3d printed parts together before you put the drag knife in or it will be even harder.
Preparing the GCODE
We have successfully converted the CNC mill into a vinyl cutter. But just having the hardware doesn’t cut us any good looking stickers. We need to convert a vector object into a language the printer understands. My CNC mill has a board with a GRBL firmware on it. This firmware parses instructions the computer sends and converts it into the movement of the stepper motors. The commands are called G-Code and are also used for 3D printers and other similar machines.
So how to we turn a logo into a vinyl sticker? Ideally, your design is already available in a vector format like SVG since this is much easier to be converted into machine instructions.
I use the free available open-source software Inkscape to convert SVG to G-Code. Inkscape is available for Windows, Linux, and Mac OS X. The Inkscape extension called gcodetools lets you convert vector graphics to gcode. And this extension is already included with the default Inkscape installation.
Inkscape is certainly not the most intuitive vector drawing program. But if you don’t like to draw in Inkscape you can prepare your design in another program. Then you import the design as SVG into Inkscape only to convert it to GCODE
Follow these steps to export the design in G-Code format:
- Convert the object into a path by selecting the design, then Path > Object to Path…
- Start the gcodetools extension:
Extensions > Gcodetools > Path to Gcode…
The default settings work for me except for the output path. Make sure that you find the exported files. Ticking the “Add numeric suffix to filename” adds a number to the end of the filename. This number will increase with every export.
Preparing the CNC mill
Assuming you have already connected the two 3D printed parts you now have to add the drag knife holder. Adjusting the knife inside the holder is easier before you put it into the holder. The tip of the knife should be visible only a little bit. You can do this with the lead screws on the back of the holder. Once you are happy with the result you can use the second screw to lock the first one in place.
I taped a piece of cardboard to the aluminum work table. I think any other soft surface will do as well. Then you cut out a piece of vinyl and tape it to the cardboard with painter’s tape.
I use CNCjs and bCNC to control the mill. There is nothing special about controlling the mill with a drag knife. Make sure that the knife is zeroed in x and y. Then use a bit of paper to zero the z-axis. Move the paper while you gradually lower the knife towards the bed. When you feel that the knife starts cutting the paper you are all set. The knife holder’s spring mechanism compensates should the knife be too low.
Post-processing the vinyl sticker
If everything went well you now have a piece of the vinyl sticker where the vinyl is cut but the carrier paper is intact. In order to transfer the sticker to your target surface, we have to do a bit of preparation.
Use an Exacto knife or your fingers to peel off any vinyl you don’t need. Sometimes part of the sticker that you still need might lift off. Carefully cut connections to the waste vinyl and press it back down. This is the phase that requires the most concentration. Make sure that you don’t forget to take off tiny parts. It will be much harder to remove them later.
Now glue painter’s tape on top of your sticker. The tape will serve to transfer all the single parts of the sticker to the target surface and keep everything in place. We use painter’s tape because we can easily remove it later on.
Placing the vinyl
Once you are ready to place the sticker on the target surface remove the white carrier paper. The vinyl now only sticks to the painter’s tape with the sticking side open.
Carefully align the sticker on the target surface. I believe professionals sometimes apply soapy water to the surface. This allows you to shift the sticker until it is in a perfect position.
Then press the vinyl as good as you can to the surface by applying pressure to the painter’s tape. Then start peeling off the painter’s tape while leaving the vinyl glued to the surface. Help with a knife to release tiny parts from the painter’s tape.
Here are again all the links to the products mentioned in this post. I didn’t get paid to advertise these products but by using these links you will be supporting this blog:
3018 3 Axis CNC Router. Around USD $200 from Banggood
2.5W Laser Module to extend the CNC router. ~USD $80 from Banggood
Drag Knife Holder + set of drag knives. ~USD $10 from Banggood
Vinyl sheets in various colors: ~USD $10 from Banggood
Iron-on Vinyl for T-Shirts: ~USD $8 from Banggood