GRBL Settings 101: A How to Guide

A picture of a gShield

Once your gShield is powered on and you have the stepper motors moving. It’s time to dial in the machine movements to create the desired motion by updating the GRBL settings. This is done using the command line interface which in my case is accessed through the Universal Gcode Sender.

Start Here

If you don’t already have Universal Gcode Sender and GRBL installed, click here for a step by step guide to setup your DIY CNC Controller.

grbl settings: Universal Gcode Sender Main Screen

Universal Gcode Sender Main Screen

Display Current GRBL Settings

There are quite a few GRBL settings that we can adjust to get our CNC machines to do exactly what we want. I found it was easier to refer back to a single sheet while setting up my machine as opposed to going back and searching the GRBL wiki page. To download a copy of this cheat sheet, click the link below.

Get Your GRBL Pocket Guide Here

 

The first step is to see your current settings. Type “$$” to display the available user defined settings in the console window.

For a complete list check out the GRBL wiki available by clicking here.

Here, we are interested in the “Steps/mm” settings.

$100=314.961 (x, step/mm)
$101=314.961 (y, step/mm)
$102=78.740 (z, step/mm)

Note these were not the default settings on my system. How did I get 314.961? Good question. All it takes is some quick math and a few pieces of information.

     Lead Screw Pitch = .200 inches (inches per revolution)

     Stepper Motor # of Steps per Revolution = 200 (steps/revolution)

     Micro Stepping Setting = 8X

I am using .200 inch pitch lead screws, my stepper motors are 200 steps per revolution and my stepper motor controller is set to 8X micro stepping for the x & y axis.

Calculating the “step/mm” Value

Lets break it down one step at a time.

Example calculations demonstrating how to find the step/mm value for your grbl settings

Example calculations demonstrating how to find the step/mm value

After a few quick calculations you have the values you need. Update the GRBL settings by typing the following into the command line.

$100 = 314.961

This will set the X axis steps per mm. Repeat the process for the Y and Z axis using $101 and $102 respectively.

Note the Z axis setting is different because I am running a lower micro stepping count of 2x to get a little more power to lift the head of the mill.

Final Thoughts

Remember, these are just initial values to get you int the ball park. We will need to use a dial indicator and tweak the values to get the most accurate motion. More on that in the future.

Are you building a CNC mill? Are thinking about building one? Are you simply fascinated by CNC machines like me? Tell us what you want to make in the comments below.

Thanks for reading. Until next time…

Tim

