You are on page 1of 73

Encode the Mag Stripe

1
Copyright

2
The objectives of this lesson are shown here.

3
Magnetic Stripe write operations are performed while the card is moving from
the Card Entry Sensor towards the Card Exit Sensor. Read operations are
performed while the card is moving from the Card Exit Sensor towards the
Card Entry Sensor. The Card Entry and Card Exit sensors monitor the card
position. The Card Guide forces the card to the right side of the printer. This
ensures that the top of the card is in the correct position for encoding and
also for printing. There are two types of heads available, IAT and NTT.

4
During the Write and Read Operations the Cam Motor moves the Cam via a
belt. The Cam raises and lowers the TPH and also moves the Cam Slide which
in turn raises and lowers the Top Cleaning Roller, Mag Stripe Rocker Assembly,
and Backup Roller.

5
The Registration Drive roller moves the card which rotates the encoder and
generates clock pulses. These pulses are used for positioning the encoding on
the stripe.

6
Theory and Adjustments

7
When the card is picked it advances until the trailing edge clears the Card
Entry Sensor. Then in Step D, it reverses direction and the card moves towards
the Card Entry sensor. When the card covers the sensor, the cam motor lifts
the cleaning roller and the card continues moving towards the Input hopper.
When the card has moved approximately .75 inches the cleaning roller is
lowered. This raising and lowering is done to prevent stalls as the card enters
the cleaning roller. The card continues moving towards the Input Hopper until
the new trailing edge clears the Card Entry Sensor and then moves an
additional fixed distance. Next, the card reverses and moves toward the mag
stripe head.

8
The Mag Stripe Write Forward operation is described here. You may wish to
pause the presentation. If the printer has the optional multi-hopper, the only
difference is that the shuttle in the multi-hopper is positioned at the Handoff
position and the Handoff rollers turn at the same time, speed, and direction
as the Cleaning Rollers. This is because the card partially enters the shuttle
while preparing to write to the mag stripe.

9
The Read Backward operation is described here. You may wish to pause the
presentation. After the Read operation the card changes direction. If the Read
was good the Print process begins. If the Read was unsuccessful then the
entire process repeats. If the configured number of Attempts is reached, then
after the final attempt one additional Read is attempted while the card is
moving from the hopper towards the flipper.

10
The Mag Stripe Read Forward operation is described here. This operation only
occurs for the SSA Test or when the number of bad reads reaches the
configured number of Attempts. If the printer has the optional multi-hopper,
the only difference is that the shuttle in the multi-hopper is positioned at the
Handoff position and the Handoff rollers turn at the same time, speed, and
direction as the Cleaning Rollers. This is because the card partially enters the
shuttle while preparing to read the mag stripe.

11
Adjustments

12
Shown here are Mag Stripe General adjustments that can
be made. Use Printer Dashboard to make these
adjustments. They are located under Maintenance in the
Settings Menu, in the Mag Stripe General Submenu. Most
of these are similar to the legacy printers. Most of these
adjustments affect all three tracks. The exceptions are Data
Format, Read Track, SSA, and Write Track. These have
separate adjustments for each track. There are no
mechanical adjustments but Track Height should still be
checked. There are also Custom Track Adjustments.

13
This is the Mag Stripe General submenu.

14
Attempts defines the number of tries for both writing and reading the
magnetic stripe data before an error is declared.

15
This setting will switch the Coercivity from HiCo to LoCo or vice versa
when read or verify fails in order to attempt to properly encode the
magnetic stripe. This may double the number of retries and slow down
production. NTT settings are not affected by this setting. If the changed
setting results in successfully encoding and reading the mag stripe data,
then this new setting becomes the current setting. Failure causes the
setting to revert back to the original setting.

16
Coercivity defines the resistance of a ferromagnetic material to becoming
demagnetized. The higher the coercivity, the more resistant the magnetic
stripe is to being accidentally erased or corrupted. An Oersted is a unit of
measurement for defining the strength of a magnetic field. To create a
stronger field, more current is passed through the magnetic stripe head
during the write process. However, instead of Oersteds, we use the
amount of current to define the coercivity level.

17
Each physical track can be set to use a number of formats. The choices are
the same for all three tracks. This is track 1. The None setting disables the
track. No encoding will occur and previously encoded data is not erased.

18
Track 2 has the same settings.

19
The settings are available for Track 3 also.

20
This setting disables the mag stripe, on a track by track basis, when there
is no data for a particular track. Setting this to Disable will cause any
track without data to be erased, erasing any previously encoded
information.

21
This setting disables reading data from Track 1. This can be used to
prevent previously encoded data from being read.

22
This is the same setting for Track 2.

23
Track 3 also has the same setting.

