Magnetic stripe reader with card swipe information feedback
RE048167 ยท 2020-08-18
Assignee
Inventors
Cpc classification
International classification
Abstract
A magnetic card reader module includes a magnetic sensor and an adjacent groove, a .[.micro controller.]. .Iadd.microcontroller .Iaddend.and an application. The magnetic sensor is configured to pickup an analog magnetic signal generated by swiping a magnetic stripe through the groove. The magnetic stripe is attached to a card and comprises tracks with magnetically encoded data. The microcontroller is configured to convert the analog magnetic signal into a digital signal. The application is configured to analyze the digital signal, and to perform soft-decision decode of the digital signal and to generate an output comprising the magnetically encoded data and side information providing card swipe information feedback.
Claims
.[.1. A magnetic card reader module comprising: a magnetic sensor and an adjacent groove, wherein the magnetic sensor picks up an analog magnetic signal generated by swiping a magnetic stripe through the groove, and wherein the magnetic stripe is attached to a card and comprises tracks with magnetically encoded data; a microcontroller to convert the analog magnetic signal into a digital signal; and an application to analyze the digital signal, decode the digital signal, and generate an output comprising the magnetically encoded data and card swipe information feedback..].
2. A method for reading data encoded in a magnetic stripe comprising: providing a magnetic card reader comprising a magnetic sensor and an adjacent groove.[.,.]..Iadd.; .Iaddend. picking up, by the magnetic sensor, an analog magnetic signal generated by swiping a magnetic stripe through the groove, wherein the magnetic stripe is attached to a card and comprises tracks with magnetically encoded data; converting, using a microcontroller, the analog magnetic signal into a digital signal; analyzing, using the microcontroller, the digital signal; decoding, using the microcontroller, the digital signal; and generating, using the microcontroller, an output comprising the magnetically encoded data and card swipe information feedback.
3. A method for reading data encoded in a magnetic stripe comprising: providing a magnetic card reader comprising a magnetic sensor and an adjacent groove.[.,.]..Iadd.; .Iaddend. picking up, by the magnetic sensor, an analog magnetic signal generated by swiping a magnetic stripe through the groove, wherein the magnetic stripe is attached to a card and comprises tracks with magnetically encoded data; converting, using a microcontroller, the analog magnetic signal into a digital signal; analyzing, using an application, the digital signal; decoding, using the application, the digital signal; and generating, using the application, an output comprising the magnetically encoded data and card swipe information feedback.
.Iadd.4. A magnetic card reader module, comprising: a magnetic sensor and an adjacent groove, the magnetic sensor interfaceable with a card having a magnetic stripe attached thereto, the magnetic stripe including the tracks with magnetically encoded data, wherein the magnetic sensor picks up an analog magnetic signal generated by swiping a magnetic stripe through the groove; an analog-to-digital converter (ADC) to convert the analog magnetic signal into a digital signal, wherein the digital signal comprises: a plurality of edges, and a plurality of spacings between the plurality of edges; and a microcontroller to: analyze the digital signal, decode the digital signal, wherein the decoding comprises a soft-decision decode of the digital signal, and generate an output comprising the magnetically encoded data and card swipe information feedback, wherein the card swipe information feedback is based on one or more of the plurality of spacings. .Iaddend.
.Iadd.5. The module of claim 4, further comprising an amplifier and a rectification circuit and wherein the analog magnetic signal is amplified by the amplifier and rectified by the rectification circuit. .Iaddend.
.Iadd.6. The module of claim 5, wherein the one or more of the plurality of spacings comprise at least one spacing between at least one of a pair of rising edges or a pair of falling edges corresponding to two consecutive rectified pulses, wherein the microcontroller comprises an application, wherein the application comprises an edge detection decoding algorithm to determine the at least one spacing, and wherein one or more soft decision parameters are based on the determined at least one spacing. .Iaddend.
.Iadd.7. The module of claim 6, wherein the determined at least one spacing is used to determine a speed of the swiping of the magnetic card. .Iaddend.
.Iadd.8. The module of claim 7, wherein the determining of the speed of the swiping is based on a comparison of heights of the two consecutive rectified pulses to the determined at least one spacing. .Iaddend.
.Iadd.9. The method of claim 2, wherein the digital signal comprises: a plurality of edges; and a plurality of spacings between the plurality of edges, wherein the decoding is based on a soft-decision, and wherein the card swipe information feedback is based on one or more of the plurality of spacings. .Iaddend.
.Iadd.10. The method of claim 9, further comprising: determining, by the microcontroller, a speed of the magnetic stripe swiping; and providing, by the microcontroller, magnetic stripe swipe diagnostic information. .Iaddend.
.Iadd.11. The method of claim 2, further comprising amplifying the analog magnetic signal by an amplifier, and wherein the converting is performed using an analog-to-digital converter (ADC). .Iaddend.
.Iadd.12. The method of claim 11, wherein the decoding is based on a soft-decision, and the decoding comprises: determining positions of peaks in the digital signal; and determining one or more spacings between consecutive peaks, wherein one or more soft decision parameters are based on the determined one or more spacings. .Iaddend.
.Iadd.13. The method of claim 12, further comprising: determining, by the microcontroller, a speed of the magnetic stripe swiping; and providing, by the microcontroller, magnetic stripe swipe diagnostic information. .Iaddend.
.Iadd.14. The method of claim 13, wherein the magnetic stripe swipe diagnostic information comprises a graphical plot of the speed of magnetic stripe swiping versus time. .Iaddend.
.Iadd.15. The method of claim 3, wherein the digital signal comprises: a plurality of edges; and a plurality of spacings between the plurality of edges, wherein the decoding is a soft-decision decoding, and wherein the card swipe information feedback is based on one or more of the plurality of spacings. .Iaddend.
.Iadd.16. The method of claim 15, wherein the output comprises side information. .Iaddend.
.Iadd.17. The method of claim 16, further comprising providing at least some portion of the side information to a user of the magnetic card reader. .Iaddend.
.Iadd.18. The method of claim 15, wherein the magnetically encoded data comprises an error detecting code. .Iaddend.
.Iadd.19. The method of claim 18, wherein the error detecting code comprises a parity bit for each encoded character. .Iaddend.
.Iadd.20. The module of claim 4, wherein the ADC is an external circuit. .Iaddend.
.Iadd.21. The module of claim 4, wherein the ADC is part of the microcontroller. .Iaddend.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
DETAILED DESCRIPTION
(10) As was mentioned above, in some cases, the magnetic card reader may be unable to read a magnetic card swipe successfully. There are many possible causes for this effect including, card swipe speed and uniformity, card alignment, degradation of the magnetically encoded data, and magnetic read head failure, among others.
(11) In particular, the way and speed the card is swiped affects the success rate of a magnetic stripe read. A swipe that is too fast, too slow, or a swipe with a non-uniform speed or otherwise not smooth, usually causes a failed card read. Another possible cause is the degradation of the magnetically encoded data. Weak signal, data error, or a damaged track may make a data track unreadable. Another possible cause, of course, is the failure of the magnetic reader itself. A misalignment between the magnetic stripe and the magnetic reader is also a possible factor. This can be due to problems with the magnetic card, the magnetic reader or the swipe.
(12) In most magnetic card reader modules, the track data output is a hard decode of the analog magnetic signal that is picked up by the magnetic read head. A hard decode or a hard decision or a hard-decision decoder refers to a decoding mechanism or a decoder that operates on data that take on a fixed set of possible values, i.e., 0 or 1 in a binary code. After the hard decision, any information about the magnetic card read is lost.
(13) The raw magnetic signal, however, contains much more information that may be helpful in determining the cause of a failed magnetic read.
(14) When a magnetic card read fails, the user usually has to retry the card swipe. However, without any error feedback, the user has no way of knowing why the previous swipe failed and how to correct it. Therefore, a magnetic card reader with feedback information will be very useful in improving the success rate of a magnetic card read after a card read failure. The card swipe information feedback would allow the user to adjust the card swipe speed or the way the card swipe is performed, to identify the possible causes of the failure or reduce the number of retries if the user knows that the card data are corrupted.
(15) The present invention provides a new magnetic card reader module that provides card swipe information feedback, that is based on a soft decode mechanism or a soft-decision decoder. A soft decode, or soft decision or soft-decision decoder refers to a class of algorithms used to decode data that have been encoded with an error correcting code. In addition to the hard-decision data of a fixed set of possible values (i.e., 0 or 1 of a binary code), the inputs to a soft-decision decoder may take on a whole range of in-between values. This extra information indicates the reliability of each input data point, and is used to provide better values of the original data. Therefore, a soft-decision decoder typically performs better in the presence of corrupted data than the hard-decision decoder.
(16) Referring to
(17) Referring to
(18) Binary track data are encoded on magnetic cards using a frequency/double frequency (F2F) encoding scheme where bit 1 and bit 0 are represented by encoded signals with different spacing. When a magnetic stripe is swiped through a groove of magnetic card reader, the generated magnetic flux is picked up by the magnetic read head and the encoded track data are retrieved from the magnetic stripe.
(19) The present invention utilizes two different ways of decoding the input magnetic signal 211 signal with magnetic read head modules 220, 230, shown in
(20) Alternatively, instead of rectification, the amplified signal is sampled and converted to a digital signal through an analog-to-digital convertor (ADC) circuit. Referring to
(21) In the present invention, card swipe information about the error cause is output as side information. In the edge detected soft decision data, the spacing between the edges is used to indicate the speed of the swipe. Widely spaced pulses indicate a fast swipe, whereas, closely spaced pulses indicate a slow swipe. In the AD converted soft decision data, the spacing between the peaks and the height of the peaks are used to indicate the speed of the swipe. A widely spaced signal indicates a fast swipe, whereas, a closely spaced signal indicates a slow swipe. A high peak also indicates a fast swipe, whereas, a low peak indicates a slow swipe. Side information about the speed of the swipe is fed back to the user of the card reader who can then improve the speed of further card read retries.
(22) In one implementation, a graphical plot 250 of the speed profile of the card swipe is generated by the application and is displayed graphically, as shown in
(23) Furthermore, by analyzing the soft decision data, the position of the parity error bits is determined. The microcontroller outputs the error position which can then help the operator to pin-point the problem of a probably badly encoded or damaged card. A common problem is that the card is bent or angled at a bad position near the end of a swipe because the operator changes the pathway of the card too early. If the soft decision data contain many errors after a certain point, it strongly indicates that there is an operation error.