Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
grbl-mode [2017/01/25 17:35]
arthur
grbl-mode [2021/10/24 19:20] (current)
arthur
Line 1: Line 1:
 = Using Smoothie in grbl_mode = Using Smoothie in grbl_mode
 +
 +(Or CNC mode)
  
 Smoothie's main job is to interpret G-code and to convert it into movement and actions. Smoothie's main job is to interpret G-code and to convert it into movement and actions.
Line 9: Line 11:
 Smoothie supports two different G-code "dialects" Smoothie supports two different G-code "dialects"
  
-* The "reprap" dialect, for 3D printing +* The "reprap" dialect, for 3D printing (NOT NIST compliant) 
-* The "grbl" dialect, for CNC milling+* The "grbl" dialect, for CNC milling (Generally NIST compliant)
  
 The "grbl" dialect is the closest to the "normal" Gcode standard ( NIST ), and is adequate and useful for CNC milling. The "grbl" dialect is the closest to the "normal" Gcode standard ( NIST ), and is adequate and useful for CNC milling.
Line 22: Line 24:
 The way you choose which format Smoothie will interpret the G-code you send to it as, is by changing the <kbd>grbl_mode</kbd> option. The way you choose which format Smoothie will interpret the G-code you send to it as, is by changing the <kbd>grbl_mode</kbd> option.
  
-If you set it to <kbd>true</kbd> : +If you set it to <kbd>true</kbd> :
  
-[[code]]+<code>
 grbl_mode    true grbl_mode    true
-[[/code]]+</code>
  
 Then Smoothie will interpret the G-code you send to it the same way GRBL or LinuxCNC does, as "normal" CNC G-code. Then Smoothie will interpret the G-code you send to it the same way GRBL or LinuxCNC does, as "normal" CNC G-code.
Line 32: Line 34:
 If however you set it to <kbd>false</kbd> If however you set it to <kbd>false</kbd>
  
-[[code]]+<code>
 grbl_mode    false grbl_mode    false
-[[/code]]+</code>
  
 Then Smoothie will interpret the G-code you send to it the same way Reprap-type firmwares interpret it, as "3D printing" G-code. Then Smoothie will interpret the G-code you send to it the same way Reprap-type firmwares interpret it, as "3D printing" G-code.
Line 45: Line 47:
 This special build has <kbd>grbl_mode</kbd> enabled ( set to "true" ) by default. This special build has <kbd>grbl_mode</kbd> enabled ( set to "true" ) by default.
  
-You can get the special CNC build pre-compiled at [[getting-smoothie]] or compile it yourself at [[compiling-smoothie]]+You can get the special CNC build pre-compiled at [[getting-smoothie]] or compile it yourself at [[compiling-smoothie]]
 + 
 +Note, some modules are excluded in CNC mode, like temperature control.
  
 </callout> </callout>
Line 57: Line 61:
 However, more CNC oriented software can also be used to control lasers ( they are virtually similar to a CNC mill with a very thin tool and no Z axis ), this is the case for example of [[bcnc]]. However, more CNC oriented software can also be used to control lasers ( they are virtually similar to a CNC mill with a very thin tool and no Z axis ), this is the case for example of [[bcnc]].
 </callout> </callout>
 +
 +Typical differences between 3d mode and CNC mode are:-
 +
 +1. Error messages are different
 +2. G28 goes to park position and is NOT home, $H homes in CNC mode
 +3. Many GCodes may be differently interpreted in CNC mode than in 3D mode, please check your gcode references (Linuxcnc has a good GCode reference, do not use the reprap gcode reference for CNC mode)
 +
 +**NOTE** you cannot generally use pronterface to control CNC/grbl mode, as Pronterface is for 3D printers and uses a different dialect of gcode, it also does not allow you to send commands such as $H to home. It also tends to truncate commands like G28.2 by not sending the .2 part.
 +