Skip to content
An experimental design and printing tool, made exclusively for the Ultimaker 2 printer.
Java Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Folume is an experimental design and printing tool, made exclusively for the Ultimaker 2 printer.

A while ago I wanted to learn more about 3D printing and bought a Ultimaker 2 3D printer. Like most people I started my first steps in 3D printing by printing some free 3D models using tools like Cura and Simplify3D. But in order to properly design a model from scratch, I would need to learn additional design tools like Maya or Blender.

Instead of learning a new design tool, I wanted to build something that allowed me to understand the details of 3D printing. Something that could generate a simple design and send that directly to the printer without any abstraction layer or interpretation. To keep things simple, I decided to stick to a basic mathematical shape and lo and behold: The idea behind this "cylindrical lamp shade design tool" was born.

The first thing to know is that 3D printers don't understand 3D models, instead they need to be converted (sliced) to a format or "language" called G-code. This G-code tells the printer exactly what to do and when to do it. So, I created an application in Processing that can generate a design, output it as G-Code and send that to the printer via USB. Working with this G-Code directly allowed me to learn all the settings like temperature, acceleration, feed-rate, retraction, etc.


  1. We now have some nice lamp shades for our home.
  2. 3D printing is a very very slow process. Even printing a simple lamp shade would take around 30-45 minutes. This makes debugging your tool a bit of a pain in the ass.


Light on

Light off

Print details

Print details

GUI design mode

GUI print mode






You can’t perform that action at this time.