^RT — RFID Read Tag
Plain English
Reads bytes from an RFID tag memory bank and **routes the result to one of two destinations**: (1) **into a numbered field on the same label** — the read value is captured into field number `f`, and any later `^FN<f>^FS` placeholder in the format substitutes that read value into a printable field (so the printed label can show what was just read); (2) **back to the host** over the serial / network connection — used by host-driven verification flows that need to log encoded values, build serial→tag mappings, or fail jobs on mismatch. The destination depends on the printer's host-status mode and whether the format contains a matching `^FN<f>` reference. Comparable to `^RFR,…` (the read variant of `^RF`) but `^RT` predates the consolidated `^RF` syntax and remains common in legacy templates.
When to use
For **read-back-after-write verification labels** (write a serial via `^RF`, then `^RT` it back into a `^FN` placeholder so the printed barcode shows the actual encoded value — proves the encode succeeded). Also for **read-only audits** (tag-survey workflows pulling EPCs out of an inbound roll, host-driven inventory). Always preceded by `^RS` (RFID Setup — see #83) so the encoder protocol matches the inlay. Cross-reference `^FN`/`^FD` for placeholder substitution and `^RF` for the modern read/write command.
Syntax
^RTf,b,n,r,m,p
Parameters
| Parameter | Description |
|---|---|
f | Field number (1–9999) that receives the read value; pair with `^FN<f>^FS` later in the format to print it |
b | Starting byte offset within the chosen memory bank (default 0) |
n | Number of bytes to read; for hex format the field receives `2 × n` characters |
r | Per-read retry count before declaring a failure |
m | Memory bank — letter form: `E` EPC, `T` TID (read-only chip serial), `U` USER, `R` RESERVED |
p | Password offset within the RESERVED bank, when accessing protected banks (default 0) |
Example
^XA ^RS8 ^RT1,0,8,3,E,0 ^FO50,50^FN1^FS ^XZ
After `^RS8` (Gen2 setup), read 8 bytes from the EPC bank starting at offset 0 (`m=E`, `b=0`, `n=8`), with 3 retries on failure. The value lands in field 1; the `^FN1^FS` placeholder later in the format prints those 8 bytes (16 hex characters) on the label as a verification text — operator can scan-compare the printed value against what the optical barcode encodes.