Accessing variables in macro

Basic Information:

Printer Model: home build
MCU / Printerboard: SKR2

Trying to understand how macros work. So I have made a small one to play with:

[gcode_macro mogul]
gcode:
  RESPOND MSG="homing status { printer.homed_axes }"
  {% if printer.homed_axes != 'XYZ' %}
    RESPOND MSG="Need homing"
	{% else %}		
    RESPOND MSG="No need for homing"
	{% endif %}
  • When I run it it responds Need homing. As expected.
  • Then I send a G28 and wait for it home the machine. Easy
  • But when I then run my mogul g-code macro again, it still responds `Need homing``

Ah yes, the homing status print blank every time too.

Like there is something fundamental I need to learn here.

Ahhh, found it. just read the documentation more careful. The correct object is:

printer.toolhead.homed_axes