The Chain Maslow Manual

Maslow was created by @bar as a way to bring cnc to the average user on a budget.

Chapter 1 Overview and Frank Discussion

This wiki is a manual for the Chain Maslow. It documents the original Maslow CNC routers in which the sled is supported by two chains pulling against the force of gravity. This Maslow concept was introduced in 2017 in a Kickstarter campaign. For the four belt style Maslow concept introduced in a 2023 Kickstarter campaign, see The Belt Maslow Manual.

The Chain Maslow system is a community-supported, open-source, computer-controlled wood-cutting router mounted on a frame controlled by three DC motors. It takes input from gcode generated from a number of different CAM software programs. It is built on a tilted frame to minimize the footprint and hangs with two of the motors controlling chain length for position control and one motor controlling the height of the router for depth of cut. Targeted at one full sheet of plywood or mdf as a cutting piece, Maslow can be sized up or down to fit the desired user cut area. Control software consists of two machines working in concert. The motor controller is currently an arduino Mega that takes gcode lines one-by-one from a computer to which it is USB tethered. The firmware on the arduino is specific to Maslow and the WebControl (and formerly GroundControl) software running on the control computer is also specific to Maslow. Both source codes are available and can be modified as the user desires. Several small businesses supply parts or kits which include motors and electrical hardware, sleds, rings, chains, etc. to help a user get set up and started, but there is no “Maslow customer service” department standing by to take a call, which is why the cost is so low. There is no guarantee it will work and the purchaser must build the system. The average builder, with all the parts on hand, can make a frame in a day. Putting the electronics together, mounting the motors and controller may take a couple hours. Calibrating, building the temporary sled, cutting the sled, and then building the full sled may take half a day to a day, so it is expected if done continuously, the build time is roughly 3 days. The user’s ability to be precise in construction the frame and assembling the controls will largely determine later how accurate and precise the system will be. This manual is an attempt to help a new or potential user find answers and perspective on the system and its use and configuration.

While on the subject of cost, it must be mentioned that the advertised price of Maslow is for the unassembled kit, which may or may not include the router. Some kits include a sled, some do not and have basic instructions on how to make one. The price of admission is low, but it is not the whole story. The kit price only covers the hardware. The software is free and the users maintain the software. If a new software update or feature is desired, any user can add it, but there is no guarantee of a fix unless a user takes it on and makes it happen. While currently the software is well supported with a few specific users shouldering the burden of patches and updates, this may not always be the case. A new user must plan on frame material costs, electrical switches (if desired) for the various components. Emergency shutoff switches are recommended, but not required and additional upgrades that will become apparent once improved functionality or reliability is desired. There is always another upgrade or an improvement that can be made and turn-key just isn’t part of the vocabulary in this community with respect to this system.

A potential Maslow owner must have patience and an interest in making things work, solving minor problems and experimenting. A Maslow is NOT a turnkey high-speed industrial CNC mill. One of the most common complaints is that the Maslow is slow. It is limited to 48 inches per minute feed rate because of the control system and motors that were chosen to keep costs down. Professional systems start at roughly 10x the cost of a Maslow for much smaller cut sizes and have professional tools and support standing by. The good news about Maslow is that it is user owned, user operated, and user supported. Those who help have an interest in improving the platform. While the Maslow community is not paid customer service, it is a collection of individuals, hobbyists, professionals and interested folks who share a common interest in the system. The community survives because each has something to offer and some experience that is of value. Sharing earned knowledge and wisdom with the new users who are working to get going is encouraged. Any user can provide welcome input to improve system capability. With respect to design sharing, ideas, suggestions, and other discussions, the forum and community garden are evidence that there is a wealth of information available for free with tips and suggestions for how to best get the desired results.

To build a standard Maslow, a cube roughly 10’ wide x 5’ deep x 8’ high will be required. Users have installed these in garages, basements, workshops, outside, and in various rooms in areas larger and smaller than the cube mentioned. While the standard frame can hold a full sheet of plywood, it is generally accepted that one can only cut to within 6" of the edge to keep the sled from tipping off the side. There are frame modifications to allow more complete use of the work piece. With the standard 10’ beam, cutting in the lower corners also becomes a challenge without user intervention. If a full size sheet is the desired work-piece size, consideration should be given regarding upgrading to a 12’ top beam. A nice calculation tool that provides data in a google spreadsheet regarding chain force and sled weight is available here. (LINK)

