I’ve been experimenting with Custom GCode in MillMage and found some runtime behavior that isn’t reflected in the current documentation.
-
{tool}and{tool_name}both expand correctly on the tool‑change line, even though onlytoolis listed in the Custom GCode variables table. -
Literal text around variables works fine (for example:
Tool{tool} {tool_name} RPM {spindlespeed} M6). Note: RPM gets truncated to RP in gcode, perhaps due to M in M6 conflict. -
{spindlespeed}and{speed}expand correctly in custom gcode configuration, but neither are output in on the M6/tool‑change line.
This suggests MillMage already supports a richer set of variables than the docs show, and that the M6 line may be treated slightly differently by the post‑processor.
Feature/cleanup requests:
-
Please update the Custom GCode docs to list all CNC‑relevant variables (including
{tool_name},{spindlespeed},{speed}, etc.) and clarify any restrictions on where they’re valid (especially on the M6 line). -
Consider standardizing a “TOOLCHANGE” comment format, for example:
; TOOLCHANGE T{tool} NAME="{tool_name}" RPM={spindlespeed}
placed immediately before or afterT{tool} M6.
This would allow sender UIs to reliably parse attributes such as tool name and RPM without affecting the actual motion commands. For example, presently in gSender, only the Tvalue is displayed. Including additional information would allow tool attributes to be displayed for tool identification and manually setting spindle RPM.
In the included images are my Tool Change configuration in Millmage and the M6 line in my gcode file. (T5 1/4 Spiral Upcut M6), speed excluded from output, but is displayed in Example:.
I’m happy to run more tests on different device profiles if that would help.