24
The Start Sentinel adjustment for each track adds to or subtracts from the
value calculated by the SSA Test. Remember that the SSA test determines
the value of the StripeWriteFwdEntryOffsetMM. Changing the SSA value
for a track will not be seen if you look at the
StripeWriteFwdEntryOffsetMM. The value is applied by the firmware
during card processing. This is for the top track, Track 1.

25
This is for the middle track, Track 2.

26
This is for the bottom track, Track 3.

27
There is an adjustment that is automatically made when the SSA Test is
run. It is used to compensate for variations in the roller diameter that
drives the mag stripe encoder.

28
The card feed operation ends in position 1 with the card moving back
towards the hopper and then reversing direction. The Stripe Write
Forward Entry Offset MM is shown as position 2 in the diagram. This
offset defines the number of millimeters to move the card after the
leading edge covers the Card Entry sensor before the writing process
begins.

29
The Stripe Write Forward Up Offset MM is shown as position 3 in the
diagram. This offset defines the distance in millimeters after the card
leading edge covers the card entry sensor until the cleaning roller is lifted
off the card.

30
The Stripe Write Event Offset MM is shown as position 4 in the diagram.
This offset defines the number of millimeters to move the card during
the write magnetic stripe operation after the write operation has started.
When this distance has been reached the rollers are lowered. The card
continues until its leading edge covers the Card Exit sensor as in position
5 and then reverses direction.

31
The Stripe Read Backward Entry Offset MM is shown as position 1 in
the diagram. This offset defines the number of millimeters to move the
card after the trailing edges clears the Card Exit sensor when the card is
moving from the flipper towards the hopper. When this distance has
been reached the Read operation begins.

32
The Stripe Read Backward Up Offset is shown as position 2 in the
diagram. This offset defines the number of millimeters to move the card
after uncovering the card exit sensor before starting to raise the rollers.

33
The Stripe Read Event Offset MM is shown as position 3 in the diagram.
This offset defines the number of millimeters to move the card after the
start of the read operation.

34
When the card reached the Card Entry sensor as shown in position 4 in
the diagram, two offsets were triggered simultaneously. The Stripe Read
Backward Down Offset is shown as position 5 in the diagram. This offset
defines the number of millimeters to move the card after the card covers
the Card Entry sensor before starting to lower the rollers.

35
The card continues to move the Stripe Read Backward Overshoot Offset
as shown as position 6 in the diagram. This offset is a Developer
adjustment for stripe throughput. It defines how far past the input
sensor in millimeters to move the card when reading. After the card
moves this distance the Read operation ends.

36
If the Read was unsuccessful then the entire process repeats. If the
configured number of Attempts is reached, then after the final attempt
one additional Read is attempted while the card is moving from the
hopper towards the flipper. For this final attempt the card is positioned
to begin the Forward Read by using the exact same procedure as was
used to position the card to begin the Forward Write process. Then the
card moves the Stripe Read Forward Entry Offset MM as shown as
position 2 in the diagram. This offset defines the number of millimeters
to move the card after the leading edge covers the Card Entry sensor
before the reading process begins.

37
The Stripe Read Forward Up Offset MM is shown as position 3 in the
diagram. This offset defines the number of millimeters to move the card
after the leading edge covers the Card Entry sensor before the Cam
Motor is energized to raise the rollers.

38
The Stripe Read Event Offset MM is shown as position 4 in the diagram.
This offset defines the number of millimeters to move the card after the
start of the read operation. This is the same offset as used when reading
while moving backwards.

39
The Stripe Read Forward Down Offset MM is shown as position 5 in the
diagram. This offset defines the number of millimeters to move the card
after the leading edge covers the Card Entry sensor before the Cam
Motor is energized to lower the rollers. With the rollers lowered and the
card as shown in position 6, if the Read was bad it continues into the
flipper and then into the Reject Tray. If the Read was good then the card
reverses direction and moves towards the hopper. When it covers the
Card Entry sensor it reverses direction and begin the printing process,
unless this was a mag stripe only card. In that case it would be
transported into the output hopper.

40
This setting disables writing data to Track 1. This can be used to prevent
previously encoded data from being overwritten.

41
This is the same setting for Track 2.

42
Track 3 also has the same setting.

43
Enable this setting to verify mag stripe data after writing.

44
Engineering states that these settings should not be
adjusted.

45
Increasing this setting will move the Start Sentinel closer to the edge of
the Card. Do not adjust this setting.

46
This is the speed at which the card is moving during the write process.

47
This is the speed at which the card is moving during the read process.

48
These adjustments are used to create customized mag stripe
formats.

49
All of the MagStripeCustom Track adjustments are Admin Access Level
adjustments. Use Printer Dashboard to make these mag stripe related
adjustments. They are located in the Settings Menu in the MagStripe
Custom Track1 Submenu. There is an identical Submenu for each mag
stripe track. The track 1 submenu will be used to discuss the adjustments.

