Skip to content
Opentrons' fork of the modular, opensource, high performance G-code interpreter and CNC controller written in Object-Oriented C++
Branch: edge
Clone or download
Pull request Compare This branch is 122 commits ahead, 277 commits behind Smoothieware:edge.
Laura-Danielle Merge pull request #5 from Opentrons/smoothie_add_ci
feat(smoothieware): Add OT Smoothieware to CI
Latest commit 622f84a Apr 11, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gdbinit Add freespace GDB command to .gdbinit Feb 21, 2013
Rakefile provide checksum script to easily generate config checksum values Jan 2, 2013 fix what happens when we abort the fast-stream Apr 3, 2017
makefile Fix make call Apr 10, 2019
rakefile.defaults.example Allow test modules to be specifed in the rakefile.defaults file Sep 13, 2015


This is an Opentrons fork of the open-source Smoothieware

Recent Stable Build Here

Smoothie is a free, opensource, high performance G-code interpreter and CNC controller written in Object-Oriented C++ for the LPC17xx micro-controller ( ARM Cortex M3 architecture ). It will run on a mBed, a LPCXpresso, a SmoothieBoard, R2C2 or any other LPC17xx-based board. The motion control part is a port of the awesome grbl.

For more information on smoothie as a whole, please check out their documentation here


Opentrons utilizes the LPC1768 chip

Quick Start

These are the quick steps to get OT Smoothie dependencies installed on your computer:

  • Pull down a clone of the Opentrons Smoothie github fork project to your local machine.
  • Install GNU-ARM compiler for your Operating System.
  • Ensure that your path is correctly set by searching for the location of: arm-none-eabi-gcc/../../bin
  • You can check that your path is correct by typing arm-none-eabi-gcc --help and see that the function menu pops up, and also that it is a gcc compiler not a clang compiler

Building and Compiling OT Smoothie

From a shell, switch into the root Smoothie project directory and run:

make clean build

This will generate a hex file which can be added onto an SD card to be placed in a smoothie board that will run our software. If you are receiving an error that the compiler is not being recognized then try the following on a Unix/Linux distro: PATH=$PATH:/path/to/bin/file/gcc-arm-none-eabi-8-2018-q4-major/bin make clean build

If you are connected to a smoothie board, you can use the command

make opentrons

To automatically set up the board for you.

Filing issues

Please follow the guide here


Please take a look here

Contributions are very welcome !


We based our firmware off of the smoothie firmware which is developed by volunteers. If you find this software useful, want to say thanks and encourage development, please consider a donation!


Smoothieware is released under the GNU GPL v3

You can’t perform that action at this time.