Using Inkscape to Generate Gcode

From Open Source Ecology
Jump to: navigation, search

Gcode Plot

  1. Video 1 - [1]
  2. GcodePlot extension for inkscape. Inkscape post - [2]. Github - [3]. Instructable - [4]
  3. Pen holder 3D design - [5]. Simplest way - is a flat piece of plastic. Support should be 2-point for parallelogramming (goes straight down) or 4 point for straight up-down - though 2-point parallelogramming should likewise produce straight up-down. See D3D Universal#Plotter pen holder design.

GcodePlot Extension Install

  1. Download .zip file from Github [6]
    1. Save to an easy to access location i.e. home/downloads/
  2. unzip the file in the above location i.e. home/downloads/gcodeplot-master
  3. Navigate to the directory where the file is unzipped (above example is "home" and right click downloads -> open in terminal.
  4. Terminal should show "username:~/Downloads$"
  5. Type the following command in the terminal: sudo cp -rv gcodeplot-master/* /usr/share/inkscape/extensions/ Press enter.
    1. Basic explanation of above code: "sudo" = Super User Do, "cp"=copy command "-rv"=Options flags for the copy(r=recursive v-verbose(show output on screen)), "gcodeplot-master/*"=copy all files within gcodeplot-master, "/usr/share/inkscape/extensions/"=copy the files to this location. (More info easily found by Googling "Linux cp command" or typing "cp --help" in the console)
  6. Terminal will request sudo password (this is the same password you use to log into OSE linux) - Character entry is not shown, so very carefully enter your password and hit enter.
  7. You will see several lines appear, indicating that the files have been copied
    1. The last few lines should look like the following:
'gcodeplot-master/svgpath/path.py' -> '/usr/share/inkscape/extensions/svgpath/path.py'
'gcodeplot-master/svgpath/shader.py' -> '/usr/share/inkscape/extensions/svgpath/shader.py'
'gcodeplot-master/TODO' -> '/usr/share/inkscape/extensions/TODO'
  1. Close Inkscape if open
  2. Open Inkscape, go to file->Save As, then verify in dropdown filetype selector that "3-axis gcode plotter (*.gcode)" is an option.
  3. Installation now complete!

Instructions

From Instructable, in pertinent part, after installing extension:

  1. Start Inkscape.
  2. Load the SVG file you want to draw or cut into Inskcape. The lower-left corner of the page in Inkscape corresponds to the minimum X and Y coordinates you measured in the previous step. Make sure your images fit into the print area.
  3. Convert the drawing to a path: Use ctrl-A to select everything, then Path > Object to Path.
  4. Save to gcode:
    1. File > Save As
    2. Select: 3-axis gcode plotter...
    3. Make the area SAME in document size as the X and Y in the output settings.
    4. Go to the Fitting and Extracting tab and select Left for horizontal and vertical alignment.

Exercise

  1. Get your hands on SVG files. Since there are more PNG than SVG available in the wild - convert PNG to SVG first with Inkscape - [7]
  2. Take a file such as OSE d3d printer logo v1-16a.png. But would need to convert it to vectors. Power user material.
  3. So start with a vector file - File:Axis Idler LAI SVGs.zip
  4. Yes! Convert Object to Path in Path menu in inskscape
  5. Export gcode.
  6. How do you know g-code is valid? Use OpenSCAM - see [8]. To install a deb package, use a tool called gdebi. OpenSCAM installs under the name CAMotics. Didn't work on Ubuntu 16.04.
    1. Use https://ncviewer.com/ instead

MJ Notes

  1. Installed GcodePlot for Inkscape.
  2. Drew in inkscape. Set coordinates the same in Save As Gcode and in Document/Settings for the document
  3. Viewed the file in https://ncviewer.com/. Line I drew showed up, but not the text.

Inkscape Notes

  • Work in File -> doc properties
  • In inskscape, make sure you have a correct image size
  • Work in mm'
  • Using a vector file, grab a corner to resize it correctly in mm
  • In path menu - select Trace Bitmap
  • Save SVG
  • Then it's ready for the Inkscape plugin called Gcode Tools
  • https://www.lifewire.com/inkscape-to-make-templates-cutting-machines-1701892 - turning letters into gcode with gcodetools - works for us
  • Add G29 and eliminate pen park in preprocessing for printing


Gcodeplot Settings

  • Set z working height to 0
  • Make sure you are within 150 by 150 mm boundaries
  • Make sure you add your tool offset, if applicable, in the Cutting Settings tab
  • Copy start gcode. from d3d universal on homing and leveling
  • See Jessica Log
  • From Don Log:

Inkscape has many setting to review when exporting (save as) to gcode. The notable ones as follows:

GcodePlotExportSettings.png

- Precision setting should be set to 0.010 to correspond to the 10 microns of accuracy that the D3D printer is designed to achieve. - The left/right & upper/lower coordinate settings are very relevant to how the plotter arranges itself on the print bed. - Speed settings could be increased as high as 150 mm/s. NOTE: these speeds over-ride the speed settings which can manually be set on the marlin controller.

Sample Files

View in the browser with NC Viewer or OSE Linux 2 users can view the sample files using CAMotics, a software application included in the distribution.

Support

  • It appears that the GcodePlot extension is not supported. See thread with some troubleshooting on proper install - [9]
  • Russion support forum with some usage instructions - [10]
  • Video - how to generate gcode in inkscape - [11]

Other Ways to Work With Inkscape SVG Files

See Also

Materials on using Inkscape with OpenSCAD: https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Using_the_2D_Subsystem#Getting_Inkscape_to_work