Best way to compile Smoothie for printer with a rotary axis

I am building a machine to do ceramic paste printing. My application requires that I print on a turntable for technical reasons, so I need a rotary C axis. I need to be able to run the paste extruder and rotary axis simultaneously, so I can’t just setup a second extruder for the turntable and be switching back and forth between T0 and T1. I have looked at using extruder mixing in other firmwares (Marlin), but they don’t allow setting distinct E factors (steps/mm) for each extruder.
I see that Smoothie allows setting up to 6 axes if compiled with AXIS=6 and CNC=1 . However, it’s not clear to me if there is a way to leave out the CNC=1 and just use use the default AXIS=5 and still have an extruder “E” G-code and an added rotary axis G-code available. I think that default AXIS=5 just gives you 2 extruders which have to be independently selected (T0, T1)
I’m writing my own G-code generator, so I can work around G-code nomenclature if necessary. If Smoothie allows distinct steps/mm factors for two extruders AND they can be run simultaneously (no T0-T1 switching), I can work with that, OR - I could potentially use a CNC build and assign the A axis to the extruder and the B axis to my rotary table.
Ideally, I’d like to just issue a G1 C360.0 E200.0 or similar to spin the turntable 360 degrees while synchronously extruding 200mm of paste (or whatever is the proper amount for the current circumference that will be calculated in my G-code) .
I’m really asking what is possible so that I don’t have to waste time on trial and error to find out what works and what doesn’t.


I think what you are trying to achiev is called a polar or rotary 3d printer. You basically replace the x or y axis with a rotary table, so instead of a cartesian system, you need polar system.
Something like this?

If this already has been implemented, you should be able to configure it in the config file. See arm-solution (and following) on

Thanks Claudio,
Actually no, I’m familiar with the Polar coordinate kinematics. What I’m doing is much simpler. It’s still a basic Cartesian XYZ machine with extruder but with an added rotary axis. I understand the confusion on why a rotary axis would be needed on an X-Y system that can already draw circles. It has to do with the fact that the nozzle is not circular and has a special geometry that must be kept aligned radially with the center of the part. There are template particles in the ceramic paste which are specifically aligned by the shearing forces that occur as the paste exits the nozzle.
When printing in this mode there will be no movement of the Y axis and very slow movement of the X axis (just the width of the extrusion per rotation) to trace out a spiral pattern. Think phonograph record. I am basically just printing out cylinders with a hole in the center. The machine also needs to double as a standard XY printer when the rotary axis is not connected and is not sitting on the X-Y table.

So, basically I’m just looking for the best firmware compilation/configuration option to add the rotary axis to a standard Cartesian machine. I’ve done some searching and have discovered that some things (such as having extruders and a rotary axis (CNC) at once was not possible in Smoothie a few years ago, but can’t determine what is possible now. I’ve considered just compiling as a CNC and then using the A axis as my extruder and the B axis as by rotary table. However, If I do that then I give up the ability to use to conventional XYZE 3D printing slicer software because I’ve eliminated the extruder “E” Gcode. I’d have to switch back and forth between firmwares depending on the printing mode I wanted. I could possibly do a search and replace in the Gcode, but that is not a desirable solution.

Since I’ve gotten no feedback on this, I’ve compiled Smoothie with CNC=1 and made the “A” axis my extruder. This is not an ideal solution because I now have a machine that will not process normal 3D printer Gcode.
When playing back my own Gcode from Simplify 3D or other host software, I have also lost the ability to apply an extrusion multiplier or to manually adjust extrusion rates. I’m still looking for solutions so that I don’t need to utilize this hack.