Electronique de commande smoothieboard

by | Jun 25, 2019 | Electronique de commande

I ) SD Micro card

We can separate the smoothieboard controler in

Software part :
Firmware —-> can be update
config file —-> setting of smoothieboard
Gcode files —> machining path

Hardware électronic board with :
32-bit Cortex-M3 LPC1769 processor
with 512kB flash and 64kB RAM
Ethernet and USB connections
Various inputs and outputs for extensibility


Without Sd-card the smoothieboard can’t works

If the smoothieboard can’t read the two file more important
config and Firmware.cur, the smoothieboard don’t start.

If have problem with sd-card or firmware inside sd-card.
Can see with color of led.


Don’t mix smoothieboard firmware and config with gcode file.
Create special folder ‘gcode” for exemple to put machining file inside.
If you don’t can do mistake and delete sometimes important file.

Can have two more file, depend of options you choice.

  • config-override : – Created when the g-code M500 is played.
  • on_boot.gcode : – Played on startup of smoothieboard. Can be used to initialize the smoothie driven device.

It’s important save firmware and config file in other place of sd card for exemple computer, if you change something and whant return back, can find original file.

Overway is to copy sd-card to other sd-card (like copy sd-card for raspberry pi)

All is normal

 The Led 2 and 3 blink at this speed
 The Les 4 and 1 stay on

Sd-Card problem


The Led 4 stay off

Firmware crash

All green led stay on or Led 3 and 2 stay off

For overcome problem see Troubleshooting section of smoothieboard documentation http://smoothieware.org/troubleshooting#troubleshooting-a-problem-with-your-smoothieboard

Many settings in smoothie can be set immediately with M commands, these settings are lost on reset, however they can be saved to a non-volatile storage (similar to EEPROM on other systems).

The values in the configuration file will be overridden for those configuration options.

There is a set of M-codes (M50x) documented below that allow you to save all the current settings that have Mxxx commands to set them. This is particularly convenient for parameters that require tuning, as you can use a command to modify them without having to open the file and reset the board.

As these settings can be temporarily overridden with Mxxx commands there is a way to save these settings. Once saved they are reloaded on reset or boot overriding the settings in the config file. If you then edit the config file, make sure the setting you are editing is not being overridden by the override file (M503 will tell you if there is an active override file). This can sometimes explain why editing the config file appears to have no effect.

 M-code  Description    Example
M500 Save settings to an override file
M501 load config-override file optionally specifying the extension M501 – loads config+override, M501 test1 – loads config+override.test1
M502 Delete the override file, reverting to config settings at next reset
M503 Display overridden settings if any
M504 Save the settings to an override file with specified extension M504 blue-pla


Do not issue M500 or M504 when gcode is read by machine, or the machine could crash or the SD card become corrupted.

Do not

Edit the config-override file yourself, only use the commands to edit the values.



In the config file alpha match with M1 motor axis
beta match with M2 motor axis
gamma with M3 motor axis

Smoothiesboard is universal for all CNC machine, no need have different electronic board for CNC Milling machine other for Laser cut machine etc. …

The config file already have inside the different function for all machine
Just change the setting about your kind of machine.





In smoothieboard, for control steppers motors, can use :

Internal stepper driver : A5984 stepper drivers with 1/32 microstepping
2A max

External stepper driver : The reason to use external is when people need more power for example 3A 4A 7A

When use internal stepper driver the motor is connect to plug write 1

When use external driver, the external driver is connect to place write 2 with EN STEP DIR and GND pin



All name and number of pins are write in back face of smoothieboard

The number of pin in smoothieboard need match with number of pin in file config.

When you receive the electronic board all setting are OK
After when you understand the config of pin all can be change
have many possibilities of différents configurations.




   my_pin_name     number of the pin (option)

For example :   signalalpha_dir_pin      0.5!

 alpha_min_endstop       1.24^




When the

motor don’t turn in correct direction, no need change the wire, just add

! after the pin number

With smoothieboard, no need use screwdriver and turn potentiometer to setting with difficulty the limit of current, like drivers of a lot of 3d printer.

All internal stepper drivers have digital potentiometer.

Just write 1.5 in alpha_current setting and stepper driver works to 1.5A

The limit without cooling system ( fan ) is 1.6A
1.6 to 2A (max) need use fan on top of electronic.


I ) The number of step for the machine move of 1mm depend of différent things

II ) Calculate for timing belt / pulley transmission


III ) Calculate for Threaded Leadscrew

IV ) If reality a little différent theory

I was never have problem with machine move à little different than the calculate.

But if you have this just use a accurate measurement tool
and recalculate like below.