algorithmic modeling for Rhino



Silkworm is a plugin that translates Grasshopper and Rhino geometry into G-Code for 3d printing.  Silkworm allows for the complete and intuitive manipulation of the printer G-Code, enabling novel printed material properties to be specified by non-solid geometry and digital craft techniques.


Download at:

Location: London
Members: 168
Latest Activity: May 6, 2022

Source Code Release

Hello Silkworm users,

Due to recent interest in this plugin again we are today making the source code public.  This source code can be downloaded at this location, we hope you can join our collaborative project:


Additionally we are hoping to progress with the development of a few items over the coming months and weeks, this is also how we would like to organise our G-Code/ 3D printing components:


1. Settings

  • Clarification of the use of settings in the Silkworm components;

  • Extend settings customization possibilities (flowrates, jerk, steps/mm, accelerations, temperatures, hardware physical properties etc)

  • Create a database of default setting files for the more popular types of 3d printers

  • Dynamic settings and custom slicing algorithms

2. Geometry

  • Optional add Brim

  • Generate supports for geometry

  • Support for custom infill patterns

3. Compiler

  • Porting of component C# code to Grasshopper user objects for additional user accessibility, excluding Generator and Visualiser components

  • Multi-extruder support

  • Colour printing support

4. Visualization

  • Develop visualisation component to support additional attributes (i.e. colour printing) and physical simulation

5. Printer Control

  • Send to print button to send G-Code directly to printer

  • Integrate a printer client for real time control of the 3d printer

If anyone is interested in helping with these items they can email us at

The Silkworm Team

Discussion Forum

Multiple Tools?

Hi there!new to Silkworm, was wondering if silkworm can accept multiple tools (extruders)?with different settings for each tool of course.thanksContinue

Started by CJ BRAVO Nov 3, 2019.

Create Perimeter to get Plastic Flowing

Hi, I opened some Silkworm files I did some time ago. Now I note that there is a problem with "Create Perimeter to get Plastic Flowing" in the filler component, I have opened the included "example…Continue

Started by Runar Söker Nov 2, 2019.

All examples broken

Hi all, It seems that all the examples are broken, is this an error on my side or because of Rhino V6?Further, when can we expect the next version to be released?Thanks,CharlesContinue

Started by Charles Fried Jul 25, 2018.

Extrusion multiplier issue

I had similar issues as others getting a working Slic3r config and finally ended up editing the given file. I'm printing clay with a Potterbot and my extrusion multiplier is high, usually 13, because…Continue

Started by Lesley Claire Baker Oct 27, 2017.

News from Silkworm's blog

Loading… Loading feed

Comment Wall

Add a Comment

You need to be a member of Silkworm to add comments!

Comment by greyBow on February 22, 2019 at 22:04

Hello -

I'm trying to build a Silkworm definition directly from one of the examples on the Silkworm website but I don't understand the VB component in the definition. Above the component in a panel it shows the operation A = x - Int(x) but when I write that into the script editor I get the error "1. Error (BC30451): 'Int' is not declared. It may be inaccessible due to its protection level. (line 68)". How do I get this to work?

Comment by fouadnhm on June 23, 2018 at 23:15

Hello Everyone , 

thank you for accepting my request to be one of this nice group, well i am a fresh learner about silkworms plug-in i am trying to do ruled surfaces, but i have a problem with loading setting it's doesn't work even i have written the G-code by the panel component . 

Comment by Pmpetros on June 17, 2015 at 23:12

Hello all. 

I've been trying to get g-code out for my desktop cnc machine. I use Grbl as my g-code sender program. 

I've mostly figured everything out except for the settings file. I have no idea what to do with the settings file. I'm very lost and I'm thinking if i cant figure this out i might jsut have to get some random settings file and just modify the g-code file after.

Anyone have any luck with creating Gcode for CNC?

Comment by Gregory Epps on June 2, 2014 at 4:51

Hi Arthur - great news about the open sourcing, I hope we can help... and get Silkworm talking to Godzilla! Greg

Comment by Andrei on June 1, 2014 at 11:44

Hi all Silkworm users,

Here are some tests I did using Silkworm, printing gCode generated directly from curves made with a simple grasshopper algorithm. The idea is to print a solid outer shell (a cylinder or a prism) and generate some inner straight lines defining ruled surfaces.


Comment by Arthur Mamou-Mani on March 18, 2014 at 15:57

Hi Robert, thanks I am trying to solve this. I will let you know. In the meantime you can download silkworm here:

Comment by Robert Moore on March 18, 2014 at 13:33

Is anyone else getting a 500 internal server error when trying to download the plug-in?

Comment by Silkworm on January 30, 2013 at 15:33

New blog post explaining Flow, Feedrates and Stringing on the Project Silkworm site:

Comment by David Stasiuk on September 18, 2012 at 0:45



Members (168)






  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service