if state.status == "off"
M81
elif state.status == "busy" ; state can't be idle because controller is busy running this macro
M400 ; wait for all movement to stop
if heat.heaters[1].current < fans[1].thermostatic.lowTemperature ; check for all tool based thermostatic fans to be off
M80
else
M291 R"Prohibited" P"PSU toggle is only allowed in standby or idle state! Wait for cooldown of hotend."
else
M291 R"Prohibited" P"PSU toggle is only allowed in standby or idle state!"
This means that when your X endstop is triggered your nozzle is actually at 20mm inside of the bed surface? Is that correct? Or do you mean it's 20mm outside of the bed surface?
I have tested an example similar to yours using the 3.3RC1+2 files in standalone mode. If you still can't get it working in SBC mode using these files then I will ask @chrishamm to take a look.
I guess it's solved by now since I didn't know that it will get solved basically by making "PID autotune" since as I was used to Marlin there it is a bit different.
@t3p3tony
can I also send variables with M118 or 'strings-only'?
Just a sidenote: I read about SD-card stuff yesterday and I thought 'all' relevant M-codes are M20-M32.
Now I see M929 is also related to SD-card, but there was no_word about it in the other M-codes. (playing hide and seek?)
OTOH, there are M33-M35 currently not used by RRF. Why not put the M929 function there?
In the meantime I tested the macros a bit more and had to adjust the math. Now every tool has it's own ooze-countdown. ooze_compensation.txt
It also looks like, there's no math allowed in 'echo {expression}'?
Also I have to add a local variable and calculate things before using the result in 'G1 E{expression}'