LongBoard Documentation

Last Update: 1 September 2020


The LongBoard is a powerful, three axis CNC controller and driver system for the LongMill and other CNC routers. LongBoards run with GRBL firmware and come with four TB6600 driver modules that run single X and Z axis, and dual Y-axis bipolar stepper motors making them suitable for small to medium size hobby CNC routers. They also come with an assortment of inputs and outputs that allow users to connect items such as limit switches, probes, spindle control, coolant control, lasers, and more.

The LongBoard was jointly designed by our friend Chris Hadjuk and the rest of the Sienci Labs team.

Technical specs


Input voltage

The LongBoard has an operating voltage range of 12V to 48V. Most LongMills come standard with a 24V power supply.

The input voltage to the drivers can impact the performance of your machine. For more info, check out these articles:

The LongBoard also comes with an Arduino UNO as the “brains” of the controller. The Arduino UNO requires a 5V input from the computer to operate correctly. In some instances, the UNO can operate at a voltage of 3.3V but some of the output voltages (such as for the limit switches or spindle control) may not work correctly.

Input current

The LongBoard can draw up to 16A. However, by default, they are set to draw up to 8.8A. You can directly adjust the minimum and maximum current draw of each driver using the potentiometer found on each driver. More info can be found here: https://sienci.com/dmx-longmill/adjusting-stepper-driver-current/

The Arduino UNO can draw up to 500mA from your computer USB port.

Driver specifications

The LongBoard uses four TB6600 drivers. The datasheet for the driver chip can be found here: https://toshiba.semicon-storage.com/us/semiconductor/product/motor-driver-ics/stepping-motor-driver-ics/detail.TB6600HG.html

Specification for the driver may vary due to the operating limits of periphery components.

Type: Bipolar stepper motor driver

Microstepping: Full, Half, Quarter, 1/8, 1/16 step resolution / Pseudo-sinewave drive (PWM chopper type) / High output current / Low R-on / Power-on reset circuit

Max output current: 4A

Max output voltage: 48V

Operating temperature: -30C to 85C



For 3D models of the LongBoard, please visit our open-source documentation page for access to files if you wish to acquire additional dimensioning: https://sienci.com/dmx-longmill/open-source-and-modifications/


The LongBoard comes with many inputs and outputs which users can implement easily using the detachable screw terminals or connectors that come on the board. More info on how each input and output works can be found below in the documentation.

Below are the connectors used with links (male):

Connector 1, 2: WJ2EDGK-5.08-2P

Connector 3, 8, 9, 10, 11: WJ15EDGK-3.81-2P

Connector 4: WJ15EDGK-3.81-5P

Connector 5, 6, 7: XHP-4

Connector 12, 13, 14, 15: DB2EK-5.08-4P


Introduction to GRBL

The LongBoard’s Arduino UNO comes pre-installed with GRBL firmware. Users can modify settings using EEPROM settings or flash entirely new firmware onto their boards if they wish.

From the GRBL website:


Grbl is a no-compromise, high performance, low cost alternative to parallel-port-based motion control for CNC milling. This version of Grbl runs on an Arduino with a 328p processor (Uno, Duemilanove, Nano, Micro, etc).

The controller is written in highly optimized C utilizing every clever feature of the AVR-chips to achieve precise timing and asynchronous operation. It is able to maintain up to 30kHz of stable, jitter free control pulses.

It accepts standards-compliant g-code and has been tested with the output of several CAM tools with no problems. Arcs, circles and helical motion are fully supported, as well as, all other primary g-code commands. Macro functions, variables, and most canned cycles are not supported, but we think GUIs can do a much better job at translating them into straight g-code anyhow.

Grbl includes full acceleration management with look ahead. That means the controller will look up to 16 motions into the future and plan its velocities ahead to deliver smooth acceleration and jerk-free cornering.

  • Licensing: Grbl is free software, released under the GPLv3 license.
  • For more information and help, check out our Wiki pages! If you find that the information is out-dated, please to help us keep it updated by editing it or notifying our community! Thanks!
  • Lead Developer: Sungeun “Sonny” Jeon, Ph.D. (USA) aka @chamnit
  • Built on the wonderful Grbl v0.6 (2011) firmware written by Simen Svale Skogsrud (Norway).

There is a wealth of information and knowledge available on the GRBL Wiki pages that can help you use the LongBoard or customize features and functions of your machine. We recommend reading through the Wiki pages if you are looking to explore additional modifications to your LongBoard through the firmware or if you need help with setting up new machines.

GRBL Configuration

GRBL Firmware

Download links to LongMill firmware can be found here: https://sienci.com/dmx-longmill/grbl-firmware/

For information about flashing your Arduino with new firmware, please visit the link above or visit the instructions provided in the GRBL Wiki: https://github.com/gnea/grbl/wiki/Flashing-Grbl-to-an-Arduino

Default LongMill GRBL EEPROM settings

The LongBoard comes with EEPROM settings set to work best with the LongMill. For information about what each setting is and what it does, please visit: https://github.com/gnea/grbl/wiki/Grbl-v1.1-Configuration

You may need to change EEPROM settings if you wish to add additional functionality, such as limit switches or spindle control.


