zpl.tools
Media and sensors

~JS - Change Backfeed Sequence

Controls how much the media is pulled back, and whether that happens before or after printing.

The printer prints a label and feeds it out to be torn, cut or taken. It must then pull the media back so that the next label starts under the printhead. ~JS decides how that backfeed splits between the moment after one label and the moment before the next. It has two uses: it sets the rest position of a cut edge on continuous media, and it returns the media at once in a print-and-apply setup.

Note the prefix. ~JS sets the backfeed sequence, and ^JS selects the media sensor. The two commands are unrelated and share a mnemonic.

Syntax

~JSb

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.

Backfeed pulls the media back so the next label starts in the correct place under the printhead. This command moves media and does not change the image. It is not ^JS, which selects the media sensor. 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

bBackfeed sequenceoptional · one of a set

When the printer backfeeds and how far. A percentage between 10 and 90, in steps of 10, splits the backfeed between before and after the print.

Default
N
Invalid value
not documented, and we have not measured it. The renderer does not parse or measure this command. The guide states that the printer rounds a percentage that is not divisible by 10 to the nearest acceptable value, and takes ~JS55 as 50. It states nothing about a letter outside A, B, N and O.
Test coverage
No documented value is exercised by a test (A, B, N, O, 10-90).
A
100% backfeed after the print
B
100% backfeed before the print
N
Normal: 90% backfeed after the print (default)
O
Off: no backfeed
10-90
Any multiple of 10: that percentage of backfeed after the print

Behavior

The percentage form is a split, not an amount. A value of 40 puts 40 per cent of the backfeed after the printer cuts or removes the label. The remaining 60 per cent comes before the next label prints. The guide requires a multiple of 10 and rounds anything else to the nearest acceptable value, so ~JS55 becomes 50.

The setting is temporary. It lasts until a power-off, a new ~JS, or a change to the backfeed setting on the control panel. While it is in effect, it overrides that panel setting.

^MM decides whether ~JS has anything to do. Tear-off and peel-off always backfeed, so both respond to this command. Rewind mode never backfeeds, because the next label already sits at the print line. ^XB suppresses the feed-out and the backfeed for a single label.

No paper moves here. 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.

Example

All of the backfeed moved to before printing, ahead of the format:

~JSB
^XA
^FO50,50^A0N,40,40^FDBackfeed before print^FS
^XZ

Open in viewer