66 Comments

  1. GARY

    MY GOAL IS TO BY A MINI MILL AND CONVERT TO CNC. I HAVE A ARDUINO/CNC SHIELD WITH A COUPLE OF STEPPERS THAT I AM PLAYING WITH. USING CAMBAM FOR GCODE & CHILIPEPER FOR DRIVER. I HAVE SUCCESS IN MANUALLY TYPING IN GCODE AND GET STEPPER MOVEMENT & JOGGING. BUT NO SUCCESS IN GETTING A LOADED PROGRAM TO RUN?
    I AM SURE IT IS A SIMPLE SETTING, BUT SO FAR IT IS BAFFLING ME. I AM TOLD ITS IN THE GRBL CONFIG SETTINGS, BUT I YET TO GET THE RIGHT COMBO.
    GARY

    Reply
    1. Tim (Post author)

      Gary,

      I appreciate the comment. Nothing worse than getting so close to finishing a project and one little setting is keeping it from working. I have never used CAMBam or Chilipeppr, however, I did not need to make any changes in my GRBL settings to run a gcode program. Have you tried running the sample circle code from the GRBL GitHub site? https://github.com/grbl/grbl/wiki/G-Code-Examples Scroll all the way to the bottom of the page. Copy and paste the gcode into a text editor and save as a .nc file. Try opening this and running it with Chilipeppr. If it works, we know there is something that needs to be adjusted in CamBam. If my explanation of the .nc file creation was not clear, just send an e-mail to me Tim@diymachining.com and I will reply with the file attached. Let me know how it goes.

      Reply
  2. udaykumar

    hello tim
    nice work it make me very easy to understand about grbl and i am having a doubt when the jumper are used to short to get the microstepping so how can we programm in grbl to get microstepping
    i mean i need 0.8mm per rotation so how could i accomplish that after shorting the ms1,2,3 etc and i would like to learn about limiting current for a4988

    Reply
    1. Tim (Post author)

      Udaykumar – I appreciate the feedback. You are right to want to set the microstepping first. Keep in mind, microstepping is a hardware setting and cannot be changed in GRBL. You will need to know your microstepping setting to enter your steps per mm value in GRBL. You will also need to know the mechanical setup of your machine. Feel free to email the details to me and I can walk you through the calculations.Tim@diymachining.com
      To set the current, you use the trim pot on the board that holds the A4988 driver. I simply increased the current by adjusting the trim pot until my machine ran smoothly at the maximum speed and acceleration I wanted.

      Reply
  3. Gururaj

    Hi Tim,

    Thanks for this explanation. It helps a lot. I have constructed CNC m/c with Arduino Grbl shield and DRV8552 controller. Following are few details.

    1) I have used T8-2-D8 T8 screw 8mm, 2mm picth, 8mm lead trapezoidal screw.
    2) Stepper Motor is 1.8 Deg/Step or 200 Steps/revolution.
    3) No micro-stepping used. So micro-stepping = 1.

    When I rotate the lead screw by hand and make one complete revolution, I measured my axis is moving 8mm. That’s matching the “lead” information given point 1) above.

    My question is if 200 steps gives me 8mm, then 25 Steps would give me 1mm. But according to the calculation given in this site it will be

    200 steps/2mm pitch = 100 Steps/mm.

    So $100= ? 25 or 100? Please suggest me.

    Reply
    1. Tim (Post author)

      Gururaj – Congrats on building your machine! You are correct, your $100 setting should be 25. Unfortunately, the terms lead and pitch are often used interchangeable. This is fine if you have a single start screw. However, that does not work when you have a multiple start screw. As you correctly pointed out, we are interested in the lead. The amount of linear distance per revolution. I will update the post to clarify lead, pitch and starts. In your case you have a 4 start lead screw. Lead/Pitch = # of Starts

      Reply
      1. Guru

        Hi Tim,
        Thanks for reply and clarification provided..
        I found one issues in my setup. I was using grbl_v0_9a_edge_328p_16mhz_9600_build20121210 and the configuration are completely different. I reinstalled grbl 0.9j Atmega328p 16MHZ 115200 17 04 2016 _2.hex now I can see X,Y,Z max limits, enabling soft limits etc…

        Tim, if I set $100=25, its moving very slowly which does not look normal to me.
        But if I set $100=100 axis is moving quite rapidly.(I have not measured the distance its moving.) I am still wondering which is correct setting for x,y,z step/mm… Now learning how to get homing, soft limit and limit switches working.

        Ya I agree with you. It will be great help if you could post few information about lead, pitch, # of starts and how that will effect steps/mm.

        I wanted to post pics of my machine and the lead screw, but did not find file upload option here. If its available please let me know..

        Regards,
        Gururaj

        Reply
        1. Tim (Post author)

          Gururaj – Good catch on the software version. I am confident the $100 = 25 is correct. Once you verify the setting by measuring how much the axis actually moves compared to the commanded distance you can adjust the speed. To change the speed you will want to play with the $110,$110 & $112 settings. Sounds like you are making great progress. Currently, there is not an upload option. However, if you email the picture(s) of your machine to me, I will post them. Tim@DiyMachining.com

          Reply
  4. TheKvc

    Awesome Teaching skills!! I really appreciate your work alot.

    I’m making a small CNC Setup using arduino, but here in INDIA, I can’t find GRBL sheild for direct converting everything into CNC. SO, I need to make the whole layer of code by my own. And your explanation helped me alot. I’m still working on it. But, i think it needs more time than i thought.

    Can You help me in any aspect?
    Any suggestion about my situation, would be highly appreciated. 🙂

    Reply
    1. Tim (Post author)

      TheKvc – Glad to hear you are going to build a machine. The GRBL code which is stored on the Arduino should be available world wide. Sounds like what you need is the hardware layer (stepper drivers) to connect the Arduino to the stepper motors. There a any number of drivers that will work with GRBL and the Arduino. There are several stepper driver options provided here… https://github.com/grbl/grbl/wiki/Connecting-Grbl

      Reply
  5. Hamid

    Dear Tim,

    I am so happy to relationship with you.
    I have an Arduino Due board and i want to make a 3 or 4 axis milling machine?
    Can i use of Due,for your suggested Grbl controller?

    Thanks and regards,
    Hamid Rafiee

    Reply
    1. Tim (Post author)

      Hamid – Thank you for the comment. While not traditional, it seems like it works. Check out this discussion for more details https://www.synthetos.com/topics/limit-switches-with-tinyg2-arduino-due-gshield/

      Reply
  6. Maurice Mezzera

    Hi Tim hope you can help me. I think I’m correct setting the $100=50 , I’m using a200 steps per rev motors a 8mm per rev screw an half step. I’m using Inkscape to draw a square of 100 x100 mm .
    Run the machine I got a square of about 27 mm per side
    If I draw a square with the machine control in mm and run for instance 30mm in each axis the result is perfect
    I think is the Inkscape software but not sure ,can’t find the solution to have what I draw and the result a the machine the same size
    Any ideas
    Thanks Maurice

    Reply
    1. Tim (Post author)

      Maurice – I agree with you. Your steps/mm settings sound correct. I also suspect Inkscape is the likely source of the problem. I am not an expert at Inkscape. Is there a post processor for Inkscape? Perhaps there is a scaling value you can adjust in the post processor. Initially I thought we might have a mm to inches type conversion problem. Will you post or email a copy of the .nc file to me? I am curious to see what the values. You can open the .nc file that you used to draw the square in any text editor and paste it into a comment here or email me Tim@DIYMachining.com

      Reply
  7. Bob

    Hi,

    When I try using the command:
    $100=314.916

    I get an “invalid Command” message

    I’ve tried it in both the Universal GCode Sender and the Arduino “serial monitor” tool. I can change existing commands but not set new ones. What am I missing?

    Reply
    1. Tim (Post author)

      Bob – That’s very strange. What version of GRBL are you running? Will you email a copy of your settings to me at Tim@DIYMachining.com ? I will take a closer look.

      Reply
  8. Anthony Harold

    I am building a project where a proximity sensor determines the distance between its position and a dynamic load/target i.e. the load is has linear translation. The sensor is mounted on a platform that is translated using CNC mechanism. The goal is to ensure the platform follows the load/target. How can I use the arduino to generate control signals to the GRBL shield to drive the stepper motors such that the platform follows the load/target??

    Reply
    1. Tim (Post author)

      Anthony – Nice! Sounds like a really cool project. I expect you will need to write some Arduino code that reads the sensor information and then generates the step & direction outputs to send to the gShield (GRBLshield). I recommend you take a look at this page which details the Arduino pinout that the gShield expects. https://github.com/grbl/grbl/wiki/Connecting-Grbl I hope that gives you some direction. If you still have more questions, feel free to email me Tim@DIYMachining.com

      Reply
  9. Steve Krumanaker

    Thanks for this, I’m not building a mill but a rotary laser engraver. I’m completely out of my comfort zone and this little explanation really helps.

    Reply
    1. Tim (Post author)

      Steve – I appreciate the feedback. Your laser engraver project sounds really cool! What do you plan to engrave with your machine?

      Reply
  10. Kevin Roach

    Tim,

    I am surprised your not running UGS PLatform! Do you know much about and if so maybe guide us on first time setup and use?

    I had a huge problem getting my woodpecker cnc going. Commands in Arduino Ide wouldn’t work for the $ & $$. I tried running UGS and it wouldn’t connect. I downloaded Hype Terminal and could connect to the machine and I also got a response back from the board. At that point I was just scratching my head as to what was going on and even posted on some forums. Of coarse I got every suggestion under the sun. I finally made sure I had a java jre library installed and then tried Source RabbitGcode Sender and it worked and could move the machine around. I then downloaded and installed UGS Platform and low and behold it works and can move the machine around. I did read after all this GRBL has problems with especially CH430G usb to serial chips on the nano boards and the chinese boards nano and uno.

    So I hope this helps everyone out that may end up with the same problem.

    Reply
    1. Tim (Post author)

      Kevin – You are right! I want to upgrade both my GRBL and UGS software version to the latest and greatest. I really like some of the new features I see in UGS Platform and GRBL 1.1

      Thanks for sharing your experience with getting UGS Platform setup.

      Reply
  11. Bradley

    Dude I can not get my settings right I got an ox nena 23 500mmx750mm I can’t find anything please help

    Reply
    1. Tim (Post author)

      Hi Bradley, I know its been a while. Feel free to send me an email at Tim@DIYMachining.com If we cannot solve your problem by email, I am happy to get on the phone with you.

      Reply
  12. Joe

    Hi Tim, Very helpful but could you please please just give me a ball park figure for a cheap chinese cnc 3018 for the life of me i cant even work it out.

    Many thanks Joe

    Reply
    1. Tim (Post author)

      Hi Joe, You can purchase a 3018 DIY CNC machine for about $220 (USD). See this link from Amazon. https://www.amazon.com/Control-Plastic-Engraving-300x180x45mm-Extension/dp/B074M7RQMT I have never used one of these and I am not endorsing it. Just saying it can be had…

      Reply
  13. Banzaitoyota

    Just finished assembly of my Chinesesium 3D Router/Engraver. Waiting on the missing collet chuck to start, this is very helpful

    Reply
    1. Tim (Post author)

      Hi Banzaitoyota – Excellent, glad you found the material helpful.

      Reply
  14. abbakMus

    test

    Reply
    1. Tim (Post author)

      Hi abbakMus, Did your “test” work? Let me know how I can help.

      Reply
  15. jim G.

    I’m trying to set grblgru for inches. I know there is a simple way to do this, just don’t know the process being new to grblgru. I’m running in simulation mode.

    Reply
    1. Tim (Post author)

      Hi Jim, thanks for reaching out… When you say you want to set GRBL to inches, are you referring to the position feed back units GRBL uses when talking with a gcode sender like Universal Gcode Sender? If that is the case, change the $13 GRBL setting to $13=0. This will set the GRBL feedback units to inches.

      If you are running gcode and want that to tell the controller you program is in inches, you use G20 at the top of your gcode. If you want to tell the controller the program was written in mm, us G21.

      Reply
  16. Yogi

    Hi I want to make a cnc machine the can use a pump to pour batter.
    My question is is there a way or what build do you recommend I want it to do the same thing over and over again. Is there a way to store gcode on the arduino and make so a push button will send the code and make it do the work.
    I plan on making a t bot as it will have to hand over hot out (funnel cake robot )

    Reply
    1. Tim (Post author)

      Yogi, that sounds like a really fun application! You cannot store gcode on the Arduino that runs GRBL. The GRBL program consumes all of the available memory on the Arduino. I have sent the same gcode program repeatedly using my Netbook and Universal Gcode Sender. I just send the same gcode program over an over again by clicking the send button. The down side here is you need a Netbook or Laptop to send the gcode. However, you might look into using a second Arduino or Raspberry PI instead of the Netbook to stream the same gcode file over an over again on a button push.

      Reply
  17. Mohamed

    Can i know how to configure a grbl code that is uploaded to arduino to work with a non Cartesian cnc, like a tribod or any parallel kinematic machine(PKM), or is there any way that i can get the gcode to arduino to make the steppers move accorrding to a custom configuration

    your fan from EGYPT

    Reply
    1. Tim (Post author)

      Hi Mohamed, thanks for reaching out. I have not heard of GRBL being used for a non-cartesian CNC machine. That being said, the machine will move based on the gcode streamed to the Arduino. If you wanted to write a custom post processor you might be able to get something like that to work.

      Reply
  18. argo

    Hi tim, your explanation really helped me to learn the cnc machine work, i want to build a 3 axis cnc machine using arduino uno and tb6600 v1.2 stepper driver. I have tried on a motor without an engine and it is running, but 2 of my stepper motors are spinning upside down, I want to ask you for grbl settings on how to reverse the rotation of the motor. I hope for your help. thank you

    Reply
    1. Tim (Post author)

      Hi Argo, good to hear from you. Take a look at the GRBL Settings Pocket Guide I created. Click here to open the PDF. You will need to adjust the $3 axis direction GRBL setting. There is a table in the Pocket Guide that correlates the axis forward & reverse combinations to a single digit from 0 – 7. Just find which axis you want reversed and then use the associated setting value. For example, if you want to reverse the Y and Z axis, the $3 setting would be 6 entered to GRBL like this $3=6

      Reply
  19. argo

    I am sorry, because I was late reading your answer. because I’m working.
    I was greatly helped by the guidance you provided. I came to understand how to reverse the direction of rotation of the motor on the grbl.
    thank you

    Reply
    1. Tim (Post author)

      Excellent, glad you were able to reverse the direction of the stepper motors using the grbl settings.

      Reply
  20. Ron Smith

    Hello everyone
    I’m having trouble setting up a my little 3018 pro. The settings for $100.101.102 started at 100.
    everything worked OK but everything came out 1/4 size. I tried to change the settings to 400 but everything stops working. Nothing moves and the stepper motors make a awful noise.
    Has anyone had this problem?

    Reply
    1. Tim (Post author)

      Hi Ron, that’s frustrating. I recommend you change the settings back to 100 and then run the circle.nc test gcode available for download here. This way you can verify the settings of the machine are correct. I suspect you have a scaling issue in the software used to create the gcode. The sample gcode will draw a 1″ diameter circle. If the circle comes out correctly, then you know the machine settings are correct.

      Reply
  21. S Eddie

    Dear
    Want to make 4 axis CNC.
    Can you guide me?My ail is emmcpgmfitraining@gmail.com.

    Reply
    1. Tim (Post author)

      Hi S Eddie, thank you for the comment. I am probably not the best person to help with a 4 Axis CNC machine. The GRBL machine I run is 3 axis only. I do know that if you want to run a 4 axis machine, you will need a special load of GRBL and use and Arduino Mega.

      Reply
  22. Charlie Supe

    Greetings, Thank You nice finding your site here. Purchased a Bob’s CNC kit and built, nice frustrating and rewarding all at the same time.Completed tests fine and homes, moves and jogs alright. Now, dialing it in to do projects is the task at hand, understand it is all in the settings, can get it to start a project but always kicks out an alarm about unsupported G-Code at line “fill in a line number here” or timeouts or just goes to idle and locks up so I have to reconnect to GRBL. I know it’s all settings and speeds, I am using F-engrave to create some simple things, and UGS to communicate G-code to machine. Have Fusion 360, but that is also another learning curve for Siyphus to push a rock up here. Also have access to ESTLCam. Am chomping at the bit to produce a Picasso, but realize I’m only learnig how to hold a paintbrush. Maybe a glossary of terms page might be a welcome addition to your sight, but you are a goldmine of info in this world. Thank You.
    Charlie

    Reply
    1. Tim (Post author)

      Hi Charlie, I appreciate the kind words. The glossary page is a great idea. I have seen the “Unsupported Gcode Error” a few times. In my experience, this was due to a Tool Number left in the Gcode. You might try opening the .nc file in any standard text editor and removing the T”fill in the number here” value from the .nc file and try running the file again.

      Reply
  23. Airy

    Hi,
    I have a CNC2020B and I cannot find the lead screw pitch… I think it is using M8 threaded stainless steel Lead screw triangle. Do you have any idea of the lead screw pitch of it. I think it must be around 640 with 1/4 micro-stepping. But it is not accurate

    Reply
    1. Tim (Post author)

      Hi Airy, without more details about the lead screw, I can only guess at what your step/mm settings should be… Here are my assumptions Lead = 2mm, Standard Stepper Motors with 200 Steps/revolution, 4x micro stepping. Using these values, I calculate (guess) a step/mm setting of 400 steps/mm Let me know how that works. You might try just iterating with different values until your commanded distance equals the actual distance the machine travels.

      Reply
      1. Airy

        Hi Tim,
        After searching, I found that M8 Lead screw has a Lead screw pitch = 1.25 mm/revolution and with 200 steps/revolution and 4x micro-stepping the step/mm that is calculated is 640 steps per mm. Now it is working perfect. I have one question, How does the feed rate interfere with it. Because at the moment the software is configured at 260 Feed rate and the machine is working good but if alter the feed rate to more than 260 then the machine goes over the limit.

        Reply
        1. Tim (Post author)

          Airy, glad you have the steps/mm setting resolved. As for the feed rate, take a look at this post where I cover setting the max feed rate of your machine. Setting GRBL Max Feed Rate When you say the machine goes over the limit, I assume you mean the machine stops working? This is typically due to the stepper motors trying to source too much current from the stepper drivers. Take a look at the post in the link provided. Let me know if that fixes the issue.

          Reply
  24. Tim Kershner

    I am a Newbie here. I am using an Otur Lasermaster2 and only have moving X, Y axis….How do I disable the Z axis in GRBL so I dont get a Homing Fault?

    Reply
    1. Tim (Post author)

      Hi Tim, great name by the way… To disable the Z-axis, you will need to edit the config.h file in the GRBL source code. It’s not as daunting as it sounds. See the instructions here that indicate exactly which lines of code to change.

      How to disable Z-axis homing in GRBL.

      Once you make the change, you will need to recompile and flash the update to your Arduino.

      Let me know if that answers your question.

      Reply
  25. Craig R.

    Hi, Is there any software I could use break a program into sections… I.E. I have a carve that is about 2.9 m. lines of code with an est time of 34hrs long. As you can see I would love to break it down into sections and pausing creates other issues. Any help would be greatly appreciated. Thank you, Craig

    Reply
    1. Tim (Post author)

      HI Craig, wow 34hrs is a long run time. I certainly appreciate the need to break that into smaller parts. I do this in my CAM program (Fusion360) by selecting one operation at a time. If that isn’t an option for you in your CAM software, you can manually edit the gcode in any text editor and add optional stops, M01. Or you could try something like G-Code Ripper. I have never used this but it might be worth a try. G-Code Ripper

      Reply
  26. Mick

    Hi Tim,

    Love the info you have shared, getting me off to a good start as a very new user. Fist machine is a Chinese 3018 Pro so I can get a handle on it all. Started off fine but but I think I fiddled to much and multiple errors popping up. I have used UGS and candle for control.

    Not sure if you can help but I think I need to reset the machine back to factory as there seem to be limits active that prevent it from moving to designated points, no matter what I do.

    Any help much appreciated.

    Mick (An Aussie in the UK).

    Reply
    1. Tim (Post author)

      Hi Mick, I noticed a similar comment on another page. Posting my response here as well in case you don’t see the other one.

      I appreciate the feedback. Now, lets see if we can get your machine running again. Unfortunately, I do not have the factor GRBL presets for the 3018 Pro. However, I agree with your assessment. It sounds like a limit switch is active. A few thoughts, with the machine powered off, manually rotate the ball screws to move the machine away from the limit switches. Then power the machine back on and see if that cleared your issue. If not, you will want to take a look at the GRBL settings. Based on your comment, I sounds like you are familiar with how to adjust the GRBL settings using the $ and number combination. Do you have any of the following enabled (ie set to $XX = 1) $20, $21, $22? If so, try setting those back to “0” and then add them back one at a time. Feel free to email a copy of your GRBL settings to me at Tim@DiyMachining.com I will take a look to see if there is anything out of the ordinary.

      Reply
  27. Mick

    Hi Tim,

    Love the info you have shared, getting me off to a good start as a very new user. Fist machine is a Chinese 3018 Pro so I can get a handle on it all. Started off fine but but I think I fiddled to much and multiple errors popping up. I use UGS and candle for control.

    Not sure if you can help but I think I need to reset the machine back to factory as there seem to be limits active that prevent it from moving to designated points, no matter what I do.

    Any help much appreciated.

    Mick (An Aussie in the UK).

    Reply
    1. Tim (Post author)

      Hi Mick, glad you reached out. I appreciate the feedback. Now, lets see if we can get your machine running again. Unfortunately, I do not have the factor GRBL presets for the 3018 Pro. However, I agree with your assessment. It sounds like a limit switch is active. A few thoughts, with the machine powered off, manually rotate the ball screws to move the machine away from the limit switches. Then power the machine back on and see if that cleared your issue. If not, you will want to take a look at the GRBL settings. Based on your comment, I sounds like you are familiar with how to adjust the GRBL settings using the $ and number combination. Do you have any of the following enabled (ie set to $XX = 1) $20, $21, $22? If so, try setting those back to “0” and then add them back one at a time. Feel free to email a copy of your GRBL settings to me at Tim@DiyMachining.com I will take a look to see if there is anything out of the ordinary.

      Reply
  28. Ruby marshall

    Help, I’ve built my cnc machine and the program runs like it’s working but the machine does not move, I can’t work out what might be wrong, any suggestions please?

    Reply
    1. Tim (Post author)

      Hi Ruby, I recommend you disconnect all you motors from the stepper drives except for one. Use this axis as your test axis. I like to just send “jog” command from Universal Gcode Sender to test the setup. Once you get it working, then you can connect the other axis. Unfortunately, without a little more information, I cannot help diagnose the problem. Are you able to connect Universal Gcode Sender to the Arduino controller?

      Reply
  29. Rodrigo Parra

    Hi, I bought recently a CNC3018 machine and I’m having a hard time getting anything done at all…

    Basically I can’t finish a job without the machine comming to a halt. I read on a lot of sites that sometimes the spindle produces a lot of EMI and this can disrupt the integrity of the communication via USB. To test this, I simply disconnected my spindle but still the machine hangs at a random location. I’ve tried different USB ports in a PC and a laptop. Nothing helped. I even tried unscrewing the controller box from the CNC router chassis and place it further away to avoid vibrations, in case the issue would be a bad USB connector but this didn’t bring me much further.

    I use Candle and before the machine stops I see some strange characters on the status response and the coordinates monitor freeze, as if the software lost synch with the controller.

    As a desperate measure I checked how to reset and recover the coordinates with candle, in the hope I could resume the work from where I was but I don’t think we can tell Candle to re-start from a given G-code line.

    I’m getting a bit out of ideas and really need some help.

    The software I use is Candle 1.1.7 and the machine firmware is grbl 1.1f. The controller board is a woodpecker v3.1. I think this is the most common setup they sell this machines with.

    I understand these are cheap machines but they are in the market for several years so I can’t believe it is always this unstable. I probably need a new board but I wonder about others experiences before I buy a new board and send it back to trash… only to learn later that this setups are inherentely unstable.

    Can you help please with some advice?

    Thank you so much in advance.

    Reply
    1. Tim (Post author)

      Rodrigo, that is very strange and sounds very annoying. Your process of disconnecting the spindle makes sense. Have you tried disconnecting all but one axis and running the program again? The stepper motors can also create noise. Have you tried other Gcode streaming software other than candle, like Universal Gcode Sender? I would be happy to take a look at the gcode to see if there is something strange in the code. Feel free to email me at Tim@DIYMachining.com

      Reply
      1. Rodrigo Parra

        Hi Tim,

        thank you so much for your answer and sorry for not having seen it earlier. I contacted the vendor and they sent me a new controller board. This one seems to be working well and stable, so it was apparently a controller board with stability issues, maybe just a cheap connector with contact issues…

        The USB connector of the replacement board is gold finished and the USB connector clearly fits tighter than the old one.

        I hope it stays stable for a few weeks… 🙂

        Reply
        1. Tim (Post author)

          Excellent, glad the issue was resolved.

          Reply
  30. William Cantrell

    I am lost….According to my steppers, I have set them to 800 pulse/rev. In the data sheet, that says at that setting its 4 micro steps. My lead screw says it’s .5” per turn. Converted to mm is 12.7mm. So (800*4)/12.7=251.968? That’s what the pdf cheat sheet says $100 should be? But I it travels much farther than it’s supposed to. I have to go down to 63.850 to travel accurately by ruler on manual. However, once I set my XYZ zero, the machine does not go back to zero, it’s off. I can change the steps on my motors and the results are the same….so I must be missing something in the software? I cannot carve anything because my machine digs in too deep to the work surface, and I’m sure this is related to my $100-$102 settings?

    Reply
    1. Tim (Post author)

      William, that sounds quite frustrating. Looks like you double counted the micro stepping in the calculations above. In the example calculations, I assume an standard stepper (200 steps/rev) and then apply the micro stepping at the end. In any case, looks like a value of 63 steps/mm is a good place to start. Once you get the machine moving the commanded distance, that is jog 1″ and the machine moves 1″, you can move on to the zero. Note, each time you power cycle the machine, you will need to reset the X,Y & Z zero. The zero location must also match the zero position used in your CAM software to generate the tool paths. Fr example, if I am going to carve something small, I will typically choose the center of the stock as the X and Y zero. Next, with the tool that I plan to use for the cutting, I set the Z zero at the top of the stock. Does that answer your question? If not, comment again and we will keep working the issue.

      Reply

Leave a Comment

Your email address will not be published. Required fields are marked *