Either 1) G10 L2/G10 L20. grbl follows a subset of the LinuxCNC standard: G Codes & Grbl v1.1 Commands or 2) call each in turn and probe in CONTROL. Really depends on what your workflow is and what you're trying to do.
Your CAM workflow may be able to add it for you to the GCODE, otherwise edit in by hand / remember to send manually before running. Our Fusion post for example supports it properly: docs:software:fusion360 [OpenBuilds Documentation] (I may be wrong, but I don't think Easel will, its aimed more at the entry level market?) In terms of CONTROL the dropdown near the DROs can be used to switch between coordinate systems for jog, probe and zero etc, but it is best of the Gcode/CAM asserts the coordinate system it wants to be in. CONTROL can be in G55, but if the GCODE says its in G54 thats where it will run. The Gcode is always honored.
Thanks so much. I have been working in the 2d world all of my work life so Fusion is intimidating at the moment. I have always been making working or shop drawings in 2d for my employers. The 3018 is closer than I've ever been to 3d. So in above example, G54 is the active work space? What about if G28 or G30 is sent, are they in machine space and does it matter what workspace is active? Meaning the machine will go to these set coordinates regardless of work space is set active? Do I have to switch back to G54 after a G28? Tks
I have tried several times to use the same .nc files with easel and it make the item perfectly but when I switch to openbuilds and run the same gcode, it promptly drives the cutter into the bed. I have made sure the that both controllers are set to G20. I have limit switch that do work and openbuilds shows that they are working. Do you have any ideas for me to try? Ron
Post the gcode for review please. Also, how are you setting origin in CONTROL (describe your exact steps from powering up machine)
Do you remember to set the Origin in G55? Ie go into G55, then Probe or SetZero to establish where the stock is? Always Home > Set origin > run Job - Rehome after any crash, power off, alarm etc. - Re-establish origin when changing stock (different thickness or different XY datum)
I have a G21 set by using G21.1. Sorry I forgot to mention that I set probe height by the openbuilds program. I believe that I am still having issues with the whole work offset procedures. one of the offsets I have is G10 L1 P1 X1.5 Y2.00 Z3.0 called by G55 and another one is that I have tried is G10 L1 P2 x3 y1 x2 and called by G56. Thank you so much for your help
You are clearly confused by all the Gcodes that you don't fully understand yet so lets just stick to clicking buttons (-: 1 - turn on machine 2 - open openbuildCONTROL (close easel and all other machine controller software, only CONTROL must be connected) 3 - click 'Home' so the machine homes itself correctly now the machine knows itself (Machine Coordinate System is set) , we can set offsets 4 - select G54 (your gcode is not actually selecting a Work Offset System so lets just stick to the default G54) 5 - jog to the work zero point (where you set it in Easel, looks like left,front corner for XY and top of workpiece for Z) and use the setZero' buttons to set X Y and Z zero at that point on the workpiece. now the machine knows where the Work Coordinate System zeros are. The Gcode is all relative to the WCS. The display should be showing Zero for all three axes. 6 - click Run the Gcode says the following will happen G20 ; set imperial mode M3 S8000 ; start spindle at 8000rpm G90 ; set absolute measurement mode G1 Z0.25000 F9.0 ; move Z to .25" above workpiece Z0 at feedrate 9 inches a minute G0 X1.03638 Y1.01144 ; rapid to X1... Y1... the bottom of the circular pocket G1 Z-0.02000 F9.0 ; move Z down to 0.2" below Z0 at 9"/minute, starts cutting into workpiece G1 X1.04767 Y1.02142 F25.0 ; move to this XY at 25"/minute G1 X1.04855 Y1.03638 F25.0 ; move to this XY at 25"/minute G1 X1.03845 Y1.04764 F25.0 ; move to this XY at 25"/minute . .; cut all the way round at this same depth . G1 Z0.02250 F9.0 ; move Z a little deeper G1 X1.03638 Y1.01144 F25.0 ; start cutting circles again G1 Z-0.04000 F9.0 G1 X1.04767 Y1.02142 F25.0 G1 X1.04855 Y1.03638 F25.0 . . . G1 X1.10370 Y0.31128 F25.0 ; last circle segment G20 ; inch mode, superfluous G90 ; absolute mode, superfluous G1 Z0.25000 F9.0 ; raise Z to .25" above work Z 0 G0 X0.00000 Y0.00000 ; move to work X0 Y0 G4 P0.1 ; delay 0.1 second M5 ; turn spindle off and that is the end of the job. it cuts out a circular pocket 0.0225" deep, relative to the near,left,top corner of the work.
I don't believe that G21.1 is a valid GCode - you just need to issue G21 for inch mode, G20 for metric. G10 L1 isn't supported by GRBL (but maybe by GRBLHal in certain configurations). In any case, G10 L1 is for setting tool table offsets, *not* coordinate system offsets. G10 L2 would set coordinate system offsets. It is supported in GRBL, however I can't think of any reason you'd need to use it outside of some heavily automated workflow. The easiest way to set the WCS offsets is as per David's instructions above - just position the machine where you want the origin to be, with the relevant WCS selected*, and zero the relevant axes (machine homed first). Once set, the WCS origins are stored and will still be valid after the machine has been switched off, provided that the machine is homed after power on. *the WCS can be changed in Control from the drop-down in the top left of the coordinate display panel. Any WCS selection in your program (G54...G59) will override this.
Thank you for this clarification as it shows I still have a lot to learn as I hurry with eyes partially open along this path. Skipping some steps along this journey while trying to filter out the noise. Thanks. I really like the software and the forums. Ron
This is almost exactly what I need but only 4 posi But I need only positions on the pallet. I would like to keep using the Linux protocol for the P numbering.
You can, but you need to use G10 L2 Px [..... ] (Different dialects of Gcode have slightly different implementations) see LinuxCNC G10 L2 (Note that not all LinuxCNC options are implemented in GRBL / GRBLHal - you would need to check with the relevant documentation for each.)