Smoothie is a free, opensource, high performance and modular G-code interpreter and CNC controller for the LPC17xx micro-controller ( ARM Cortex M3 architecture ). The motion control part is a port of the awesome grbl. The Source code is on GitHub


» Step by step 3D printer guide

» Step by step CNC Mill guide

» Step by step laser cutter guide

In detail

Available now : SmoothieBoard, the all new, modular and awesome, smoothie-dedicated CNC controller.

More : Windows Drivers, Linux Drivers, New Features, Gallery, Smoothieboard Beta Guide


upgrade to GCC 4.8
posted on 16 Sep 2014 04:51

Volumetric Printing Support Added
posted on 14 Aug 2014 05:27

Configuration Submenu Added to Panel
posted on 01 Jun 2014 21:25

Zprobe software update
posted on 26 Apr 2014 18:09

config: planner_queue_size
posted on 20 Jan 2014 22:38

Smoothie sited driving an h-bot on Hackaday
posted on 05 Apr 2013 16:55

Smoothie ported to online mbed compiler
posted on 31 Jul 2012 21:17

GitHub Release
posted on 20 Sep 2011 20:28

A4983 on a breadboard
posted on 14 Feb 2011 14:27

It's a very nice chip, it has 1/16 microstepping, can drive up to 2A, and has the simple step/direction interface.
Most common way to use it is via the Pololu Driver Carrier, but in the case of Smoothie, we want all of the 4 drivers directly on the PCB, so that they can share the heatsink/fan, and also share some components. (read more…)

MCP4331/4351 on a breadboard
posted on 13 Feb 2011 19:32

That will allow direct control of the current settings from the firmware / via serial commands, and automatic benchmarking of the current settings. (read more…)

» Get a Smoothieboard


For users

  • Powerful ( 100-120Mhz, 32bit ) yet cheap ( available at arduino-like prices ) micro-controller.
  • Look-ahead acceleration management, resulting in smooth, jerk-free motion and enabling higher speeds.
  • Can be used right now for CNC milling, laser cutting, and 3D printing. Laser engraving in progress.
  • Opensource/hardware all-included controller board
  • SD-Card allows host free printing, very simple configuration and update
  • Composite USB Mass Storage + Serial interface to host.
  • Free email support.

For developers

  • Modular, event driven design, allowing to add functionality easily without modifying the core. See the ModuleExample.
  • Designed to support non-Cartesian machines ( rotational axes : wall drawer, SCARA robot, Delta/Parallel robot, Robotic arm, Spherical/Cylindrical robot, etc … ). Currently supported : Cartesian and H-Bot ( CoreXY ), Delta and Feather.
  • LPC17xx leaves lots of room for additional functionality.
  • The mBed functions and additional libraries are available for easy and fast prototyping. But compiles off-line ( using GCC ), not dependent on the mBed online compiler.
  • Heavily commented code

Developer documentation

  • HowItWorks : Walk-through the inner workings of Smoothie ( with graphics ).
  • ModuleExample : Basics of working with Modules in Smoothie ( how to add functionality ).
  • Listofevents : List of all Events you can register for.
  • Developers-Guide : Information useful to smoothie coders
  • LPC1769 pin usage : Documents all the pins used and which are spare
  • DebuggingSmoothie : Using the built-in MRI serial debugger
  • Coding-Standards
  • Eclipse : Using Eclipse IDE to build and debug
  • Github : How to submit pull requests for Smoothie
  • Third Party Branches : a list of useful branches to smoothie that may be helpful to some but are not included in the main branch
  • Smoothie developer IRC forum on IRC in #smoothiedev

Smoothie in action

More in the gallery

Site List of All Pages.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License