mdim
Posts: 1
Joined: Fri Jan 22, 2016 9:30 am
Location: Central PA
Contact: Website

grbl Support

Add grbl support, particularly for v0.8 and v.09. Marlin et al are descendants of the grbl project; so add grbl as a firmware choice. There is a pinout change between v0.8 and v0.9, so Simplify3d would have to be aware of the differences.

Add subtractive processing to grbl support. Since grbl can do both additive and subtractive, a selector would need to tell the slicer which strategy to use. This would enable CNC machines built on grbl to use the familiar Simplify3D slicer instead of some complex and expensive CAM package.

The slicing strategy should be simple-ish; slice top-down, finding the surface. Offset the surface by the radius of the cutter. Slice thickness is depth of cut. Z is fixed, so contouring is done by X&Y axes. XYZ speeds are the feed rate of the tool. Spindle needs to be turned on and in v0.9, the speed set.

Let tool changes be the responsibility of the user, added in custom code for each process. No drilling cycles, no canned cycles, no pecking; grbl doesn't support them anyway. I'm talking hobby level CNC, not fully optimized production-level CAM.

Clamps need to be identified; they are no-fly zones for the spindle. Regard them as custom supports, I guess, and let the user add them.

Coolant control could be a tick box like fan cooling for FF. Or put it in custom code, too.

Probing is a feature for the future. Don't hold up the first release trying to add a digitizer.

Here is the official GCode list from the grbl project.

Supported G-Codes in v0.9i
G38.3, G38.4, G38.5: Probing
G40: Cutter Radius Compensation Modes
G61: Path Control Modes
G91.1: Arc IJK Distance Modes
Supported G-Codes in v0.9h
G38.2: Probing
G43.1, G49: Dynamic Tool Length Offsets
Supported G-Codes in v0.8 (and v0.9)
G0, G1: Linear Motions
G2, G3: Arc and Helical Motions
G4: Dwell
G10 L2, G10 L20: Set Work Coordinate Offsets
G17, G18, G19: Plane Selection
G20, G21: Units
G28, G30: Go to Pre-Defined Position
G28.1, G30.1: Set Pre-Defined Position
G53: Move in Absolute Coordinates
G54, G55, G56, G57, G58, G59: Work Coordinate Systems
G80: Motion Mode Cancel
G90, G91: Distance Modes
G92: Coordinate Offset
G92.1: Clear Coordinate System Offsets
G93, G94: Feedrate Modes
M0, M2, M30: Program Pause and End
M3, M4, M5: Spindle Control
M8, M9: Coolant Control

grbl is not complex. Talking to it could be, I suppose, and you have to make a decision based on what benefits your future most. But think how much fun this would be for your programmers!

Return to “Feature Requests”