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:
[!NOTE] 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.
[!NOTE] 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 ).
When setting up a machine to be controlled by a Smoothieboard, the process is generally as follows:
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.
[!TIP]
- 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.
When reading this documentation, understanding of basic principles of electricity will be expected and can not be done without.
Here are a few videos to refresh your memory:
There is very little math in these videos ( except the last one ), if you have a hard time with what’s still there, we warmly recommend heading over to Khan Academy’s math videos for easy to digest courses.
If you want to go further on this subject, you can also follow this basic Electrical Engineering video course.