zpl.tools
Printer configuration

^MA - Set Maintenance Alerts

Schedules the maintenance alert labels the printer prints itself as the printhead wears.

^MA is the one command in this category that makes a printer print of its own accord. With b set to Y it prints a maintenance alert label after the printhead travels a set distance. ^MI supplies the wording, ^MA the schedule.

Syntax

^MAa,b,c,d,e

Support

Recognised, deliberately skippedparsed: none · state: none · rendered: none

Accepted and skipped, because it configures the printer rather than the label. It cannot change the rendered output, and Labelary skips it too.

A printer does print extra labels, but accumulated print distance in its odometer triggers them, never the format. A render has no odometer, so no alert label comes due and the page count does not change. The renderer does not parse this command. It reports IGNORED_COMMAND at info severity, which does not reach X-Warnings. Labelary is also silent, so the rendered label is identical in both engines. — not pinned by a test

Labelary renders this command.

Parameters

aAlert typerequired · one of a set

Which maintenance alert this command configures. The remaining arguments depend on this type.

Invalid value
not documented, and we have not measured it. The renderer does not parse or measure this command. ^MA is absent from the 2006 guide, and Labelary's reference states no default.
Test coverage
No documented value is exercised by a test (R, C).
R
Printhead replacement alerts
C
Printhead cleaning alerts
bPrint alert labelsoptional · Y or N

Whether the printer prints an alert label at the threshold.

Default
N
Invalid value
not documented, and we have not measured it. The renderer does not parse or measure this command.
Test coverage
No documented value is exercised by a test (Y, N).
Y
Print alert labels
N
Do not print alert labels (default)
cFirst alert distanceoptional · integer

Print distance after which the first alert label is due. Kilometers for type R, meters for type C.

Default
50 km for type R, 0 m for type C
Accepted range
0 to 2000
Invalid value
not documented, and we have not measured it. The renderer does not parse or measure this command. The accepted range depends on the alert type: 0 to 150 for R, 0 to 2,000 for C.
Test coverage
No test at the minimum, maximum or one step outside the range.
dRepeat distanceoptional · integer

Print distance after which the printer prints the alert label again, in meters.

Default
0
Accepted range
0 to 2000 m
Invalid value
not documented, and we have not measured it. The renderer does not parse or measure this command.
Test coverage
No test at the minimum, maximum or one step outside the range.
eUnitsoptional · one of a set

Units used in the maintenance figures the printer reports.

Default
I
Invalid value
not documented, and we have not measured it. The renderer does not parse or measure this command.
Test coverage
No documented value is exercised by a test (C, I, M).
C
Centimeters
I
Inches (default)
M
Meters

Behavior

The printer measures the schedule against its odometer, not against the job that configures it. The two alert types use different units: kilometers for printhead replacement (R), meters for the printhead clean (C). The start argument's accepted range therefore depends on the type: 0 to 150 for R, 0 to 2,000 for C. Argument e changes only the units the printer reports, not the units of the limits.

The trigger is accumulated wear and a render has no history, so no alert comes due and the page count does not change. ^MA is absent from the 2006 edition of the ZPL II guide; the ranges follow Labelary's reference.

Example

Printhead replacement alerts, first at 100 km and then every 500 m, reported in inches:

^XA
^MAR,Y,100,500,I
^FO50,50^A0N,30,30^FDAlerts scheduled^FS
^XZ

Open in viewer