Abstract:
A card exhibiting multiple linear arrays of sensors are provided to detect a presence and movement of an external object (e.g., a read-head of a magnetic stripe reader). Each sensor of each array of sensors may be independently connected to a dual port of a processor so that the processor may determine a direction in which the card is swiped through a magnetic stripe reader. A portion of sensors of each array of sensors may be shared by a portion of inputs and/or outputs of a single port of a processor. Sensors may be cross-coupled to a single processor port so that forward and reverse directions of a card swipe may nevertheless be detected by a single-port processor of a card.

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
     This application is a continuation of U.S. patent application Ser. No. 13/478,995, titled “SYSTEMS AND METHODS FOR SENSOR MECHANISMS FOR MAGNETIC CARDS AND DEVICES,” filed on May 23, 2012, which claims the benefit of U.S. Provisional Patent Application No. 61/489,190, titled “SYSTEMS AND METHODS FOR SENSOR MECHANISMS FOR MAGNETIC CARDS AND DEVICES,” filed May 23, 2011, each of which is hereby incorporated by reference herein in its entirety. 
    
    
     BACKGROUND OF THE INVENTION 
     This invention relates to magnetic cards and devices and related systems. 
     SUMMARY OF THE INVENTION 
     A card may include a dynamic magnetic stripe communications device, which may take the form of a magnetic encoder or a magnetic emulator. A magnetic encoder, for example, may be utilized to modify information that is located on a magnetic medium, such that a magnetic stripe reader may then be utilized to read the modified magnetic information from the magnetic medium. A magnetic emulator, for example, may be provided to generate electromagnetic fields that directly communicate data to a read head of a magnetic stripe reader. A magnetic emulator, for example, may communicate data serially to a read-head of the magnetic stripe reader. A magnetic emulator, for example, may communicate data in parallel to a read-head of the magnetic stripe reader. 
     All, or substantially all, of the front surface, as well as the rear surface, of a card may be implemented as a display (e.g., bi-stable, non bi-stable, LCD, or electrochromic display). Electrodes of a display may be coupled to one or more touch sensors, such that a display may be sensitive to touch (e.g., using a finger or a pointing device) and may be further sensitive to a location of the touch. The display may be sensitive, for example, to objects that come within a proximity of the display without actually touching the display. 
     A dynamic magnetic stripe communications device may be implemented on a multiple layer board (e.g., a two layer flexible printed circuit board). A coil for each track of information that is to be communicated by the dynamic magnetic stripe communications device may then be provided by including wire segments on each layer and interconnecting the wire segments through layer interconnections to create a coil. For example, a dynamic magnetic stripe communications device may include two coils such that two tracks of information may be communicated to two different read-heads included in a read-head housing of a magnetic stripe reader. A dynamic magnetic communications device may include, for example, three coils such that three tracks of information may be communicated to three different read-heads included in a read-head housing of a magnetic stripe reader. 
     One or more arrays of sensors may be provided, for example, to sense the presence of an external object, such as a person or device; which in turn, may trigger the initiation of a communication sequence with the external object. The sensed presence of the external object may then be communicated to a processor of a card, which in turn may direct the exchange of information between a processor of a card and the external object. Accordingly, timing aspects of the information exchange between a processor of a card and the various I/O devices implemented on a card may also be determined by a processor of the card. 
     The sensed presence of the external object or device may include the type of object or device that is sensed and, therefore, may then determine the type of communication that is to be used with the sensed object or device. For example, a sensed object may include a determination that the object is a read-head of a magnetic stripe reader. Such a sensed identification, for example, may activate a dynamic magnetic stripe communications device so that information may be communicated electromagnetically to the read-head of the magnetic stripe reader. 
     A sensor array may be utilized in a variety of ways. Signals from a sensor array may, for example, cause a processor of a card to perform a particular function such as, for example, communicate bits of information in a forward or a reverse order to a read-head of a magnetic stripe reader. Accordingly, for example, a processor may detect that a card is being swiped in a forward direction based upon signals from two or more activated sensors and may, for example, electromagnetically communicate data bits in a direction (e.g., a forward direction) that is compatible with the sensed swipe direction. A processor may, for example, detect that a card is being swiped in a reverse direction based upon signals from two or more sensors and may, for example, electromagnetically communicate data bits in a direction (e.g., a reverse direction) that is compatible with the sensed swipe direction. A processor may, for example, detect a read-head position relative to a particular region on a card based upon signals from one or more activated sensors and may vary a communication rate at which data bits may be electromagnetically communicated based upon the detected read-head position. 
     A processor of a card may, for example, include a multiple input and/or output port (e.g., a dual input and/or output port) configuration. Accordingly, for example, each sensor of a card may be coupled to an individual pin of a respective port of a processor so that activations of two or more sensors in a particular sequence may allow a processor to determine a direction that a card is being swiped through a magnetic stripe reader. 
     A processor of a card may, for example, include a port configuration (e.g., a dual input and/or output port configuration) having a number of pins that does not match a number of sensors provided on a card. Accordingly, for example, a portion of the sensors may be individually coupled to a pin of one port of a processor, another portion of the sensors may be individually coupled to a pin of another port of a processor and yet another portion of the sensors may share pins between both ports of the processor. 
     A processor of a card may, for example, include a single port configuration having a number of pins that does not match a number of sensors provided on a card. Accordingly, for example, two or more sensors (e.g., multiple pairs of sensors) may share pins of a port of a processor. Appropriate sharing of a pair of sensors to a particular pin of a port of a processor may, for example, allow a processor to determine a direction of a swipe of a card based upon an order that a sequence of sensors are activated. 
     Sensors may be arranged, for example, in a linear fashion along a length of a card. Accordingly, for example, a processor may receive activations of several sensors in sequence according to a direction of a card swipe. In addition, a processor may determine which sensors are activated and based upon which sensors are activated, the processor may determine a position of a read-head of a magnetic stripe reader in relation to the card. In so doing, for example, a processor of a card may vary a rate that information bits are communicated to a read-head of a magnetic stripe reader based upon the sensed position of the read-head in relation to the card. A slow communication rate may, for example, be selected by a processor if a read-head position is sensed early during a card swipe event (e.g., a read-head is sensed relative to a leading edge of the card). An increased communication rate may, for example, be selected by a processor if a read-head position is sensed later during a card swipe event (e.g., a read-head is sensed between a leading edge of a card and an inner portion of the card). A maximum communication rate may, for example, be selected by a processor if a read-head position is sensed late during a card swipe event (e.g., a read-head is sensed at an inner portion of the card). 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The principles and advantages of the present invention can be more clearly understood from the following detailed description considered in conjunction with the following drawings, in which the same reference numerals denote the same structural elements throughout, and in which: 
         FIG. 1  is an illustration of cards constructed in accordance with the principles of the present invention; 
         FIG. 2  is an illustration of circuitry, and associated waveforms, constructed in accordance with the principles of the present invention; 
         FIG. 3  is an illustration of a card constructed in accordance with the principles of the present invention; 
         FIG. 4  is an illustration of a card constructed in accordance with the principles of the present invention; 
         FIG. 5  is an illustration of a card constructed in accordance with the principles of the present invention; 
         FIG. 6  is an illustration of a card constructed in accordance with the principles of the present invention; 
         FIG. 7  is an illustration of a card constructed in accordance with the principles of the present invention; 
         FIG. 8  is an illustration of a card constructed in accordance with the principles of the present invention; and 
         FIG. 9  is an illustration of a process flow chart constructed in accordance with the principles of the present invention. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       FIG. 1  shows card  100  that may include, for example, a dynamic number that may be entirely, or partially, displayed using a display (e.g., display  106 ). A dynamic number may include a permanent portion such as, for example, permanent portion  104  and a dynamic portion such as, for example, dynamic portion  106 . Card  100  may include a dynamic number having permanent portion  104  and permanent portion  104  may be incorporated on card  100  so as to be visible to an observer of card  100 . For example, labeling techniques, such as printing, embossing, laser etching, etc., may be utilized to visibly implement permanent portion  104 . 
     Card  100  may include a second dynamic number that may also be entirely, or partially, displayed via a second display, e.g., display  108 . Display  108  may be utilized, for example, to display a dynamic code such as a dynamic security code. Card  100  may also include third display  122  that may be used to display graphical information, such as logos and barcodes. Third display  122  may also be utilized to display multiple rows and/or columns of textual and/or graphical information. 
     Persons skilled in the art will appreciate that any one or more of displays  106 ,  108 , and/or  122  may be implemented as a bi-stable display. For example, information provided on displays  106 ,  108 , and/or  122  may be stable in at least two different states (e.g., a powered-on state and a powered-off state). Any one or more of displays  106 ,  108 , and/or  122  may be implemented as a non-bi-stable display. For example, the display is stable in response to operational power that is applied to the non-bi-stable display. Other display types, such as LCD or electrochromic, may be provided as well. 
     Other permanent information, such as permanent information  120 , may be included within card  100 , which may include user specific information, such as the cardholder&#39;s name or username. Permanent information  120  may, for example, include information that is specific to card  100  (e.g., a card issue date and/or a card expiration date). Information  120  may represent, for example, information that includes information that is both specific to the cardholder, as well as information that is specific to card  100 . 
     Card  100  may accept user input data via any one or more data input devices, such as buttons  110 - 118 . Buttons  110 - 118  may be included to accept data entry through mechanical distortion, contact, or proximity. Buttons  110 - 118  may be responsive to, for example, induced changes and/or deviations in light intensity, pressure magnitude, or electric and/or magnetic field strength. Such information exchange may then be determined and processed by card  100  as data input. 
     Card  100  may include sensor array  124 . Sensor array  124  may, for example, be a number of sensors (e.g., 16 sensors) arranged along a length of card  100  to sense contact with, or proximity to, an object (e.g., a read-head of a magnetic stripe reader). Sensor array  124  may, for example, be arranged as a number of conductive pads (e.g., copper islands on a surface of a printed circuit board). Sensor array  124  may, for example, exhibit a characteristic change (e.g., a change in capacitance) when an object contacts, or comes within a proximity to, sensor array  124 . 
       FIG. 1  shows architecture  150 , which may include one or more processors  154 . One or more processors  154  may be configured to utilize external memory  152 , memory internal to processor  154 , or a combination of external memory  152  and internal memory for dynamically storing information, such as executable machine language, related dynamic machine data, and user input data values. 
     One or more of the components shown in architecture  150  may be configured to transmit information to processor  154  and/or may be configured to receive information as transmitted by processor  154 . For example, one or more displays  156  may be coupled to receive data from processor  154 . The data received from processor  154  may include, for example, at least a portion of dynamic numbers and/or dynamic codes. The data to be displayed on the display may be displayed on one or more displays  156 . 
     One or more displays  156  may be, for example, touch sensitive and/or proximity sensitive. For example, objects such as fingers, pointing devices, etc., may be brought into contact with displays  156 , or in proximity to displays  156 . Detection of object proximity or object contact with displays  156  may be effective to perform any type of function (e.g., transmit data to processor  154 ). Displays  156  may have multiple locations that are able to be determined as being touched, or determined as being in proximity to an object. 
     Input and/or output devices may be implemented on a card (e.g., card  100  of  FIG. 1 ). For example, integrated circuit (IC) chip  160  (e.g., an EMV chip) may be included that can communicate information to a chip reader (e.g., an EMV chip reader). Radio frequency identification (RFID) module  162  may be included to enable the exchange of information between an RFID reader and a card (e.g., card  100  of  FIG. 1 ). 
     Other input and/or output devices  168  may be included on architecture  150 , for example, to provide any number of input and/or output capabilities on a card (e.g., card  100  of  FIG. 1 ). For example, other input and/or output devices  168  may include an audio device capable of receiving and/or transmitting audible information. 
     Other input and/or output devices  168  may include a device that exchanges analog and/or digital data using a visible data carrier. Other input and/or output devices  168  may include a device, for example, that is sensitive to a non-visible data carrier, such as an IR data carrier or electromagnetic data carrier. Any type of tactile, audible, visible, and/or non-visible means of information exchange may be provided within architecture  150 . 
     Persons skilled in the art will appreciate that architecture  150  may, for example, be implemented within a self-contained device (e.g., card  100  of  FIG. 1 ) that derives its own operational power from one or more batteries  158 . Furthermore, one or more batteries  158  may be included, for example, to provide operational power for a period of time (e.g., approximately 2-4 years). One or more batteries  158  may be included, for example, as rechargeable batteries. 
     A dynamic magnetic stripe communications device may be included on a card to communicate information to, for example, a read-head of a magnetic stripe reader via electromagnetic signals. Electromagnetic field generators  170 - 174  may, for example, be included to communicate one or more tracks of electromagnetic data to read-heads of a magnetic stripe reader. Electromagnetic field generators  170 - 174  may include, for example, a series of electromagnetic elements, where each electromagnetic element may be implemented as a coil wrapped around one or more materials (e.g., a magnetic material and/or a non-magnetic material). Additional materials may be placed outside the coil (e.g., a magnetic material and/or a non-magnetic material). 
     Electrical excitation by processor  154  of one or more coils of one or more electromagnetic elements via, for example, driving circuitry  164  may be effective to generate electromagnetic fields from one or more electromagnetic elements. One or more electromagnetic field generators  170 - 174  may be utilized to communicate electromagnetic information to, for example, one or more read-heads of a magnetic stripe reader. 
     Timing aspects of information exchange between architecture  150  and the various I/O devices implemented on architecture  150  may be determined by processor  154 . Sensor array  166  may be utilized, for example, to sense the proximity or actual contact of an external device, which in turn, may trigger the initiation of a communication sequence. The sensed presence or touch of the external device may then be communicated to a processor (e.g., one or more pins of one or more input and/or output ports of processor  154 ), which in turn may direct the exchange of information with the external device. The sensed presence or touch of the external device may be effective to, for example, determine the type of device or object detected. 
     For example, sensor array  166  and sensing circuitry internal to processor  154  may sense the presence of, for example, a read head of a magnetic stripe reader. In response, processor  154  may activate one or more electromagnetic field generators  170 - 174  to initiate a communication data sequence with, for example, one or more read-heads of the detected magnetic stripe reader. The timing relationships associated with communications between one or more electromagnetic field generators  170 - 174  and one or more read-heads of a magnetic stripe reader may be provided through use of the sensed presence of the one or more read-heads of the magnetic stripe reader. 
       FIG. 2  shows sensing circuitry  200  that may, for example, be included within processor  214  of a card. Sensor  210  (e.g., a conductive pad on a printed circuit board of the card) may be utilized, for example, as a capacitive device within a resistor/capacitor (RC) circuit. Accordingly, for example, the RC circuit may be used to determine a relative capacitance of sensor  210 , which may then be used to determine whether the relative capacitance of sensor  210  is below, equal to, or above a predetermined threshold. 
     A relative capacitance magnitude of sensor  210  may exhibit, for example, an inversely proportional relationship to the distance separation between sensor  210  and an object that may be in proximity to, or touching, sensor  210 . For example, a capacitance magnitude of sensor  210  may be relatively small when a corresponding distance between sensor  210  and an external object may be relatively large. A capacitance magnitude of sensor  210  may be relatively large, for example, when the corresponding distance between sensor  210  and an external object is relatively small. 
     Charge sequence  250  may, for example, be invoked, such that switch  204  may be closed at time T 1  while switch  206  may remain open. Accordingly, for example, current may flow from voltage supply  202  through switch  204  and resistive component  208 . In doing so, for example, an electrostatic field may be generated that may be associated with sensor  210 . During the charge sequence, for example, the voltage at node  212  may be monitored to determine the amount of time required (e.g., T CHARGE =Δ1−T 1 ) for the voltage at node  212 , V 212 , to obtain a magnitude that is substantially equal to, below, or above a first threshold voltage (e.g., equal to V 1 ). 
     Discharge sequence  260  may, for example, be invoked, such that switch  206  may be closed at time T 2 , while switch  204  may remain open. During the discharge sequence, for example, the electric field associated with sensor  210  may be allowed to discharge through resistive component  208  to a reference potential (e.g., ground potential). The voltage at node  212  may be monitored to determine the amount of time required (e.g., T DISCHARGE =Δ2−T 2 ) for the voltage at node  212 , V 212 , to obtain a magnitude that is substantially equal to, below, or above a second threshold voltage (e.g., equal to V 2 ). 
     Once the charge time, T CHARGE , and discharge time, T DISCHARGE , are determined, the charge and discharge times may be utilized to calculate a capacitance magnitude that may be exhibited by sensor  210 . For example, given that the magnitude of voltage, V 1 , may be equal to approximately 63% of the magnitude of voltage, V S , then a first relationship may be defined by equation (1) as:
 
 T   CHARGE   =R   208   *C 1,  (1)
 
