I own a Cutting Plotter from Helo, which is bundled with HeloCut, a proprietary software which connects to CorelDraw or Inkscape.

This software has many disadvantages:

  • It is expensive
  • It can only drive a Helo Plotter
  • On install it is bundled with your Computer hardware and cannot be installed on 2 Computers or a fresh install of the same Computer!!!
  • It is buggy as hell
  • The only thing it does (as i found out) is converting the SVG data to HPGL which is an open data format for Plotters (Dating back to the 90's)

To summarize it: Every time you re-install windows you have to spend 70 Euros (or 50 Euros for an update) for the same software again.

All this points made me search for alternatives. There are a few ones, but none of them are really "good software". Most are very expensive, and then there is InkCut.

InkCut COULD be a good and usable alternative, but it is also buggy and difficult to understand. And the knockout argument against InkCut is that it does not run under Windows. Or to be precise: It only runs under Windows after installing tons of Python Software in an specific fashion. This is simply much too complicated for normal users. And even if some users manage to do so it is missing some major features that are not compatible with windows.

After doing a ton of research i realized two important points: First, Windows is automatically installing a Serial Interface when the USB cable is connected (The chip the Plotter uses is a standard, widely used Serial-to-USB bridge), and second, Inkscape already has a HPGL export (Since 2008), which outputs data that can be sent directly to the Plotter via a serial connection.

Now i could export a drawing to an HPGL file, open that file, copy the HPGL data and send it via a serial console program directly to the Plotter. That worked.

The existing HPGL export of Inkscape is very basic, and i found that it is missing two important features: Overcut and Tool Offset correction. Both features are vital when plotting on a Swivel Knife Plotter (That is the most common type of Plotter). Without those features the drawing will look like Comic Sans because the knife is dragged around, also the plot will most of the time not be closed and stick to the rest of the foil.

This demonstrates the path to plot with and without the Tool Offset correction. Since the knife is dragged behind, the path on the right will result in sharp edges on the plot:

HPGL_Export_Interface_Correction

After some bickering with myself i decided to expand the existing HPGL export in Inkscape. I added all the features i found missing and even added a nice little feature which raises the convenience a lot: It can now send the Data to the serial interface by itself.

This is the new Interface:

HPGL_Export_Interface

On first glance it is a bit intimidating, but every feature has a Tool Tip to help you understand what it does:

HPGL_Export_Interface_ToolTip

Now the HPGL export is full featured, easy to use, and does (nearly) the same things that very expensive software does.

New features:

  • Selectable offset
  • Selectable alignment
  • Overcut
  • Tool offset correction
  • Automatically chosen zero point
  • Send HPGL data via serial port
  • Help texts on all options
  • Changed all units from Pixels to mm (Pixels are not a real world unit)

This new export will be officially included in Inkscape 0.49, or if you are impatient you can download a "Development Version" from the same download page further down.

If you want to use the serial communication you need to install pySerial also (Open Source):

  1. Download pySerial here: http://pypi.python.org/pypi/pyserial
  2. Extract the "serial" subfolder from the zip to the following folder: "C:\Program Files (x86)\inkscape\python\Lib\" (Or wherever your Inkscape is installed to)
  3. Restart Inkscape

How to Use the HPGL export:

  1. Ungroup all your drawings
  2. Convert all your drawings to paths
  3. Union all paths (Not necessary, but the Plot order will be better if you do so)
  4. Click "File" -> "Save As"
  5. Choose "HP Graphics Language file (*.hpgl)" as type
  6. Click "Save"
  7. Choose the Parameters as they fit your Plotter
  8. If you want to plot right away, choose the serial port and baud rate fitting your plotter
  9. Click "OK"

I hope it is as useful to you as it is to me.

Please let me know how it works with your Plotter and if you have any problems in the comments!