^BQ — QR Code
Plain English
The square barcode you see everywhere — on menus, posters, and websites. QR codes encode URLs, text, contact info, or any data. The Zebra `^BQ` requires a **mode prefix in the `^FD` payload** — typically `LA,` (alphanumeric), `QA,` (mixed/automatic), or `LB,` (binary). Without a prefix, the printer firmware decides what to do — often producing a different (or invalid) barcode.
When to use
When end users will scan with a phone, when you need to encode a URL, or when data exceeds what fits in a 1D barcode. Always start `^FD` with a 2-letter mode prefix followed by a comma.
Syntax
^BQo,model,magnification,errorCorrection,maskValue
Parameters
| Parameter | Description |
|---|---|
o | Rotation: N, R, I, B |
model | 1 (original) or 2 (enhanced — recommended) |
magnification | Size multiplier: 1-10 (each unit adds dots per module) |
errorCorrection | H (high, 30%), Q (quartile, 25%), M (medium, 15% — default), L (low, 7%) |
maskValue | Mask pattern 0-7 (default 7 — the printer auto-picks). Rarely needs tuning. |
Example
^XA ^FO50,50^BQN,2,6,M,7^FDQA,https://rfid.me^FS ^XZ
`QA,` selects mixed/auto mode for the URL payload. Other prefixes: `LA,` (alphanumeric), `LB,` (binary), `LH,` (Kanji). Without a mode prefix, the firmware behaviour is undefined.