Navigation

X
You've just added this product to the cart:


Continue Shopping

MSI/Plessey

MSI/Plessey Specification

The MSI symbol consists of the following elements: a forward start code, four bars with intervening spaces for each encoded digit, one or two check digits, and a stop code.

MSI Code is a numeric, continuous code. Each character consists of four bits, using a straight binary encodation. Each bit is encoded in the following way: if the bit is a 1, the pattern to be used is a wide bar followed by a narrow space. If the bit is to be a 0, the pattern is a narrow bar followed by a wide space. The following table is the bit patterns:

Digit pattern

		0           0000

		1           0001

		2           0010

		3           0011

		4           0100

		5           0101

		6           0110

		7           0111

		8           1000








		9           1001
		

The start character is a single "1" bit. (wide bar/narrow space).
The stop character is a narrow bar/wide space/narrow bar.

Check digit calculation

The MSI code can include 1 or 2 check digits.
The check digits can be calculated either in Modulo 10 or Modulo 11.

Modulo 10 check digit calculation

		Step 1: Designate the least significant (right-most)

		digit position as even (E).

		5 7 6 3 5 7 9 0 1 2 5   <-- Message digits

		O E O E O E O E O E O   <-- Digit positions

		Step 2: Form a new number using the odd (O) position

		digits in sequence

		565915

		Step 3: Multiply the new number by 2

		565915 * 2 = 1131830

		Step 4: Sum all the digits of the result.

		1 + 1 + 3 + 1 + 8 + 3 + 0  = 17

		Step 5: Sum all the digits in the even positions

		and add the result to Step 4.

		7 + 3 + 7 + 0 + 2 = 19 + 17 = 36

		Step 6: Subtract the result from the next

		higher multiple of 10

		40 - 36 = 4;

		The Modulo 10 check digit is 4.
		

Modulo 11 check digit calculation

The modulo 11 check digit calculation uses weighting factors which repeat from right to left in the following sequence:
(2,3,4,5,6,7,2,3,4,5,6,7,2,3,4,5,6,7,...)

Step 1: Starting with the right-most digit, assign a weight

		to each digit position.

		5 7 6 3 5 7 9 0 1 2 5   <-- Message digits

		6 5 4 3 2 7 6 5 4 3 2   <-- weights

		Step 2: Calculate and sum the products of each weight

		and digit.

		(5*6)+(7*5)+(6*4)+(3*3)+(5*2)+(7*7)+

		(9*6)+(0*5)+(1*4)+(2*3)+(5*2) = 231

		Step 3: Subtract the result from the next higher

		multiple of 11

		231 - 231 = 0

		The Modulo 11 check digit is 0.