Smoothieware
Smoothie is a free, opensource, high performance and modular G-code interpreter and CNC control system for the powerful SmoothieBoard 32bit controller. It's designed to be very user-friendly and hacker-friendly. The Source code is on GitHub. ヾ(❀◦◡◦)彡
The Smoothie project is always looking for help. Whatever your skills are, there are things you can do to improve the project with the other volunteers. If you feel that you could give us some of your free time, please contact us, help and working together is what has made this project so neat, advanced and precious over the years, and is very welcome.
Documentation
Step by step guides
Firmware documentation
- Configuring Smoothie: Configuration and use, by module
- List of all configuration options
- Motion control: All things related to gcode interpolation, motion and acceleration planning, and step generation
- Arm Solutions: Cartesian, Delta, Hbot, Core-XY, Rotary Delta, Morgan Scara
- 6axis: Using A, B and C axes, for 4, 5 or 6 axis motion.
- Grbl mode: Using Smoothie in CNC-specific mode instead of 3D printing mode
- Tools
- Extruder: Control extruders for 3D printing
- Temperaturecontrol: Heat and cool things like hotends and heated beds
- Laser: For cutting
- Endstops: For homing
- Spindle: Control your spindle motor with G-code
- Switch: Quickly create custom G-code ⇆ Input/Output mapping without needing to write a custom module, like to control a fan
- TemperatureSwitch: Automatically turn/on a device based on a threshold temperature
- ZProbe: For probing, levelling, and automated calibration
- Drillingcycles: Canned drilling cycles support
- Filament-detector: Use an encoder to check filament is pushed correctly
- Utilities
- Smoopi: New and Recommended drive Smoothie using a color touch screen on Raspberry Pi
- Player: Play files from the SD card
- Currentcontrol: Digitally control your stepper motors current
- AdvancedMotorDriver: For controlling SPI based stepper motor controllers like DRV8711 and TMC26X
- Configurator: Manipulate configuration using console commands
- Kill Button and Play LED: S/W based kill and play activity LED
- Panel: Drive smoothie directly without a host using monochrome lcd screens and click encoders
- on_boot.gcode: Execute G-codes every time the board boots
- Using Smoothie: General firmware use
- Troubleshooting: It doesn’t work (ノo益o)ノ彡┻━┻ ! What to do ∩(︶▽︶)∩.
- MRI: In the very rare case smoothie code crashes
- Contributing: We need your help!
- Todo: List of the things that are being worked on in the project.
- Editing the Wiki: How to edit this documentation and improve it.
The firmware.bin file
Note, Smoothieboards come completely pre-flashed, you do not need to compile or flash the firmware, unless you want to upgrade to a newer version, or to contribute to the code.
More: Windows Drivers, Linux Drivers, Mac Drivers, New Features, Gallery, Smoothieboard Beta Guide
Hardware documentation
Available now: SmoothieBoard, the modular and awesome, smoothie-dedicated CNC controller.
Getting a Smoothieboard
Get a Smoothieboard here
Features
For users
For hackers
- Modular, event-driven design, allowing to add functionality easily without modifying the core. See the ModuleExample
- Designed to support non-Cartesian machines
- LPC1769 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
- Strict process for acceptance of new code, to keep the project at high quality
- Heavily commented code
Support the Project
The Smoothie firmware is free and Open-Source software developed by awesome volunteers with the help of the community.
If you find this software useful, want to say thanks and encourage development, please consider a donation:
Donate via PayPal
It really helps.
Developer documentation
Current edge build status: 
Reviews
Watch a review