where R 208  is the resistance magnitude of resistive element  208  and C 1  is proportional to a capacitance magnitude of sensor  210 .
 
     Similarly, for example, given that the magnitude of voltage, V 2 , may be equal to approximately 37% of the magnitude of voltage, V S , then a second relationship may be determined by equation (2) as:
 
 T   DISCHARGE   =R   208   *C 2,  (2)
 
where C 2  is proportional to a capacitance magnitude of sensor  210 . The capacitance magnitudes, C 1  and C 2 , may then be calculated from equations (1) and (2) and averaged to determine an average capacitance magnitude that may be exhibited by sensor  210 . Persons skilled in the art will appreciate that RC components (e.g., resistive component  208 ) may be included within processor  214  or may be included external to processor  214 .
 
       FIG. 3  shows card  300 , which may include processor  346  and multiple (e.g., two) arrays of sensors (e.g., sensors  306 - 320  and sensors  322 - 336 ). Sensors  306 - 320  may, for example, be arranged linearly and may be coupled to individual pins of input and/or output port  340 , such that sensor  306  may be coupled to pin  8  of port  340 , sensor  308  may be coupled to pin  7  of port  340 , sensor  310  may be coupled to pin  6  of port  340  and so on. Sensors  322 - 336  may, for example, be arranged linearly and may be coupled to individual pins of input and/or output port  342 , such that sensor  336  may be coupled to pin  8  of port  342 , sensor  334  may be coupled to pin  7  of port  342 , sensor  332  may be coupled to pin  6  of port  342  and so on. Each sensor of one sensor array may have a mate that corresponds to a sensor in another sensor array. Accordingly, for example, sensor  306  may be mated with sensor  336 , sensor  308  may be mated with sensor  334 , sensor  310  may be mated with sensor  332  and so on. Mated sensors of each sensor array may be coupled to individual pins of different input and/or output ports (e.g., sensors  306 - 320  may be coupled to individual pins of input and/or output port  340  and sensors  322 - 336  may be coupled to individual pins of input and/or output port  342 ). 
     Each pin of input and/or output ports  340  and  342  may be configured as an output, such that a signal (e.g., a current signal) that may be generated by sensing circuitry  344  may be used to charge each of sensors  306 - 336  individually. Each pin of input and/or output ports  340  and  342  may be configured as an input, such that each of sensors  306 - 336  may be individually discharged through sensing circuitry  344 . A series of charge and discharge sequences for sensors  306 - 336  may be executed over time to determine a relative capacitance magnitude change (e.g., a capacitance magnitude increase) that may be exhibited by each of sensors  306 - 336 . 
     By comparing the time-based capacitance characteristic of sensors  306 - 336  to a threshold capacitance value, a determination may be made, for example, as to when sensors  306 - 336  are in a proximity relationship to an external object. For example, a sequential increase in the relative capacitance magnitudes of two or more sensors  306 - 336  may be sensed to determine, for example, that an external object is moving substantially in direction  302  relative to card  300 . A sequential increase in the relative capacitance magnitudes of two or more sensors  336 - 306  may be sensed to determine, for example, that an external object is moving substantially in direction  304  relative to card  300 . Once sensed, processor  346  may, for example, cause dynamic magnetic stripe communications device  348  to generate an electromagnetic field having a variable polarity and/or magnitude to communicate one, two, and/or three tracks of magnetic stripe data to, for example, a read-head of a magnetic stripe reader. 
     A read-head may be sensed as moving in direction  302  relative to card  300  by sensing a sequential change (e.g., sequential increase) in a capacitance magnitude that may be exhibited by two or more sensors  306 - 336 , respectively. Accordingly, for example, processor  346  may order data bits communicated by dynamic magnetic stripe communications device  348  in accordance with sensed direction  302  of movement of the read-head (e.g., a magnetic stripe message may be communicated from a beginning of the message to an end of the message based upon the sensed direction  302 ). Alternately, for example, a read-head may be sensed as moving in direction  304  relative to card  300  by sensing a sequential change (e.g., sequential increase) in a capacitance magnitude that may be exhibited by two or more sensors  336 - 306 , respectively. Accordingly, for example, processor  346  may order data bits communicated by dynamic magnetic stripe communications device  348  in accordance with sensed direction  304  of movement of the read-head (e.g., a magnetic stripe message may be communicated from an end of the message to the beginning of the message based upon the sensed direction  304 ). 
     Processor  346  may, for example, detect a presence of a read-head early in a swipe event of card  300  (e.g., a position of a read-head of a magnetic stripe reader may be detected near a leading edge of card  300 ). Accordingly, for example, a capacitance change (e.g., capacitance increase) of one or more sensors (e.g., sensors  306 - 310  or sensors  336 - 332 ) may be sensed by processor  346 . In so doing, for example, processor  346  may control dynamic magnetic stripe communications device  348  to communicate data bits at a relatively slow communication rate, since a read-head may remain within a communication distance of card  300  for a relatively large amount of time based upon the early detection of the read-head. 
     Processor  346  may, for example, detect a presence of a read-head at a mid-point in a swipe event of card  300  (e.g., a position of a read-head of a magnetic stripe reader may be detected between a leading edge of card  300  and an inner portion of card  300 ). Accordingly, for example, a capacitance change (e.g., capacitance increase) of one or more sensors (e.g., sensors  310 - 314  or sensors  332 - 328 ) may be sensed by processor  346 . In so doing, for example, processor  346  may control dynamic magnetic stripe communications device  348  to communicate data bits at a relatively medium communication rate, since a read-head may remain within a communication distance of card  300  for a relatively medium amount of time based upon the midpoint detection of the read-head. 
     Processor  346  may, for example, detect a presence of a read-head late in a swipe event of card  300  (e.g., a position of a read-head of a magnetic stripe reader may be detected at an inner portion of card  300 ). Accordingly, for example, a capacitance change (e.g., capacitance increase) of one or more sensors (e.g., sensors  314 - 318  or sensors  328 - 324 ) may be sensed by processor  346 . In so doing, for example, processor  346  may control dynamic magnetic stripe communications device  348  to communicate data bits at a relatively fast communication rate, since a read-head may remain within a communication distance of card  300  for a relatively small amount of time based upon the late detection of the read-head. 
       FIG. 4  shows card  400 , which may include processor  444  and multiple (e.g., three) arrays of sensors (e.g., sensors  406 - 416 , sensors  426 - 436 , and sensors  418 - 424 ). Sensors  406 - 416  may, for example, be arranged linearly and may be coupled to individual pins of input and/or output port  440 , such that sensor  406  may be coupled to pin  8  of port  440 , sensor  408  may be coupled to pin  7  of port  440 , sensor  410  may be coupled to pin  6  of port  440  and so on. Sensors  426 - 436  may, for example, be arranged linearly and may be coupled to individual pins of input and/or output port  442 , such that sensor  436  may be coupled to pin  8  of port  442 , sensor  434  may be coupled to pin  7  of port  442 , sensor  432  may be coupled to pin  6  of port  442  and so on. Each sensor of one sensor array may have a mate that corresponds to a sensor in another sensor array. Accordingly, for example, sensor  406  may be mated with sensor  436 , sensor  408  may be mated with sensor  434 , sensor  410  may be mated with sensor  432  and so on. Mated sensors of each sensor array may or may not share the same pin of input and/or output ports  440  and  442 . 
     Sensors  418 - 424  may, for example, share pins of input and/or output ports  440  and/or  442  with other circuitry  448  (e.g., an IR transceiver, an LED, a button, or any other device). For example, sensors  418  through  424  may interoperate with sensors  406 - 416  and/or  426 - 436  while processor  444  may be detecting a presence of an object within a proximity of card  400 . Alternately, for example, processor  444  may reconfigure one or more pins of input and/or output ports  440  and/or  442  so that other circuitry  448  may be utilized. For example, other circuitry  448  may be sensitive to other data signals (e.g., IR data signals) when processor  444  may be exchanging information with an IR transceiver via other circuitry  448 . Accordingly, for example, one or more sensors  418 - 424  may be disabled while one or more pins of input and/or output ports  440  and/or  442  may be used to perform other functions (e.g., exchange IR information). 
     Sensors  406 - 420  and  436 - 422  may, for example, be used by processor  444  for detecting a presence of a read-head of a magnetic stripe reader. A capacitance change (e.g., a capacitance increase) may, for example, be detected by processor  444  via sensing circuitry  446  and two or more sensors (e.g., sensors  406 - 410 ) for an early detection of a read-head moving in direction  402 . Accordingly, for example, processor  444  may conduct a communication sequence with the detected read-head via dynamic magnetic stripe communications device  450  at a relatively slow communication rate due to the early detection of the read-head. In addition, processor  444  may conduct a communication sequence with the detected read-head via dynamic magnetic stripe communications device  450  using data bits ordered in a particular ordering sequence (e.g., from a beginning of a magnetic stripe message to the end of the magnetic stripe message) based upon detected direction  402 . 
     A capacitance change (e.g., a capacitance increase) may, for example, be detected by processor  444  via sensing circuitry  446  and two or more sensors (e.g., sensors  436 - 432 ) for an early detection of a read-head moving in direction  404 . Accordingly, for example, processor  444  may conduct a communication sequence with the detected read-head via dynamic magnetic stripe communications device  450  at a relatively slow communication rate due to the early detection of the read-head. In addition, processor  444  may conduct a communication sequence with the detected read-head via dynamic magnetic stripe communications device  450  using data bits ordered in a particular ordering sequence (e.g., from an end of a magnetic stripe message to the beginning of the magnetic stripe message) based upon detected direction  404 . 
     Midpoint detections of a read-head may be sensed by processor  444  in conjunction with sensing circuitry  446  via two or more sensors (e.g., sensors  412 - 416  in direction  402  or sensors  430 - 426  in direction  404 ). Accordingly, for example, processor  444  may conduct communications with the detected read-head via dynamic magnetic stripe communications device  450  at a communication rate (e.g., a medium communication rate) and communication order (e.g., beginning to end or end to beginning) that corresponds to a detected direction of movement and initial relative position of a read-head of a magnetic stripe reader. 
     Late detections of a read-head may be sensed by processor  444  in conjunction with sensing circuitry  446  via two or more sensors (e.g., sensors  416 - 420  in direction  402  or sensors  426 - 422  in direction  404 ). Accordingly, for example, processor  444  may conduct communications with the detected read-head via dynamic magnetic stripe communications device  450  at a communication rate (e.g., a fast communication rate) and communication order (e.g., beginning to end or end to beginning) that corresponds to a detected direction of movement and an initial relative position of a read-head of a magnetic stripe reader. 
       FIG. 5  shows card  500 , which may include processor  542  having a single input and/or output port  540  and multiple sensor arrays (e.g., sensors  506 - 520  and sensors  522 - 536 ). Each sensor of one sensor array may have a mate that corresponds to a sensor in another sensor array. Accordingly, for example, sensor  506  may be mated with sensor  536 , sensor  508  may be mated with sensor  534 , sensor  510  may be mated with sensor  532  and so on. Mated sensors of each sensor array may not, for example, share the same pin of input and/or output port  442 . 
     Input and/or output port  540  may, for example, be limited to a number (e.g., eight) pins such that a number of (e.g., sixteen) sensors may be higher than a number of pins of input and/or output port  540  that may be used to connect to sensors  506 - 536 . Accordingly, for example, two or more sensors (e.g., a non-mated pair of sensors) may be cross-coupled to corresponding pins of input and/or output port  540 . In so doing, for example, sensors  508  and  536  may share pin  8  of input and/or output port  540 , sensors  506  and  534  may share pin  7  of input and/or output port  540 , sensors  512  and  532  may share pin  6  of input and/or output port  540  and so on to cross-couple non-mated pairs of sensors in sensor arrays  506 - 520  and  522 - 536  so as to maintain a direction sensing capability of processor  542 . 
     Such cross-coupling of sensors may yield an ability of processor  542  to detect a direction of movement of an object (e.g., a read-head of a magnetic stripe reader) based upon a detected order of activation of two or more sensors. For example, a read-head of a magnetic stripe reader may be detected by processor  542  via sensing circuitry  544  as moving in direction  504  when two or more pins  1  through  8  of input and/or output port  540  detect signals from activated sensors in a particular sequence (e.g., when sensors  536  (pin  8 ),  534  (pin  7 ),  532  (pin  6 ), and  530  (pin  5 ) are activated in sequence or when sensors  520  (pin  2 ),  518  (pin  1 ),  516  (pin  4 ), and  514  (pin  3 ) are activated in sequence). Alternately, for example, a read-head of a magnetic stripe reader may be detected by processor  542  via sensing circuitry  544  as moving in direction  502  when two or more pins  1  through  8  of input and/or output port  540  detect signals from activated sensors in a particular sequence (e.g., when sensors  506  (pin  7 ),  508  (pin  8 ),  510  (pin  5 ), and  512  (pin  6 ) are activated in sequence or when sensors  522  (pin  1 ),  524  (pin  2 ),  526  (pin  3 ), and  528  (pin  4 ) are activated in sequence). Processor  542  may, for example, communicate magnetic stripe information via dynamic magnetic stripe communications device  546  at a communication rate and with a communication order based upon such detections of a read-head of a magnetic stripe reader. 
       FIG. 6  shows card  600 , which may include processor  642  having a single input and/or output port  640  and multiple arrays of sensors (e.g., sensors  606 - 620  and sensors  622 - 636 ). Non-mated sensors  606  and  634  may share pin  1  of input and/or output port  640 , non-mated sensors  608  and  636  may share pin  2  of input and/or output port  640 , non-mated sensors  610  and  630  may share pin  3  of input and/or output port  640  and so on to cross-couple non-mated pairs of sensors  606 - 636  so as to maintain a direction sensing capability of processor  642 . 
     Such cross-coupling of sensors may yield an ability of processor  642  to detect a direction of movement of an object (e.g., a read-head of a magnetic stripe reader) based upon a detected order of activation of two or more sensors. For example, a read-head of a magnetic stripe reader may be detected by processor  642  via sensing circuitry  644  as moving in direction  602  when two or more pins  1  through  8  of input and/or output port  640  detect signals from activated sensors in a particular sequence (e.g., when sensors  606  (pin  1 ),  608  (pin  2 ),  610  (pin  3 ), and  612  (pin  4 ) are activated in sequence or when sensors  622  (pin  7 ),  624  (pin  8 ),  626  (pin  5 ), and  628  (pin  6 ) are activated in sequence). Alternately, for example, a read-head of a magnetic stripe reader may be detected by processor  642  via sensing circuitry  644  as moving in direction  604  when two or more pins  1  through  8  of input and/or output port  640  detect signals from activated sensors in a particular sequence (e.g., when sensors  636  (pin  2 ),  634  (pin  1 ),  632  (pin  4 ), and  630  (pin  3 ) are activated in sequence or when sensors  620  (pin  8 ),  618  (pin  7 ),  616  (pin  6 ), and  614  (pin  5 ) are activated in sequence). Processor  642  may, for example, communicate magnetic stripe information via dynamic magnetic stripe communications device  646  at a communication rate and with a communication order based upon such detections of a read-head of a magnetic stripe reader. 
       FIG. 7  shows card  700 , which may include processor  742  having a single input and/or output port  740  and multiple arrays of sensors (e.g., sensors  706 - 720  and sensors  722 - 736 ). Non-mated sensors  714  and  730  may share pin  1  of input and/or output port  740 , non-mated sensors  716  and  732  may share pin  2  of input and/or output port  740 , non-mated sensors  718  and  734  may share pin  3  of input and/or output port  740  and so on to cross-couple non-mated pairs of sensors  706 - 736  so as to maintain a direction sensing capability of processor  742 . 
     Such cross-coupling of sensors may yield an ability of processor  742  to detect a direction of movement of an object (e.g., a read-head of a magnetic stripe reader) based upon a detected order of activation of two or more sensors. For example, a read-head of a magnetic stripe reader may be detected by processor  742  via sensing circuitry  744  as moving in direction  702  when two or more pins  1  through  8  of input and/or output port  740  detect signals from activated sensors in a particular sequence (e.g., when sensors  706  (pin  5 ),  708  (pin  6 ),  710  (pin  7 ), and  712  (pin  8 ) are activated in sequence or when sensors  722  (pin  5 ),  724  (pin  6 ),  726  (pin  7 ), and  728  (pin  8 ) are activated in sequence). Alternately, for example, a read-head of a magnetic stripe reader may be detected by processor  742  via sensing circuitry  744  as moving in direction  704  when two or more pins  1  through  8  of input and/or output port  740  detect signals from activated sensors in a particular sequence (e.g., when sensors  736  (pin  4 ),  734  (pin  3 ),  732  (pin  2 ), and  730  (pin  1 ) are activated in sequence or when sensors  720  (pin  4 ),  718  (pin  3 ),  716  (pin  2 ), and  714  (pin  1 ) are activated in sequence). Processor  742  may, for example, communicate magnetic stripe information via dynamic magnetic stripe communications device  746  at a communication rate and with a communication order based upon such detections of a read-head of a magnetic stripe reader. 
       FIG. 8  shows card  800 , which may include processor  802  having a single input and/or output port  804  and multiple arrays of sensors (e.g., sensors  806 - 820  and sensors  822 - 836 ) cross-coupled to pins of input and/or output port  804  such that certain pairs of sensors share certain pins of input and/or output port  804 . Sensor  806  may be coupled to sensor  834  at pin  8  of input and/or output port  804 . Sensor  808  may be coupled to sensor  836  at pin  7  of input and/or output port  804 . Sensor  810  may be coupled to sensor  830  at pin  6  of input and/or output port  804 . Sensor  812  may be coupled to sensor  832  at pin  5  of input and/or output port  804 . Sensor  814  may be coupled to sensor  826  at pin  4  of input and/or output port  804 . Sensor  816  may be coupled to sensor  828  at pin  3  of input and/or output port  804 . Sensor  818  may be coupled to sensor  822  at pin  2  of input and/or output port  804 . Sensor  820  may be coupled to sensor  824  at pin  1  of input and/or output port  804 . Sensors  806 - 820  and sensors  822 - 836  may be any shape and any size. 
     Persons skilled in the art will appreciate that any number of non-mated pairs of sensors (e.g., more or less than eight pairs of sensors) may be cross-coupled to share specific pins of an input and/or output port of a processor. Persons skilled in the art will further appreciate that any number of input and/or output ports (e.g., two or more) may be coupled to non-mated pairs of sensors. Accordingly, for example, a direction sensing capability of a processor of a card may be maintained. 
       FIG. 9  shows flow charts of sequences  910 - 930 . In step  911  of sequence  910 , for example, each sensor of a card may be coupled to an individual input and/or output pin of a processor port on the card. The processor may, for example, include sensing circuitry (e.g., capacitance change sensing circuitry) such that when an external object is in proximity to a sensor, the sensor may be activated (e.g., a capacitance of the sensor may increase) and the sensing circuitry of the processor may sense the object&#39;s presence (e.g., as in step  912 ) by sensing a signal from the activated sensor. In step  913 , a processor may conduct communications (e.g., electromagnetic communications) with the detected object (e.g., a read-head of a magnetic stripe reader) by communicating data to the detected read-head at a selected communication bit rate (e.g., slow, medium or fast communication bit rate) and a selected communication bit order (e.g., forward or reverse communication bit order) based upon a direction and location of the detected read-head in relation to the card. 
     In step  921  of sequence  920 , for example, a portion of sensors of a card may be coupled to individual input and/or output pins of a processor port on the card. Other sensors may share other input and/or output pins of a processor port as in step  922 . Accordingly, for example, other circuitry (e.g., IR communication circuitry) may share pins of a processor port so that multiple functions (e.g., object sensing functions and IR communication functions) may be performed by the same processor pin but at different times. In step  923 , sensors coupled to individual pins of a processor port may be activated (e.g., capacitance increased) and such activation may be detected (e.g., as in step  924 ). Accordingly, for example, a position and direction of a detected external object (e.g., a read-head of a magnetic stripe reader) may be used to adjust a communication rate and a communication order that a processor may use to communicate electromagnetic data (e.g., one, two, and/or three tracks of magnetic stripe data) to the detected read-head. 
     In step  931  of sequence  930 , multiple sensors (e.g., selected pairs of sensors) may be cross-coupled to selected input and/or output pins of a processor port on a card, such that each pair of cross-coupled sensors may share an input and/or output pin of a processor. In step  932 , for example, each sensor may be activated (e.g., each sensor&#39;s capacitance may increase) in the presence of an external object (e.g., a read-head of a magnetic stripe reader). Based upon an order of activation of two or more sensors, a communication sequence may be conducted by a processor of the card (e.g., as in step  933 ). For example, a set of sensors may be activated by an object moving in relation to a card and the activation may be detected differently by a processor of a card based upon a relative direction of movement of the detected object. Accordingly, for example, the cross-coupling of step  931  may cause a processor of a card to detect a particular sequence of activated sensors when an object moves in one direction relative to the card and the processor may detect a different sequence of activated sensors when the object moves in the opposite direction relative to the card. In so doing, multiple sensors may share input and/or output pins of a processor port and a processor of a card may nevertheless differentiate a direction of movement of an external object based upon a detection of two or more activated sensors. 
     Persons skilled in the art will also appreciate that the present invention is not limited to only the embodiments described. Instead, the present invention more generally involves dynamic information and the exchange thereof. Persons skilled in the art will also appreciate that the apparatus of the present invention may be implemented in other ways than those described herein. All such modifications are within the scope of the present invention, which is limited only by the claims that follow.