In summary, a Maslow is an open system with the flexibility to be fully customized by the user, it is low cost, and can provide a savvy user great value once the time has been put in to build the system.

As of June 2020, a second generation of maslow was launched by makermade, one of the kit suppliers, so there are now two flavors of Maslow systems available: A classic system with the arduino mega controller and the M2 from makermade that uses the arduino due controller. Both systems can be used with the new makerverse software while only the classic works with the webcontrol software.


Chapter 2 General Setup Information

Congratulations, on getting your Maslow. Now that you have committed to this project, be aware there are some design choices that should be considered when building a frame. The frame build instructions are simple. The “standard frame” has a 10’ beam with a Y axis height of 18". The desired work piece slope is 15 ° from vertical. When building the frame, the system will function +/- 5 ° of this.

Many have built oversized frames to get more precision in the lower corners to be able to cut complete 4’x8’ sheets. One common oversize frame has the beam at 12’ with the motor Y offset at 30" (see diagram below). This oversize frame requires 15’ chains instead of the standard 11’ chains. The 12’ beam width gives more side force in the lower corners to allow the sled to cut towards the left or right side into the corner. The higher beam lowers the force on the sled in the upper center region to prevent too high of force on the chains.

If too steep (< 10°), then the router sled will tend to tilt away - the top will pull back from the work surface making a shallower cut- when it is near the top center of the work area when the chains are pulling at the sled from the sides. If the frame angle is too high of an angle (> 20 °) then the sled weight contributes more to friction and impedes the sled movement often resulting in irregular cuts in the lower corners because it sticks (diagram here).

Below are a number of pictures of maslow sleds shared by various users on the forum. To summarize: the rigid router base on the sled was the default purchase option until early 2020 when the metal sled with the linear bearing z axis and the maker made m2 sled came out. Sleds are typically a wooden slab or possibly a metal plate with a ring or linkage connecting to the chains. the sled holds the router and the vacuum connection hose to remove cutting chips. Of critical interest is the Z axis configuration and there are many different designs typically in how the router is mounted to the moving slides and what materials are used for them. With a standard rigid router base lead screw moving 3.17 mm per revolution of the shaft, upgrading to a linear bearing bumps this up to 8 mm/revolution and with a belt and various gearing, that can be doubled or tripled as well. In the end, the more robust the z axis design, the more consistent the depth of cut.

Sled considerations

Most use wood (makermade or eastbay),