50
Some of the settings use ASCII decimal values. This is an example of a
standard ASCII chart. The ASCII columns are the decimal values. So, for
example, the ASCII decimal value of 65 represents the capital A letter.

51
The first adjustment is CustomCharHigh1. For all of these adjustments
the 1 on the end signifies that the adjustment is for Track 1, physically the
top track. There is a range of allowable characters that must be defined for
each track. The High Character represents one end of this range, the high
end. It is the highest ASCII value that can be used. Track 1 is normally
formatted as IATA. Therefore the default value shown here is the value
that is used for IATA. Looking at the ASCII chart, the decimal value of 95
represents the underscore. The values for ABA and TTS formatting are
also shown.

52
To continue setting the range of allowable characters, we need to define
the lowest ASCII value that can be used. This is done with the
CustomCharLow1 setting. For IATA formatting the value is 32 which
represents the space. Looking at the ASCII chart, you can see that the
range of values of 32 thru 95 defines all of the allowable characters for
the IATA format. By changing the Custom High and Low characters you
can define a different set of allowable characters and then this becomes a
custom format. It would no longer be IATA.

53
Another customization that can be done is to change the number of bits
that are used to define each character. The values used for the three
standard formats are shown here. IATA uses a 7 bit code which is made of
6 bits used to define the character plus one parity bit. You can see that this
setting determines the number of unique combinations of ones and zeroes
that are possible. This in turn determines the number of characters.

54
The CharCustomMask is used to convert the input data to the actual data
that is encoded on the mag stripe. The mask value is subtracted from the
input data ASCII value to determine the encode data. For example, if you
want to encode the number 5 in ABA format, take the ASCII value of the
5 symbol which is 53 and subtract the mask value for ABA which is 48.
So you would encode 5 in binary on the track. If you want to encode
capital A on the IATA track, you would subtract the IATA mask value of
32 from the ASCII value of 65 for capital A. You would encode 33 in
binary.

55
However, the high character for IATA is the Underscore which is a 95.
IATA only has the possibility of 64 unique characters which are 0 thru 63.
We cannot encode a binary 95, but if we use the mask the 95 becomes a
63. The low character is a Space which has a value of 32. Apply the mask
and the Space becomes a zero. Now we have unique values for all 64
characters used by IATA.

56
This setting simply determines how many characters you want to allow on
the track.

57
Adjusting the Density setting changes the bit to bit spacing of the
clocking pulses on the magnetic stripe.

58
The CustomStartSentinel setting determines which character will be used
to denote the beginning of the data for the track. IATA uses the percent
sign.

59
The next setting determines the character that is used as the End Sentinel.
The End Sentinel denotes the end of the data for the track. IATA uses the
question mark.

60
The CustomParity setting is used to determine whether or not a parity bit
will be used and if one is, whether is will be Odd or Even parity. This is
an example of Odd parity on the ABA track.

61
The CustomLRC setting is similar to the CustomParity. It is used to
determine whether or not a LRC Character will be used and if one is,
whether is will be Odd or Even parity. This is an example of an Even LRC
selection for the ABA track. Do not be confused by the Odd parity bit for
the LRC character. It must conform to the same parity as the other
characters.

62
The SDS format encodes multiple copies of the input data. The
CustomSdsNulls setting allows you to determine how many zeroes to
insert as separators between each set.

63
The number of copies of the input data that will be encoded is determined
by the CustomSdsRecords setting.

64
The CustomSdsSs defines the character used as the Start Sentinel for the
SDS track.

65
Use the Troubleshooting Menu in Printer Dashboard for
diagnosing problems.

66
In the Sensors submenu there are four sensors which might affect the
encoding of the mag stripe. The Card Entry and Card Exit sensors monitor
the position of the card. The Cam Home sensor monitors the position of
the Cam slide which raises and lowers the backup rollers. The Mag Stripe
Encoder can be used to verify that the encoder is working properly. Use
this test to ensure that the sensors change state when going from
covered to uncovered, and back again.

67
There is some variation in sensor names amongst the Printer Dashboard,
cable tags, and circuit board connectors. In each of the following lessons,
on this Troubleshooting – Sensors slide, I show these names.

68
Use the motor test to exercise the Transport and Cam stepper motors.
You may exercise them in both directions and at various speeds and
durations.

69
The SSA Test is not really a Test. When you run the SSA Test the printer
encodes the mag stripe and then reads back the mag stripe data. As it
does this it automatically adjusts the StripeWriteFwdEntryOffsetMM
setting until it thinks that the Start Sentinels are corrected positioned.
After running this test you should verify the results using MagnaSee and
a gauge.

70
At this time there is no test to read back data from a previously encoded
card.

71
Mag Stripe PM procedures require cleaning the mag stripe head. The
rubber rollers should also be inspected and cleaned. Finally, produce
several test cards and use MagnaSee and a gauge to check the track
height and start sentinel positions.

72
73

You might also like