CNC.js + Marlin (SKR Pro v1.2) macros or mod request

Hello,

I know there are other users that are using the SKR Pro board with the available firmware. I’d like to know what is being used for setting machine offsets?

When using CNC.js, the Axes widget as well as the probe widget apparently use hardcoded commands (G10 L20 etc etc). Is there a mod to change these commands for Marlin usage instead?

Alternatively, while I know that GRBL is better suited for CNC machines, there is not an available build for a LR3 to use grblHAL (yet. I have ideas but haven’t dove into it yet).

What am I missing other than “make macros on CNCjs for all of your commands you’ll use.”? If that is my only solution, do we have a predefined pack of macros for things like workspace offsets and touch probe actions?

Thanks in advance. It seems like using the SKR pro has given me so many more issues than just getting a jackpot or trying to repurpose the controller that came with my failed xCarve.

Insofar as I know, most people using the SKR Pro and Marlin do not use workspace coordinates, so setting up the offsets is commonly done using G92. G38.2 gets used to probe for Z, and G92 sets the offset.

I’m using RRF, for which there is a port for the SKR Pro. With that, I use G10 L20 for offsets, same as GRBL likes, and it works well for me, as I am using workspace coordinates, but for those really new to the field, it is a complication unnecessary to get good results. Ryan likes to keep the barriers to entry very low, so for most people this is just more complication and chance for things to go awry.

I use a bunch of macros on RRF for “set the current XY position as the origin.” I also have macros for probing, and some common operations. My work flow has me setting the machine up before the job starts, so I set the workspace home position up before running the Gcode job, always. Sometimes I will set up multiple sets of coordinates, so I can string the cuts together, but this seldom saves me much time over just re-using the same coordinate set.

Hm. So what i’m understanding is that I need to write a few macros for X, Y, and Z for using the touch probe, but instead of the G10 it’ll use G92 commands.

I’d love to just not use the workspace offsets, but usually making my toolpaths in F360 causes me to set the workspace origin at bottom left corner, top of the material. And using this board with Marlin instead of grbl was making setting that origin harder than I thought it needed to be.

Maybe making the macros isn’t as bad as trying to change part of the code in CNC.js and change the hardcoded values…

The easiest way for X and Y is just to use G92. Jog the machine to the lower left and issue G92 X0 Y0 and that becomes the work origin. It’s way easier to adjust the machine to the material than to place the material exactly, and you pretty much have to make an adjustment for Z regardless.

My “Work zero” macro basicslly just issues G10 L20 X0 Y0 to make whatever position the machine is in the current X0 Y0 position. It would work as well using G92 X0 Y0

Went and tested this today. I’ll have to make a macro tying in G92 into my XYZ touch plate, but rewriting the Z probe alone allowed it to accurately* locate the spoilboard for surfacing.

I may dislike it, but i’ll have to let it work until I can afford to swap to a different controller or another idea comes to me.

*(ish, seemed to be about 2 mil higher than intended)