some use metal (,

some put plasic for lower friction and still others totally customize their sled.

this is a second generation (M2) sled available from makermade.

Understanding the center of gravity of the sled will help with proper ring height adjustment and weight selection for maximizing cut area and minimizing sled tilting or pulling away from the work area. For consistent cuts, the router sled surface must remain in close contact to the work piece / sloped frame surface. Forces that pull the sled in a tipping motion will disrupt the bit penetration angle and cause irregular cuts. Set the ring height based on the “hanging test.” Then set the motor distance from the work piece for the ring height so the chains are equidistant from the work piece between the motors and the router and don’t pull the router away or into the work piece (diagram here). When assembling your sled, please be aware of ring height, total weight, smooth z-axis motion, absolutely centering the ring and the router and how that router z axis motion will allow dust collection.

Much time, effort, and angst has been expended on the z axis of the sled. There are several options including

a metal c-channel,

the metal gantry

the beefy z,

a wooden “meticulous” option,

a 3D printed option,

and the

standard z-axis for the rigid router.

Attaching the router to the z-axis movement can be accomplished with a 3D printed clamp option, a metal clasp, or a wood clamp mechanism for either a c channel or a meticulous axis.

the BLING router setup:

For routers other than the rigid, the standard z-axis may not be recommended. With the rigid router, don’t forget the [bungee] to keep the position compressed down to maintain consistent height whether moving up or down (Z-Axis Bungee To Ensure Correct Depth).

If you experience issues with your standard Z-axis, please be sure the clamping mechanism is closed, but not tight to prevent movement. Some suggest and use dry lube on the router body to help avoid binding during z-axis movement. If your movement arm is having trouble with too much slop, please check here for options to repair or improve its function.

##Dust Collection
A dust collection / vacuuming can be a great help in maintaining a clean safe work area. There are several approaches. If a channel is cut in on the bottom of the sled, that channel can serve as a suction cup to make moving the sled very difficult. Any rough edges on the bottom of the sled should be rounded or at least chamfered to prevent the sled from catching on uneven cut surfaces. Many of the options offer a 3D printed vacuum hose attachment option for dust removal.

##Installing Electronics on the Frame

Assembling the electronics is simply plugging in the cables. Plug them in all the way. Plug the power into the shield, NOT the arduino plug shown correctly unused in the photo below

Use a USB cable shorter than 6’ for best signal. route your router power cord away from your z-axis wire.

Please consider how to mechanically connect cabling so the connections don’t pull loose as the sled moves or the system vibrates with use. Attaching an eyelet with a zip tie to anchor cabling helps to secure connections. Many users initially have issues with motors that are solved in many cases by plugging in the cables that have worked loose.


Bungee Setup

This is the Eastbay recommended setup

Having a constant feeding angle (B) ensures more chain-sprocket engagement and NO chain sideways or front/back oscillations - longer chain hanging in air could lead to unwanted oscillations and misalignment while feeding which will increase the chances of the chain skipping a sprocket tooth or coming off of it

The nylon roller is 11 inches from the left edge to allow enough room for the chain (A) to pivot (E) - especially when the sled is at the top corners - 1 inch from the top is ideal as it’s high enough but no to close to the top edge to splice the wood when installing it.

Putting the s-hook on the front face instead nailing the chain end on top of the beam as other set-ups keeps the entire chain in on plane - not forcing it sideways (which is not good for any chain) and not grinding the edge of the beam.

Shorten the bungee until the chain has tension when the sled is more than half way between home and the motor location.

Counterweight Setup

Counterweight is a good way to keep constant pull on the chain slack and is very easy to implement if wanted - Just keeping everything as it is, put two screw eye in the middle of the front face (top beam) then loop the cords from the idlers down and towards the back of the spoil board, then hang the weights - a couple 4 x 4in hdpe thin plastic sheets (out of a milk gallon) in between the cord and wood (where it rubs) will prevent it from ever wear out.
Chain guides to avoid gear jumping are an option. Be sure to mark your chains after they are fully extended for that one time when you have to reset the chain lengths. This will save you time from the entire recalibration process. A sharpie mark or nail polish on the chain over the 12:00 link after the first extension will save much time later. Additionally, when hanging the sled, use the second roller. The one with the pin in it, NOT the first one because the first one can come loose. There is risk of creating a pendulum out of your router and the only time it will tell is doom.

Common Issues

Many are having issues with chain wrap or chains skipping a tooth. This a problem with one of two likely causes. The first is the chains from the motors must run parallel along the face of the work piece to the sled. If the ring is too high or too low, the motors must be moved in or out to prevent the chain from binding since the chain does not bend sideways. The ring is placed at the right height so the sled hangs at 15 degrees to match the frame:
image Similar to number 4. Then the motors are mounted out from the frame to keep the chains parallel to the work surface. This will avoid wrapping chains or skipping teeth.
The second problem is likely chain tension of the leftover chain not being used. There are several options for dealing with this. The under configuration uses bungees. The stock bungees are too long and must be shortened or the chains can wrap. There are many scenarios devised for chain management which include springs, pulleys, weights, etc. Some pictures are included below. The goal is to keep the unused portion of chain out of the way of the motors and the sled, with not too much tension to affect accuracy of the cut. By switching the chains to an “over” configuration, the weights can be moved to the outside of the frame.
Under options:


Over options with weights:

(free hanging)
(mounted on slides)


Chapter 3 Software Installation and Options for Maslow Control

This section discusses finding and installing the latest software for controlling the Maslow system. The system operates with two required pieces: The microcontroller / controller (Arduino Mega or Arduino Due for M2) actually moves the motors based on the gcode it is sent. The user interface program is called the sender program and it connects to via USB to the controller. The sender for Maslow can be any one of Web Control, Ground Control, Ground Control 2022, or Makerverse. The Makermade M2 only runs on CNCjs / Makerverse.

##Sender Software Background

Ground Control Original Version - Community Supported
This was the original control software created by @bar and used by Maslow. It is no longer being maintained and should be considered depreciated. Development on GroundControl had been discontinued as WebControl is better (even Bar will tell you that)… It runs on a host computer such as a PC or Mac and allows the user to manually move the sled, and upload gcode to run programmed cuts. Although it is still being used by many as it does work older operating systems, it had issues running on newer hardware and operating systems due to some of the deprecated dependencies in its code base that had to do with the display and user interface. It supports only the triangular calibration.

Ground Control “2022” - Vendor Supported
This is a control solution now maintained by East Bay Source based on the original Ground Control with an updated library to fix the previous package problem. This version is reported to work on the newer operating systems and platforms.

Web Control - Community Supported
This was a gift to the community by @madgrizzle and is community supported effort to move the Ground Control sender to a web based architecture. This allows a user run the sender computer connected via USB and open control to it via another device with a web page and control it allowing tablets, phones, and other devices to run the maslow system. WebControl runs as a server and the user can interact with it through a web browser pointed at the interface system IP address on port 5000 (192.168.1.x:5000 where is is the local ip address for examlple). This also allowed users to have a headless server run the sender and the user interface be entirely remote via a web page. Webcontrol is the only sender program that has the ability to flash the mega firmware as part of its feature set and offers higher precision Holey calibration.

Makerverse - Vendor Supported
Makerverse is a fork of the CNCjs repository developed to interface with GRBL CNC controllers for various systems but customized for Maslow M2 systems. This is a control solution developed and maintained by MakerMade CNC. It is also a server implementation and can be run remotely. It has a holey “precision” calibration based on Webcontrol and is in active development. Makerverse will send and configure both classic maslows with the arduino mega 2560 controller and the newer arduino duemilanove (due - for short, pronounced doo-ay because it is Italian of course) included with the M2 that can also be used with a classic system as an “upgrade.”

There are many references to Ground Control depreciation in the forums. For some time the community has generally understood that the original Ground Control software was out of date and that if you wanted to have the current options and features, the only two options were either Web Control or Makerverse. The introduction of a ported Ground Control (2022) by EBS revitalizes the third option.

Makerverse, WebControl, and GroundControl perform the same function which is to send gcode files line by line to the Maslow or M2 controller. The controller moves the motors and keeps track of the sled location and calibration information. Designing and generating gcode will be covered in the workflow section discussed in Chapter 4.

Maslow Controller Firmware (CLASSIC Arduino MEGA 2560)

The easy way:

  1. start webcontrol
  2. settings → Maslow settings and select the serial port. if you don’t see the right one, press the refresh arrows to the right.
  3. click the actions menu and then press one of these buttons:
    select “stock” for the standard calibration or “holey” for the holey calibration. EIther will work. Follow the instructions on the web page actions / calibration section for calibration.

the hard way:

The Arduino mega 2560 runs compiled C source code that is available [here (MaslowCNC)] (GitHub - MaslowCNC/Firmware: Maslow Firmware) or [here (Madgrizzle)] (GitHub - WebControlCNC/Firmware: Maslow Firmware). This is what needs to happen: You will need to download the source code, unzip it into a folder. Install the Arduino program if not already installed, Open the source code in the Arduino program. Set up the target device to match your controller, compile the source code, and transfer it to the Arduino.
On the github download pager are instructions for setting up the Arduino Integrated Development Environment (IDE). Before following those instructions, click on the green CLONE button.
To save a copy of the repository, select Download Zip.
Unzip the file into a directory and then follow the instructions.

Using Arduino IDE

  1. Download Arduino IDE 1.8.1 or higher
  2. Install Arduino IDE and run Arduino IDE
  3. Navigate menus: File, Open
  4. In the file chooser navigate to the cloned repository and choose the “cnc_ctrl_v1.ino” file to open
  5. Navigate menu: Tools, Board, change to “Arduino/Genuino Mega or Mega 2560”
  6. Plug in your Arduino USB cord, select where to find it in Arduino with Tools → Port
  7. Navigate menu: Sketch → Upload (or use the right arrow on the toolbar).image

When completed, the arduino program should say “upload complete.”
There is a separate topic on the Arduino Basics HERE if there are errors trying to upload.

Ground Control

Ground Control used to be the standard method for you as the user to control and communicate with Maslow, but it’s discontinued. Please use Web Control.

Web Control

Web Control is a python program that runs a web server so user interaction with Maslow is with a web browser either on the same machine or connected to the same network. The machine running Web Control is connected to the Maslow via USB. Web Control can be served from most common computers and operating systems including single board computers like the raspberry pi or other linux operating system variants. To date, it does not run on android or ios, though android and ios devices can be used to control the Maslow by viewing the web page.

General Installation Overview

  1. visit the webcontrol github page maintained by @madgrizzle for the archive or go to the [webcontrol-pi github page] (Releases · WebControlCNC/webcontrol-pi · GitHub) for a complete image.
  2. click on the release version
  3. download the appropriate version for your operating system
  4. use the file:
    A. unzip the file, for example:

tar -zxvf “file name” (in linux)
B. or image the file to your SD card using an appropriate sd tool. (check google for sd card image instructions and raspberry pi), set up wifi network information or it will boot in AP mode.

  1. in the webcontrol folder, execute webcontrol (click on it or call it via command line: python webcontrol)

Installing on the Raspberry Pi

There are two version of Web Control: the “docker” version and the pyinstaller version. It is recommended that the pyinstaller version be used because it is easier to upgrade. To get web control you can download it as a compressed archive file and install manually, or pull a docker image or an image for an SD card.
To set up your RPI, you have a few options for the basic OS called Raspian:

raspian Lite (current version is Buster)


raspian (version is Buster when this was written)

The lite version is a command line interface (CLI) with no visual desktop, just the cursor and looks like a terminal window. The CLI version is often used for systems without a monitor that is managed remotely via SSH. The full version has a visual desktop and is preferred if you have a touchscreen or monitor, keyboard, and mouse attached.

If you download the image, you simply flash the image to your sd card, set up your network interface and go.

Archive File Installation

If you chose to do the archive file installation, open a terminal window if you are on the desktop version or simply type in the command line (don’t type the "$ ". It represents a command line command):

mkdir webcontrol cd webcontrol

go to and copy the link to the latest release.

Then use wget to download the latest release “similar to” the link here:


then you unpack/unzip/untar the archive (your file name will vary)
tar -zxvf webcontrol-0.94-rpi-singledirectory.tar.gz

(94 is the version as of today. Verify the newest version here). Run the program:

cd webcontrol ./webcontrol & disown %1

Web control as a service

once you are certain it functions and you want it to run whenever the rpi is on, you can make it run automatically as a service

$sudo nano /etc/systemd/system/Maslow.service

You can name it whatever you want. Maslow.service, webcontrol.service… totally your call.

paste this in that file and adjust the Description, working directory, ExecStart if necessary:




then exit and save with CTRL+X, Y, Enter
to start it, type

sudo systemctl start Maslow if it works, then enable it and it will start automatically when you reboot. sudo systemctl enable Maslow
if you change the “Restart = never” line to “restart=always” then it will try to restart whenever it crashes, but it won’t allow itself to shut down when you click on the upgrade link. you will have to manually stop it.

Once you have the server side running, if you are on command line, you are done for now. To open the web browser on your desktop version, use your mouse to open the webpage and use “http://localhost:5000” as the web page address and you should be able to interact with it.

Type $ ifconfig in a terminal window, you can get your IP address and use that on your phone with :5000 at the end and control Maslow from your phone via webcontrol. Do the same on your design computer (whatever the type) and you can upload gcode to it. Import your groundcontrol.ini file using the actions->import button in webcontrol, to avoid recalibrating.

Adding SAMBA file share server to drag and drop gcode files

Another nice option is if you set up /home/pi/.WebControl/gcode as a shared SAMBA folder (instructions here), and give that folder permissions, you can open the folder from your design computer and drag and drop your gcode in without uploading via the web page. This is not entirely necessary, but I find it easy to do. More recently, when I generate gcode, I have it save there directly so no copying or uploading is required.

Configuring WebControl

FYI: settings and information are stored in the hidden .WebControl folder in a file named webcontrol.json

Upgrading from Ground Control: in your ground control folder, locate your groundcontrol.ini file and using the web page, upload the information to webcontrol. That should do it.

if you have more than one webcontrol machine, you can copy the webcontrol.json file between the systems to avoid recalibrating.

Web Control offers a number of features such as triangular calibration, optical calibration, holey calibration, quick configure, test motors/encoders, the ability to set up buttons or LED’s (when using raspberry pi) and even an shutdown button to turn off the raspberry pi.

All of the software in this section is free and the source code is available to modify if a specific feature is desired, and you don’t know how to add it, you can learn or you can post and ask if anyone else would be interested in it as well and maybe someone will add it.

This is a video shared by “Graham Builds Stuff” on the facebook page that shows how to do it:

Newer systems vs classic systems

  • Arduino DUE: 32 bit (used in M2)
  • Arduino MEGA: 8 bit (used in everything else - sometimes referred to as the classic)


Some systems arrive with preloaded firmware. If you want to be up to date with the latest patches and bug fixes, the firmware can be found here:

  • Arduino DUE DUE firmware only works with makerverse
  • Arduino MEGA MEGA firmware works with makerverse or webcontrol, but must have the correct firmware version for makerverse.

pull the firmware from the github repository by ([makerverse example] (GitHub - makermadecnc/MaslowDue: Maslow CNC, second generation based on GRBL and Arduino Due))

  • click the code button

  • then download the zip

  • extract the zipped file (don’t click into it)

  • follow instructions here to use the arduino IDE to program.

Makerverse is the renamed software MakerMade adapted from CNCjs for the arduino due firmware that replaces webcontrol and groundcontrol. It communicates with a grbl board upgrade posted by idocull in 2019. Makerverse is a customized fork specifically intended for the M2, though it has since been adapted and can be used with both M2 and Maslow MEGA (classic) systems. Interestingly, both systems simultaneously can be used as well.


Makerverse has been shown to work on raspberry pi, windows, linux, macos. It is nodejs based and the code is open for inspection on the github page. Follow the instructions installation of the runtime or development environment.

In windows, you will download the file from the link above and grab the file for windows highlighted above and click on it. It will extract it in its own folder after you give it permission:

click on more info

then click on run anyway

It will install:

Once installed it will run and should show up in your default web browser:

Set up your machine

  1. Click on the home icon in the upper left to see this screen:
  2. Click Connect to a new machine button
  3. Select your machine type
  4. This example uses a MEGA it is on a raspberry pi, so the connection port is ttyACM0, 18" sled
  5. click connect and it should show the machine parameters of interest, current firmware (whether a newer version is required - this one has a beta test of 51.29 on it, 51.28 is the minimum for the mega) verify your x, y and z maximum and minimum settings. and adjust the name if necessary and click CREATE WORKSPACE
  6. The workspace that was named “classic” shows the label in the upper left and the shuttle commands are disabled until the system communication is open. If the box for automatic connection is unchecked, the blue open button must be used to establish connection to the system. Pressing connect, the system may ask if this is a new system. If it is, or has just been flashed, then wiping the memory is recommended.

    it will prepare your system

    and then put you straight into the calibration routine (see calibration prep and calibration below)

If the system is just being set up in makerverse, but was calibrated previously, then when connected, the motors will whine unless put to sleep. to enable the shuttle functions, use the red reset button followed by the yellow unlock button. If this is the first connection, then proceed immediately to calibration get get set up. If the system is already calibrated (calibration is stored on the controller memory), then it should be good to go.

Calibration prep for the M2 is different than the classic Maslow.

before you start:

  1. mark the center of your work space with a pencil or a drill hole
  2. reset chains and move the sled to the exact center with the bit over that part marked in #1
  3. know the distance from motor to motor, sprocket gears at 8:00 on left motor to 4:00 on right motor ($83 - in mm)
  4. know the distance from the work piece to your motor height
    (motor height work space offset - $84 - in mm)
  5. know the work dimensions in mm

Proceed to chapter 5 for calibration.


Chapter 4 Design and Workflow options

Designing a cut-file and generating g-code is the goal of the work flow. A computer aided design (CAD) program or a vector drawing program can be used to create new designs. Once the design is finished, it must be translated to machine locations and speeds to create the cuts. A computer aided manufacturing or CAM program makes this translation. The translated file is made up of lines of text called g-code. There are several options for going from idea → CAD → Cam → gcode → Web Control → Arduino / Maslow → product (could be makerverse instead of webcontrol). The software options are varied in capability, price, and ease of use. Some are web-based with cloud storage while others are commercial packages or even open source and available for free. Choosing a design path is typically influenced by prior design experience or lack thereof. If you are selling your creations, then you have fewer options that are free.

Options for creating drawings:

  1. Vector drawings (SVG)
    – trace jpg or screen shot
    – draw a scalable drawing
    a. Corel Draw
    b. Inkscape
    c. Blender
    d. Adobe Illustrator

  2. Drafting program. Create dimension drawings (2D is all that is needed) saved in dxf or exportable to svg
    a. Fusion360
    b. FreeCAD
    c. Sketchup (suggested by-youtube video)

Once the drafting / drawing design work is done, the image needs to be translated to gcode that maslow can process to know where to move and cut. This is the CAM portion. CAM does a couple things to output usable gcode. It is best to quote

Maslow supports GRBL gcode. To get GRBL code from most of the CAM options, once must specify the correct “post processor,” (the software that will be processing the gcode after it is written). Where noted and mentioned by users, those post processors have been named for reference and possibly linked for a more in-depth review if desired.

There are several options for creating gcode. There are paid options and free options such as:

  1. Easel (web based - many use it
  2. EstlCAM (MetalMaslow distributes full version)
  3. Carbide Create (free with pro version to be released soon)
  4. jscut open source java server
  5. DXF2GCODE (free)
  6. krabzcam (forum link)
  7. Onshape and kiri:moto (forum link)
  8. NC corrector
  9. Vcarve
  10. CAMworks
  11. MakerCAM (runs in flash and is dying because flash is no longer in use - if you want to use, try IE)

Some tools allow you to preview a simulation of the cut such as Camotics, carbide create, and estlecam to name a few.

Some of the drawing/drafting programs have integrated or installed extensions that will allow gcode creation from the same design program:

  1. Blender
  2. FreeCAD grbl post processor
  3. Fusion360
  4. Inkscape - “gcodetools” extension and postprocessor setting is none.
  5. there have been some posts on using sketchup, but not many.

The point is that there are many options and many opinions. Some trial and error is likely required to find a software set that works for your desired work output and tolerance requirements. The more artistic vs the more engineering user may require a different feature set for dimensions or layering. Your mileage may vary and your preferences or previous use may influence your decision more than the output. In the end the goal is to generate gcode the maslow can process to move and cut.

Knowing your bit size when making the design helps visualize the finished product. Some software will allow you to cut inside, center or outside the traced line, other programs allow you to set the line width to the bit size, so you see the finished product size. Generally speaking a 1/8" bit with a 1/4" to 1/8" adapter in a 1/4" collet or a 1/4" bit in a 1/4" collet will work. If you have a smaller bit, the rotational speed can be higher, but generally the spindle speed is at the lowest setting. An upcut bit will leave more top-side fuzzies than a down-cut. Spinning too fast will dull the bit and has a greater chance of fire. It has been mentioned that the best cutting removes chips of wood, not fine dust. The commonly accepted approach for cutting is to plunge the bit half of the diameter for each cut pass. For example. When cutting 1/2" (12.7 mm) ply, the plunge might be 1/16" (~1.5 mm) with a 1/8" (3.175mm) bit for a total of 9 passes and overshoot by 0.8 mm. A 1/4" (6.35 mm) bit would cut 1/8" (3.175 mm) per pass for a total of 4 passes and unless slightly more might not fully penetrate the work piece if the z axis is zeroed slightly high. These passes can be run at a feed rate of up to 30-32 ipm (762-812 mm/min). These recommended numbers will provide reliable cuts, but will take what may seem like forever to complete. Some report success running at plunge depths of 2x the bit diameter, but with a slower feed rate. If the cuts are excessively fuzzy, it may be time for a new bit. If the cuts are jagged, the bit may be moving too fast for the material or plunged too deep. All material can be optimized and does not cut the same. Solid oak will cut different than acrylic, which will be different than 3/4" ply or mdf. Test and success.

When ready to cut, it is time to chuck up your bit: upcut, downcut, single flute, dual flute. Zero your z axis, set your home position (“workspace home” in makerverse or home in webcontrol) so your cutout will be on the work piece, and press go.


Chapter 5 Calibration

Maslow, Eastbay, Metalmaslow, Makermade Jumpstart kits calibration options with Arduino MEGA:

  1. V1 sled / home cut or precut
  2. Triangular (ground control / webcontrol)
    – Ring
    – Linkage
    – Holey
    – Optical

WebControl Calibration Steps (all found in the Actions menu):

  1. Extend Chains and attach / detach sled (YOUTUBE DEMO)
  2. Quick configure and system measurements for calibration( [YOUTUBE DEMO]
  3. Triangular Calibration (YOUTUBE DEMO)


  1. Holey Calibration upgrade and run (YOUTUBE DEMO)

Makerverse Calibration Process for the Arduino Mega / Due

Video of 1.1.2 with Due Controller

  1. If your system didn’t automatically start calibration, you can start it by pressing the bullseye button that says calibrate next to it should open and you will see the work space and your system should go immediately to calibration, but it may not. if it is not connected say the second time you open it, to establish connection, if the connect button is blue, click it:

If you see a red close button, then you are connected.

If it does not, then click the bullseye “calibrate” button highlighted above.

  1. Calibration should look like this:

A. Enter your ring radius
B. Enter your Chain configuration (off bottom for bungee / spring ----- off top for dangling weights)
C. Press NEXT STEP and it will save the values.

D. Enter your stock width (2438.4 is the default. My system is 4’x4’, so different)
E. Enter your stock height

and walk through the details of each step.

Makermade M2 or Arduino Due system calibration with V1 or V2 shield

See Makerverse calibration for the Mega

Chapter 6 Upgrade options

  • Hardware (z axis or motors)
    – Linear bearing vs rigid base
    – Meticulous Z plans / approach / parts list
    – Metal sled upgrade (youtube video )
    – M2 z axis sled upgrade
  • software (webcontrol / makerverse)
  • electronics (controllers and add-ons)
    – automatic spindle/router power
    — Pictures and Discussion Post (1, 2)
    – M2 or arduino due
    – other options
  • Router Z axis automatic zeroing (faster setup after a bit change).

Appendix A: Troubleshooting

  • Resetting Chains (YOUTUBE DEMO) Forum post
  • z axis going wrong direction - check z axis pitch in settings. The default is -3.17. If your z axis is going backwards, it could be one of 2 things:
    • gcode may be telling the z axis to cut at a positive position. Usually cutting with the z axis is a negative Z value.
    • z axis pitch setting may be +3.17 instead of -3.17 or if you have a belt drive, it might need to be +8, +16 ,or +24.
  • motors don’t move - check plugs, swap cables. Verify power is plugged into to the shield and NOT the arduino.
  • circles are not round - skipped a chain tooth or position is incorrect. 1st: reset chains. 2nd, recalibrate.

Appendix B: History

The original Maslow was offered by @bar on a Kickstarter campaign. The campaign ran October 25 to November 23, 2016. The original kit included motors, chain, a z-axis kit, Arduino, motor shield, plus hardware. The user had to supply their own frame and sled. At the time, the chains were anchored to a fixed point on the sled, although many users subsequently added ring or linkage kits to better align the chain with the router bit.

Subsequent Maslow Offerings

Makermade Offerings

East Bay Offerings

MetalMaslow Offerings

Appendix C: Contributors

Information included in these wiki posts are gathered mostly from within the maslowcnc site and other user experience. Thanks to all forum posters who ask questions and seek clarification on finer details not yet documented. Thanks to forum users who answer the questions.


“Made the top rail very ridgid from top to bottom, figuring the sled hung from
it. During initial setup the chain goes from one motor to the other and
tensions the chain a lot. This bowed the top rail toward the front causing an
error message. Stiffening it front to back cured that…

the motors should be mounted so that the sprockets and chains are not very far
out from the front of the top beam, so you should not have problems with it
bowing towards the front. people commonly have problems with the mounts slipping
a bit, but not with bowing.

A specific workflow example would be
nice…How to draw a part, how to create a tool path, how to generate a G code,
how to get it to the Maslow. Which program allows design, tool path and post
processor export. I tried a bunch, Fusion 360 required too much prior process
knowledge, Easel too simple. Cut2D was just right for me. A little picture of
a profile cut and a pocket cut told me what was being discussed…How to export
a toolpath for Maslow.

I’m a bit leery of this. We got a lot of people off on the wrong path by giving
examples with inkscape/makercam, people got the idea that that was the only way
to do things and we had people asking how to export designs out of fusion 360 to
get them into inkscape or into .svg so they could use the ‘proper’ tool of

as noted, some people like one approach, some like another. We need at least a
couple of examples before I would be happy with any there.

What Gcode to use, Gcode ATC in” isn’t the right one
but I didn’t know ATC was automatic tool changer…

If there is no explicit maslow option, grbl is probably going to be the best
choice you have.

I couldn’t get Ground Control
to function reliably so I switched to Webcontrol.

I think we are very close to the point where we should push webcontrol and
describe Ground Control as a depriciated version.

Good so far…Maybe a little
trouble shooting info. My left motor wouldn’t measure out the chain for
connection to the sled. At times during calibration the motors would turn in
the opposite direction. A restart fixed it. Are those a function of the
Arduino firmware or ground control."

probably settings, we have a number of troubleshooting things on the wiki
already, and a lot more in the forums. It would be great to have someone go
through the longer forum posts and make wiki pages of the troubleshooting

1 Like

thanks @dlang for the responses. This was a post I got from facebook about things he would like to see included in a manual, so I dumped it at the end of the manual for reference to address. Thank you for your input. If ok with you, I’ll incorporate your response in the wiki above.

1 Like

you have my permission to do whatever with what I post.

David Lang

1 Like

We’re there, so I did.