Smoothie basics

Here are some basic notions and pointers about Smoothie.

Smoothie is a firmware.

That is a program that executes on a micro-controller, basically a very simple/small computer used for very specific tasks.

The micro-controller is located on a controller board, for example Smoothieboard, where it executes the Smoothie firmware.

This program receives instructions from your computer ( typically G-code, generated by CAM software ), and executes them, for example by moving stepper motors in a coordinated fashion, and operating tools.

If you are curious, you can find a list of G-codes for Smoothie, and their explanation, here.

This allows you to use Smoothie to execute CNC operations.

Some examples of workflow :

3D printer

  • Create a 3D model using 3D drawing ( CAD software ), for example OpenSCAD.
  • Export this model as a STL file, that is the standard file format generally currently used for 3D models exported for 3D printing.
  • Use CAM software like Slic3r, to convert the STL file into a G-code file.
  • Connect host software like Pronterface to your Smoothieboard via the USB cable.
  • Instruct the host software to start the print.
  • The host software will stream the G-code to the Smoothieboard, which will execute each G-code command in sequence
  • The motors move, the extruder extrudes, and a nice-looking 3D printed object gets created.

CNC milling machine

  • Create a 2D or 3D model using 2D or 3D drawing ( CAD ) software, for example OpenSCAD.
  • Export this model as a STL or DXF file, STL is generally used for 3D milling operations ( for example surface carving ), and DXF for 2D or 2.5D milling operations ( for example contour or drilling ).
  • Use CAM software like CamBam, to convert the file into a G-code file.
  • Connect host software like Pronterface to your Smoothieboard via the USB cable.
  • Instruct the host software to start the operation.
  • The host software will stream the G-code to the Smoothieboard, which will execute each G-code command in sequence
  • The motors move, spindle spindles, and a milled object gets carved out of material.

The workflow is very similar for a laser cutter, as it is essentially a CNC mill with a very very thin tool ( the laser beam ).

Smoothie adventure

When setting up a machine to be controlled by a Smoothieboard, the process is generally as follows : 

  • Before anything else, read the guide for your machine type : 3D printer guide, laser cutter guide or cnc mill guide, in it's entirety.
  • If using Windows, install the driver.
  • Install some software to talk to the board.
  • Connect your board to your computer via usb or ethernet and practice talking to it.
  • Now following the guide, start plugging peripherals into your board, and editing your configuration accordingly.
  • Test each thing before moving on the the next, it helps make sure if there is a problem you know exactly where it happens.
  • Once everything works, you can start using your machine to fabricate things.

Communication

You can't do anything if you can't talk to your Smoothieboard.

The usual way to do so is to simply connect a USB cable to your Smoothieboard, then to your computer, and then to connect your host software to the Smoothieboard.

See your host software of choice's documentation on this matter.

The Host software will then provide you with a graphical user interface to interact with your Smoothieboard ( and therefore with your machine ), and you shouldn't have to worry about communication more than this.

Going further

  • Aside from connecting via the USB cable, you can also use the on-board Ethernet connector to interface with the board, see Ethernet. This provides a telnet interface ( similar to the Serial/USB interface the USB cable offers ), and a Web interface. One advantage of this is that Ethernet is less prone to suffer from Electromagnetic interference problems than USB.
  • Smoothieboard has an on-board SD card. Instead of using your host software to stream your G-code program line by line, you can also upload it all at once to the SD card, then execute it from there. This removes the bottleneck of communication while printing ( though that is very rarely a problem ). See Printing from the SD Card.
  • Smoothie has a set of commands you can use to interact with and configure the board. See Console Commands
  • The G-codes that Smoothie understands are listed at Supported G-codes.

This site is a WIki, which means you are very welcome to help us improve it. Help on how to do that can be found at the Editing the Wiki page . You can edit any page by clicking the "Edit" button bellow :