Smoothieboard is an Open-Source Hardware CNC controller designed by the Smoothie community to run the Smoothieware firmware.
Its main design goals are :
Uses as powerful hardware as possible at the time
Can control several machine types ( 3D printers, lasers, CNC mills/routers )
Easy to setup and use
Easy to do weird, new and exciting things with
Easy to develop for
This page is for v1, the first version of the Smoothieboard hardware.
The board uses the LPC1769 microcontroller, an ARM Cortex-M3 chip :
512kB ROM ( program space )
64kB RAM ( execution memory )
Compared to lots of other boards, this allows for faster/smoother movement, more features and more extensibility.
The board runs the Smoothie firmware, which has been designed and perfected to take best advantage of the hardware, to make the board easy to configure and use, and to add cool features.
The USB interface connects to a host ( your computer ), and can be used :
Via its USB/MSD ( Mass storage ) interface to directly access the SD card in the board ( read, edit, copy/paste files )
Via its USB/CDC ( Serial ) interface to send commands ( like Gcodes ) for execution, for example using host software
This allows for pretty neat things like :
Editing the configuration without having to edit source file or reflash the firmware
Dropping Gcode files to the board and executing them
Dropping firmware upgrade files to the board for easy flashing
The Ethernet interface allows you to connect the board to your local network ( LAN ).
You can then use a different protocols to talk to the board :
HTTP to use web interfaces hosted on the board, or via using host software that supports this
Telnet to send commands via a serial interface, or via using host software that supports this
The board comes with a SD card slot containing a 2GB card.
The card is used for :
The configuration file that the firmware reads at boot time to setup everything
The firmware file, which you can replace to upgrade the firmware
A boot gcode file that is executed when the board starts
Web interfaces for access via the ethernet interface
A bundle of software and documentation we prepared for you for those days when you don't have Internet access
You can also add Gcode files to it and then play them from the SD card, which is useful for files so dense that streaming them to the board isn't convenient.
Stepper motor drivers
Stepper motors are used to move axes on your machine, or turn extruders.
You plug them into stepper motor drivers on your Smoothieboard.
The drivers on the v1 board are A5984 drivers which offer :
1/32 ( quieter ) micro-stepping
Several protections making them sturdier
Digital ( configuration-file set ) current values, no potentiometer manipulation
Great heat-sinking allowing use of their full 2A current rating, for more torque/speed
The Smoothieboard 3X has 3 drivers, the 4X has 4 drivers, and the 5X has 5 drivers, thus their names.
Mosfets are transistors for high loads. They are essentially digitally controlled “switches”.
Your microcontroller can choose if they are let electricity pass or not. This is useful to control heating elements ( like hotends and heated beds ), fans, and other power-oriented peripherals.
Smoothieboard v1 has two types of Mosfets :
Small ones for fans, hotends, and other low loads ( 5A, up to 24V )
Large ones for heated beds, powerful hotends, and other high loads ( 12A, up to 24V )
Smoothieboard 3X has two small mosfets, Smoothieboard 4X has two small and two big mosfets, and Smoothieboard 5X has three small and three big mosfets.
This is more than you need, which is nice if you ever break one, and also means a Smoothieboard 4X can be used for dual extrusion just by adding an external stepper driver, and a Smoothieboard 5X can be used for triple extrusion the same way, because you already have extra thermistor inputs and mosfets.
All v1 boards come with 4 temperature reading inputs.
These can be used to read the resistance of thermistors in your hotend or heated bed, inferring from it its current temperature, and from this the temperature control module can regulate the temperature by choosing whether to heat it or not.
The board has 6 endstop inputs. These can be used for limit switches at the end of the axes, used to limit motion within the work area, or for homing to origin.
They can also be used to connect probes, for example for bed leveling or automated machine calibration.
Smoothieboard has a main power input that supports from 12 to 24V.
Each mosfet pair must also be powered via its own, separate input, supporting from 12 to 24V.
The board's logic power can be provided via USB, via the 5V power
1x Smoothieboard 5X V1.0 Mainboard
1x USB Cable
Some Jumper cap