DId you already try M503 and see if it contains the value. In wizards you add parsing responses for a few seconds with hit and fail function and then send the gcode that will return the value from printer. Once it is catched you extract value from answer and show wizard dialog with old value.
Isn't this already available in eeprom settings? In eeprom I see this rule:
I thought I might have to catch the response from M851, but I wasn't sure. And yes it's in the M503 and in the EEPROM Settings. I was hoping there might be an simpler way such as a {{config.probe_offset}}.
but if the Z value is -12.23, I would miss the last 3. Luckily the value should never be 2 digits before the decimal so I'm okay for now. But there seems to be an error in the Regular Expression processing. Or is it me?
I also tried
@monitorCall getOff 'M851 .*Z(\S*)' 5000 hitOff missOff which should give all characters up to the next white space character. But that also only retuns -1
Comments
In wizards you add parsing responses for a few seconds with hit and fail function and then send the gcode that will return the value from printer. Once it is catched you extract value from answer and show wizard dialog with old value.
Isn't this already available in eeprom settings? In eeprom I see this rule:
M851 returns
M851 X-40.00 Y-6.00 Z-1.39 ; (mm)
global.probeOffset then contains -1 instead of -1.39
The only way I can get the full value is to use
I also tried
which should give all characters up to the next white space character. But that also only retuns -1
@monitorCall getOff 'M851 .*Z(-?\\d*\\.?\\d*)' 5000 hitOff missOff
@monitorCall getOff 'M851 .*Z(\\S*)' 5000 hitOff missOff