ZPLToolkit

^BP

Plessey Bar CodePreview: partial

The ancestor of MSI: a numeric symbology from 1970s library and retail systems, kept in ZPL for the installations that still run them.

Syntax

^BPo,e,h,f,g

Parameters

ParameterDescription and accepted valuesIf omitted
oRotation of the bar code on the label.N normal, R 90°, I 180°, B 270°Last ^FW value, else N
eAdds the CRC check digit the symbology defines.Y or N — add a check digitN
hBar height in dots. Overrides the height set by ^BY for this field only.1 to 32000 dotsHeight set by ^BY
fPrints the data underneath the bars as text.Y or N — print the human-readable lineY
gMoves that text above the bars instead.Y or N — put that line above the barsN

How it works

^BP prints Plessey, developed by the Plessey Company for retail and library catalogues. It encodes digits and the letters A to F — it is a hexadecimal symbology underneath — four bits per character, each bit a pair of bars.

MSI (^BM) is a later refinement of the same idea and has largely replaced it. Plessey itself now appears mostly in library book spines and a few long-lived retail systems in the UK.

It is a wide symbology with weak error detection, and the optional check digit is a CRC rather than a modulus. There is no reason to choose it for new work.

Example

ZPL
^XA
^BY2,3,80
^FO60,60^BPN,N,80,Y,N^FD1234^FS
^XZ

Rendering…

A four-digit Plessey at a module width of 2 dots.
Open in the viewer

How the preview on this site handles it

Drawn with a real Plessey encoder, so it scans, and rotation is applied. The check digit from `e` is not added to the bars, and the wide-to-narrow ratio from ^BY is not applied — the preview always uses 3:1.

Common mistakes

  • Sending characters outside 0–9 and A–F. Plessey is hexadecimal; anything else will not encode.
  • Expecting strong error detection. A CRC catches transmission errors, not misreads — do not rely on Plessey for anything safety-critical.
  • Choosing it over MSI. If a legacy system does not specifically require Plessey, ^BM is the better-supported descendant.

See also