Value Purpose
$0=10 Step pulse time [microseconds]
$1=100 Step idle delay [milliseconds]
$2=1 Step pulse invert [mask]
$3=5 Step direction invert [mask]
$4=1 Invert step enable pin [boolean]
$5=0 Invert limit pins [boolean]
$6=0 Invert probe pin [boolean]
$10=1 Status report options [mask]
$11=0.010 Junction deviation [millimeters]
$12=0.002 Arc tolerance [millimeters]
$13=0 Report in inches [boolean]
$20=0 Soft limits enable [boolean]
$21=0 Hard limits enable [boolean]
$22=0 Homing cycle enable [boolean]
$23=0 Homing direction invert [mask]
$24=25.000 Homing locate feed rate [mm/min]
$25 = 500.000 Homing search seek rate [mm/min]
$26 = 250 Homing switch debounce delay [milliseconds]
$27 = 1.000 Homing switch pull-off distance [millimeters]
$30 = 30000 Maximum spindle speed [RPM]
$31 = 0 Minimum spindle speed [RPM]
$32 = 0 Laser-mode enable [boolean]
$100 = 200.000 X-axis travel resolution [step/mm]
$101 = 200.000 Y-axis travel resolution [step/mm]
$102 = 200.000 Z-axis travel resolution [step/mm]
$110 = 4000.000 X-axis maximum rate [mm/min]
$111 = 4000.000 Y-axis maximum rate [mm/min]
$112 = 3000.000 Z-axis maximum rate [mm/min]
$120 = 750.000 X-axis acceleration [mm/sec^2]
$121 = 750.000 Y-axis acceleration [mm/sec^2]
$122 = 500.000 Z-axis acceleration [mm/sec^2]
$130 = 812.000 X-axis maximum travel [millimeters]
$131 = 812.000 Y-axis maximum travel [millimeters]
$132 = 105.000 Z-axis maximum travel [millimeters]

Each setting can be changed to suit the user and their machine. We recommend that LongMill users keep the same default settings for their machines, and check their settings if they are having issues.

For more info for default EEPROM settings, please visit: https://sienci.com/dmx-longmill/changing-eeprom-settings/

Inputs and outputs

Power and switch

Rev1.4 of the LongBoard comes with a detachable emergency stop button that can be plugged into the controller to kill power to the controller in the case of emergency or just to turn the machine off.


E-stops come with around 2-3 feet of cable preinstalled. Users can extend this wire if they wish. If you wish to use a longer cable, you must use at least 16AWG gauge wire. We recommend keeping the cable under 6ft long since the longer the cable is, the more power loss you may experience.

The LongBoard must have a switch installed for it to operate. The controller will not be able to provide power if the switch is not installed.

12V auxiliary power

The Longboard provides auxiliary power for adding fans, lights, and other low current add ons. We recommend limiting the current draw from this plug to 500mA as drawing too high of a current may limit current to the drivers.

Play, Pause, and Stop Buttons

The LongBoard comes with three buttons on the top of the controller that can be used to control the machine during its operation. Pressing these buttons will trigger the control software such as UGSPlatform to perform an action.

These buttons may be useful for some users as it allows you to play, pause, or stop a running job without touching the computer.




*NOTE* The machine must be paused in the middle of a job for the play button to work.

The play button can be used to resume a job that has been paused.


The pause button will pause a running job. Pressing the play button will resume the job.


The stop button will stop a running job. Once you press the stop button, you will not be able to continue a job. When you press the stop button it will also throw an alarm and you will have to reset your connection with UGS or perform a “soft reset”.

Limit switches

For info about adding limit switches please visit: https://sienci.com/dmx-longmill/adding-limit-switches/

Spindle/Laser control

You can control spindles and lasers using the SpinPWM and SpinDirection outputs on your LongBoard.


SpinPWM allows users to send a M3 SXXX o M4 SXXX command to control the spindle speed. It is important that you have the correct minimum and maximum spindle speeds on your EEPROM settings as the PWM signal outputted by the controller will be linearly related to the spindle speed scale.

For example, if your minimum spindle speed is 0 and your maximum spindle speed is 30,000, then the command “M3 S15000” will signal the PWM to be on half of the time, or if you measure with a voltmeter, should read 2.5V.

As a side note, M5 sets the SpindlePWM signal to LOW.

You can also use SpinPWM to control a laser. For additional documentation for lasers, please visit: https://sienci.com/dmx-longmill/adding-a-laser-to-your-longmill/

Spin Direction

The M3 command turns the Spin Direction output to HIGH, indicating that the spindle should rotate clockwise.

The M4 command turns the Spin Direction output to LOW, indicating that the spindle should rotate counterclockwise.

Oftentimes, you may not have the option to control the direction of your spindle, or it will default to clockwise if you do not have Spin Direction connected. In most instances, most users will not need to control the spindle direction and can leave this output alone.


The probe input allows the use of a touch plate or probe with the LongBoard.

For documentation on setting this up, please visit: https://sienci.com/dmx-longmill/touch-plates/

Coolant control

Coolant works similar to spindle control. Sending an M7 command sets the coolant pin to HIGH and sending an M9 command sets it to LOW.