banner perso

Some links about me. Many of my 3D designs are free. I also post on Google+ and in another blog, oz4.us
review (32) general (26) issue (16) mechanical (16) replacement (14) software (13) addon (12) bowden tube (10) business (10) consumables (10) heat (10) feeder (8) hot end (8) weird (7) motor (6) off-topic (6) trick (6) electric (4) bed (3) cnc (2)

Tuesday, October 30, 2012

Shades of brown with wood filament, via varying temperature

Wood filament : changing temperature to get shades of brown, or tree-ring effects

Wood filament, temperatures from 205 to 240°, home made Skeinforge plugin

You probably want to check my first post about wood filament if you did not already.

This sequel shows how varying temperatures impacts the color of the filament (as advertised).

How ? Thanks to a plugin

I wanted to check different temperature ranges. I also did not want to add these manually in the g-code after the object is sliced.

So I developed a Cura and Skeinforge plugin (you can download it from github).

It inserts the appropriate M104 command at each layer, according to a procedural wood texture based on Perlin noise. I stopped trying to achieve horizontal variations because of the high thermal inertia of the head (which averages the temperature too much).

User provides minimum and maximum temperature, along with the grain size.

On the left: cushwa's owl (200-240°), check also the timelapse video.

Generated temperatures according to height, 3mm wood grain size, 200-240 temp range

Update (2012-12-07): this work was taken over by Daid and is now included as a post-processor plugin in Cura 12.11 (check Cura's plugins) - update: Ultimaker no more cares about Cura plugins! The page was down for years. Huh.

Update (2013-02-11): I also wrote a standalone Python script to run over your gcode file (please download and use the latest version from github). This one no more requires Skeinforge nor Cura (howto here).

Update (2013-07-07): and finally, it is also available as a simple online web service.

The same owl, back side (200-240°, 0.2mm layer height, skin, joris, 60mm/s)
Finer details if you click the image, then right click and open it in another window.
See how the ears got almost burnt because of the smaller surface / slower speed?

Are wood gradients worth?

Even though the final object looks more like wood and less like cardboard, I am not satisfied by my results so far. It is also a bit disappointing because it does not make the object much better in my opinion since the texture only is horizontal (not 3D). So it may just be different and interesting.

Vase, (175 to 255°). Too wide a range: some layers are underfed

A timelapse of the making of the vase (70mm/s)
You may like also the longer owl video !

The next picture gives a comparison of the vases with and without varying temperatures.
Note also how varying temperature increases the already very high roughness of the printed object.

The vase in the top right background was printed with constant temperature. 

Trying to find the proper temperature ranges

The filament seller recommends temperatures from 180 to 245°.

On my side, I failed some prints when going below 200° or above 250°.
In both cases the filament is not fed appropriately out of the nozzle. A good range for me was 205 - 245° (updated values!), as it results almost in the same range of brown shades in my opinion. So no need to take some useless risks.

Indeed, when the temperature is too high, be prepared to clog your nozzle and fail the print because the wood starts to burn. Reciprocally low temperature makes extrusion too difficult to get a proper flow.

Note: I should have tried lower speeds, I printed all these objects at 70mm/s, it may be too much since I usually stay at 60mm/s with regular filament. Also check this if your wood filament starts to crumble 

Update: you may want to read my newer post about filaments most suitable to artists.


  1. Wonderful work! Now I've got to get my hands on some of this filament.

  2. Why not post the plug-in to thingiverse?

  3. Well, it's actually a patch on a version of the source code that has become obsolete... But reciprocally, the good news is that it is now part of the official Cura! Just download version 12.11 and go to the plugin tab :)

  4. Update: now also a standalone Python script to run outside of Cura.
    Check it here: http://www.thingiverse.com/thing:49276