Shop OBEX P1 Docs P2 Docs Learn Events
Magstripe interface - multiple serial datastreams — Parallax Forums

Magstripe interface - multiple serial datastreams

ArchiverArchiver Posts: 46,084
edited 2002-05-17 06:15 in General Discussion
Hello everyone,

I'm trying to interface with a magnetic card reader that would require me to
read
three seperate inputs at the same time. I'm fairly new with the stamp, and I'm
learning on a Stamp 2sx.

There are seperate clock and data lines for tracks 1 2 and 3 for a total of six
lines. They are clocked seperately because there are different data densities on

each stripe, and the data rate is dependent on the rate at which the user is
inserting or withdrawing the card.

I know it is trivial to read the data from one particular stripe (data/clock
pair) at a
time with SHIFTIN, but the problem is the data is coming from three sources at
once at different clock rates. Am I up a creek without a paddle? Is there some
trivially easy way to do this short of having the user swipe the card three
times?

Thanks in advance for any help,

John Laur

Comments

  • ArchiverArchiver Posts: 46,084
    edited 2002-05-16 22:42
    Not knowing how much data is on each line, I would use a shift
    register for each line they would fill up and you would shift
    them back out to your sx one at a time.



    Original Message
    From: "gorkish" <gorkish@h...>
    To: <basicstamps@yahoogroups.com>
    Sent: May 16, 2002 12:07 PM
    Subject: [noparse][[/noparse]basicstamps] Magstripe interface - multiple serial
    datastreams


    Hello everyone,

    I'm trying to interface with a magnetic card reader that would
    require me to read
    three seperate inputs at the same time. I'm fairly new with the
    stamp, and I'm
    learning on a Stamp 2sx.

    There are seperate clock and data lines for tracks 1 2 and 3 for
    a total of six
    lines. They are clocked seperately because there are different
    data densities on
    each stripe, and the data rate is dependent on the rate at which
    the user is
    inserting or withdrawing the card.

    I know it is trivial to read the data from one particular stripe
    (data/clock pair) at a
    time with SHIFTIN, but the problem is the data is coming from
    three sources at
    once at different clock rates. Am I up a creek without a paddle?
    Is there some
    trivially easy way to do this short of having the user swipe the
    card three times?

    Thanks in advance for any help,

    John Laur


    To UNSUBSCRIBE, just send mail to:
    basicstamps-unsubscribe@yahoogroups.com
    from the same email address that you subscribed. Text in the
    Subject and Body of the message will be ignored.


    Your use of Yahoo! Groups is subject to
    http://docs.yahoo.com/info/terms/
  • ArchiverArchiver Posts: 46,084
    edited 2002-05-17 06:15
    Thanks, Larry for the suggestion.

    ISO7811 standard provides the following:

    Track 1: 210 bits/in for 79 6 bit read-only characters
    Track 2: 75 bits/in for 40 4 bit characters
    Track 3: 210 bits/in for 107 4 bit characters

    Inhumanly fast (50 in/s) swiping should yield a data rate of no more
    than 10,000bps or so: the problem is that the stamp hasn't the
    interrupts,
    though I think the 2sx may be fast enough to simply "poll" the clock
    lines in
    a tight loop while stacking the bits up in some variables. Is this
    totally
    infeasable? Programming a pic to cache the read and spit it out
    serially when
    complete probably wouldn't be that hard, but I don't have the
    equipment...

    Can you elaborate a little more on the shift register solution -
    perhaps you have
    seen a project using something like this? I am still pretty green
    when it comes
    to microcontrollers.

    John

    --- In basicstamps@y..., "Larry Gaminde" <lgaminde@t...> wrote:
    > Not knowing how much data is on each line, I would use a shift
    > register for each line they would fill up and you would shift
    > them back out to your sx one at a time.
    >
    >
    Original Message
    > From: "gorkish" <gorkish@h...>
    > To: <basicstamps@y...>
    > Sent: May 16, 2002 12:07 PM
    > Subject: [noparse][[/noparse]basicstamps] Magstripe interface - multiple serial
    > datastreams
    >
    >
    > Hello everyone,
    >
    > I'm trying to interface with a magnetic card reader that would
    > require me to read
    > three seperate inputs at the same time. I'm fairly new with the
    > stamp, and I'm
    > learning on a Stamp 2sx.
    >
    > There are seperate clock and data lines for tracks 1 2 and 3 for
    > a total of six
    > lines. They are clocked seperately because there are different
    > data densities on
    > each stripe, and the data rate is dependent on the rate at which
    > the user is
    > inserting or withdrawing the card.
    >
    > I know it is trivial to read the data from one particular stripe
    > (data/clock pair) at a
    > time with SHIFTIN, but the problem is the data is coming from
    > three sources at
    > once at different clock rates. Am I up a creek without a paddle?
    > Is there some
    > trivially easy way to do this short of having the user swipe the
    > card three times?
    >
    > Thanks in advance for any help,
    >
    > John Laur
    >
    >
    > To UNSUBSCRIBE, just send mail to:
    > basicstamps-unsubscribe@y...
    > from the same email address that you subscribed. Text in the
    > Subject and Body of the message will be ignored.
    >
    >
    > Your use of Yahoo! Groups is subject to
    > http://docs.yahoo.com/info/terms/
Sign In or Register to comment.