Home
        MagTek Mini Swipe Reader (USB)
         Contents
1.                                               Cmd Num Data Len Prp ID Prp Value  01 04 12 31 32 33  Example Set Pre Card String property Response  Hex    Result Code   Data Len Data  00 00  perty Request  Hex    Cmd Num Data Len Prp ID  00 01 12  perty Response  Hex    Result Code   Data Len Prp Value  00 03 31 32 33                   31    USB Keyboard Emulation Swipe Reader  POST_CARD_STRING PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x13   String   0     7 bytes   Yes   Yes   The default value is no string with a length of zero    The value is an ASCII string that represents the device  s post card string    This string can be 0     7 bytes long  This string is sent after all other card data     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Example Set Post Card String property Request  Hex      Example Set Post Card String property Response  Hex         Cmd Num Data Len Prp ID  01 04 13    Prp Value  31 32 33                            Result Code   Data Len  00 00    Data                      Example Get Post Card String property Request  Hex      Example Get Post Card String property Response  Hex         Cmd Num Data Len Prp ID  00 01 13                         Result Code   Data Len  00 03    Prp Value  31 32 33     
2.                    REFERENCE DOCUMENTS  MagTek USB HID Swipe Reader  Technical Reference Manual  99875191     Axelson  Jan  USB Complete  Everything You Need to Develop Custom USB Peripherals  1999   Lakeview Research  2209 Winnebago St   Madison WI 53704  396pp   http   www  lvr com     USB Human Interface Device  HID  Class Specification Version 1 1   Universal Serial Bus  USB   HID Usage Tables Version 1 12  1 21 2005     USB  Universal Serial Bus  Specification  Version 1 1  Copyright   1998 by Compaq Computer  Corporation  Intel Corporation  Microsoft Corporation  NEC Corporation     USB Implementers Forum  Inc   www usb org     USB Keyboard Emulation Swipe Reader    SPECIFICATIONS    Table 1 1 lists the specifications for the USB Swipe Reader  Figure 1 2 shows the dimensions for  the standard product     Table 1 1  Specifications       Two frequency coherent phase  F2F   3 to 60 ips  7 62     152 4 cm s   ELECTRICAL  Normal Mode 15 mA  Suspend Mode 200 uA  MECHANICAL    3 94     100 0mm   1 28     32 5mm   1 23     31 3mm   4 5 oz   127 57 g   6 ft   1 8m   USB Type A plug    ENVIRONMENTAL   40   C to 70   C   40   F to 158   F    40   C to 70   C   40   F to 158   F   10  to 90  noncondensing       10  to 90  noncondensing   0 10 000 ft   0 3048 m     0 50 000 ft   0 15240 m       ISO  International Standards Organization  and AAMVA  American  Association of Motor Vehicle Administrators  and JIS  Japanese  Industrial Standard         Section 1  Features and Specificati
3.                  SS_TK1_ISO_ABA PROPERTY    Property ID     Property Type     Length    Get Property   Set Property   Default Value   Description     32    0x14   Byte   1 byte   Yes   Yes   0x25           This character is sent as the track 1 start sentinel for cards that have track 1  encoded in ISO ABA format  If the value is O no character is sent  If the  value is in the range 1     127 then the equivalent ASCII character will be sent     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Section 4  USB Communications    SS_TK2_ISO_ABA PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     ES PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x15   Byte   1 byte   Yes   Yes   0x3B    y   This character is sent as the track 2 start sentinel for cards that have track 2  encoded in ISO ABA format  If the value is O no character is sent  If the  value is in the range 1     127 then the equivalent ASCII character will be sent     This property is stored in non volatile memory  so it will persist when the unit  1s power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     0x16   Byte   1 byte  
4.       45       USB Keyboard Emulation Swipe Reader                                                                                                                                                       Ref     n    em  Usage Name Ma      5  men  Position  amp  S 5  20 14 Keyboard q and Q  27 y y J   4 101 104  21 15 Keyboard r and R 20 y y   4 101 104  22 16 Keyboard s and S  32 y y     4 101 104  23 17 Keyboard t and T 21 y   y 4 101 104  24 18 Keyboard u and U 23 y y J   4 101 104  25 19 Keyboard v and V 49 y y 4   4 101 104  26 1A Keyboard w and W  18 y y y   4 101 104  27 1B Keyboard x and X  47 y N 4   4 101 104  28 1C Keyboard y and Y  22 y y     4 101 104  29 1D Keyboard z and Z  46 y y y   4 101 104  30 1E Keyboard 1 and    2 y y 4   4 101 104  31 1F Keyboard 2 and I    3 y N J   4 101 104  32 20 Keyboard 3 and 4    4 y y y   4 101 104  33 21 Keyboard 4 and    5 y y 4   4 101 104  34 22 Keyboard 5 and    6 y y y   4 101 104  35 23 Keyboard 6 and   7 y y J   4 101 104  36 24 Keyboard 7 and 8   8 y y     4 101 104  37 25 Keyboard 8 and    9 y y 4   4 101 104  38 26 Keyboard 9 and    10 y y d   4 101 104  39 27 Keyboard 0 and    11 N N 4   4 101 104  40 28 Keyboard Return  ENTER   43 y y d   4 101 104  41 29 Keyboard ESCAPE 110 y y d   4 101 104  42 2A Keyboard DELETE  Backspace  15 y y   4 101 104  43 2B Keyboard Tab 16 y y y   4 101 104  44 2C Keyboard Spacebar 61 y y     4 101 104  45 2D Keyboard   and  underscore     12 y y y   4 101 104  46 2E Keyboard   and    13 y 
5.    OE POST_TK_CHAR Post track char   OF ASCIL TO KEYPRESS CONVERSION TYPE Type of conversion performed when  converting ASCII data to key strokes   10 INTERFACE TYPE Type of USB interface   11 ACTIVE KEYMAP Selects which key map to uses   12 PRE CARD STRING Pre card string   13 POST CARD STRING Post card string   14 SS TK1 ISO ABA Start sentinel char for track 1     ISO ABA   16 SS_TK2_ISO_ABA Start sentinel char for track 2     ISO ABA   16 ES End sentinel char for all tracks formats  except JIS type 2   17 ES TK1 End sentinel char for track 1   18 ES TK2 End sentinel char for track 2 except JIS  type 2   19 ES TK3 End sentinel char for track 3   1A DECODE_ENABLE Enables decoding for certain formats   1B SS_JIS TYPE 2 Start sentinel char for JIS type 2   1C ES JIS TYPE 2 End sentinel char for JIS type 2   1D PAN NAME DATE ENABLE Enables PAN name data format   1E POST TK CHAR ENABLE Enables the post track character per  track                   The Property Value is a multiple byte field that contains the value of the property  The number  of bytes in this field depends on the type of property and the length of the property  The  following table lists all of the property types and describes them        Property Type   Description   Byte This is a one byte value  The valid values depend on the property   String This is a multiple byte ASCII string  Its length can be zero to a  maximum length that depends on the property  The value and  length of the string does not include a te
6.   Cmd Num    Data Len    Prp ID    Prp Value             01    04       01       31 32 33          Example Set Serial Num property Response  Hex         Result Code    Data Len    Data             00    00             Example Get Serial Num property Request  Hex      Example Get Serial                            Cmd Num Data Len Prp ID  00 01 01   Num property Response  Hex    Result Code   Data Len Prp Value  00 03 31 32 33          21    USB Keyboard Emulation Swipe Reader  POLLING_INTERVAL PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x02   Byte   1 byte   Yes   Yes   1   The value is a byte that represents the devices polling interval for the Interrupt  In Endpoint  The value can be set in the range of 1     255 and has units of  milliseconds  The polling interval tells the host how often to poll the device  for card data packets  For example  if the polling interval is set to 10  the host  will poll the device for card data packets every 10ms  This property can be  used to speed up or slow down the time it takes to send card data to the host   The trade off is that speeding up the card data transfer rate increases the USB  bus bandwidth used by the device  and slowing down the card data transfer  rate decreases the USB bus bandwidth used by the device  The value of this  property will be sent to the host when the host reguests the device s USB  endpoint descriptor     This property is stored in non vola
7.   added new warranty statement   9Oct03   Sec 5  replaced third paragraph with    Demo programs   version 1 2 0 and newer          22 Jan 04   Sec 1  Replaced third paragraph  p  1  with current entry    17 May 05   Included references to new commands added after June  2005  Replaced all of Section 4    08 Aug 05   Sec 4  To  ASCII to Keypress Conversion Type Property   added Active Keymap Property statement  To Get KeyMap  Item Command and Set KeyMap Item Command  added the  paragraph     Starting with the firmware release    Device Class Definitions Table    19 Mar 07   Add SureSwipe title and content  14 Sep 07   Corrected default setting for polling interval to ims    type 2 decoding option    17 Jun 09   Updated Limited Warranty and Agency approvals  Added  Pan Name Date Enable and Post Tk Char Enable  Property        11    LIMITED WARRANTY  MagTek warrants that the products sold pursuant to this Agreement will perform in accordance with MagTek   s  published specifications  This warranty shall be provided only for a period of one year from the date of the  shipment of the product from MagTek  the    Warranty Period      This warranty shall apply only to the    Buyer      the original purchaser  unless that entity resells the product as authorized by MagTek  in which event this  warranty shall apply only to the first repurchaser      During the Warranty Period  should this product fail to conform to MagTek   s specifications  MagTek will  at its  option  repair or replac
8.  15 00  Logical Maximum  1  25 01  Report Size  1  7501  Report Count  8  95 08  Input  Data  Variable  Absolute  81 02  Report Count  1  95 01  Report Size  8  75 08  Input  Constant  81 03  Report Count  5  95 05  Report Size  1  75 01  Usage Page  LEDs  05 08  Usage Minimum  1  1901  Usage Maximum  5  2905                16    COMMANDS    Section 4  USB Communications                                                                   Item Value Hex   Output  Data  Variable  Absolute  91 02  Report Count  1  95 01  Report Size  3  75 03  Output  Constant  91 03  Report Count  6  95 06  Report Size  8  75 08  Logical Minimum  0  15 00  Logical Maximum  101  25 66  Usage Page  Key Codes  05 07  Usage Minimum  0  19 00  Usage Maximum  101  29 66  Input  Data  Array  81 00  Logical Maximum  255  26 FF 00  Usage Page  vendor defined  MSR   06 00 FF  Usage  command data  09 20  Report Count 95 18  Feature  Data  Variable  Absolute  Buffered Bytes  B2 02 01  End Collection CO          Command requests and responses are sent to and received from the device using feature reports     Command requests are sent to the device using the HID class specific request Set_Report  The  response to a command is retrieved from the device using the HID class specific request    Get_Report  These requests are sent over the default control pipe  When a command request is    sent  the device will Nak the Status stage of the Set_Report request until the command is  completed  This insures that as soon
9.  Yes   Yes   0x3F           This character is sent as the end sentinel for all tracks with any format except  JIS type 2  If the value is O no character is sent  If the value is in the range 1      127 then the eguivalent ASCII character will be sent     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     ES TK1 PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x17   Byte   1 byte   Yes   Yes   OxFF  use ES property    This character is sent as the end sentinel for track 1 with any format  If the  value is 0 no character is sent  If the value is in the range 1     127 then the  equivalent ASCII character will be sent  If the value is 0xFF then the value of  the ES property will be used instead of this property  This property was not  present until firmware revision with software ID 21042812H01     33    USB Keyboard Emulation Swipe Reader    This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Note    This property only applies to swipe readers  not the SureSwipe readers     ES TK2 PROPERTY    Property ID     Property Type     Length   Get Property   Set Propert
10.  as the Set_Report request is completed  the Get_Report  request can be sent to get the command response  The usage ID for the command message was    shown previously in the Usage Table     The following table shows how the feature report is structured for command requests     The following table shows how the feature report is structured for command responses                       Offset Field Name   0 Command Number  1 Data Length  2 23 Data                            Offset Field Name  0 Result Code  1 Data Length  2 23 Data          17    USB Keyboard Emulation Swipe Reader  COMMAND NUMBER    This one byte field contains the value of the requested command number  The following table  lists all the existing commands                                      Value   Command Number Description    Hex   00 GET_PROPERTY Gets a property from the device  01 SET_PROPERTY Sets a property in the device  02 RESET_DEVICE Resets the device  03 GET_KEYMAP_ITEM Gets a key map item  04 SET_KEYMAP_ITEM Sets a key map item  05 SAVE_CUSTOM_KEYMAP   Saves the custom key map       DATA LENGTH  This one byte field contains the length of the valid data contained in the Data field   DATA    This multi byte field contains command data if any  Note that the length of this field 1s fixed at  22 bytes  Valid data should be placed in the field starting at offset 2  Any remaining data after  the valid data should be set to zero  This entire field must always be set even if there is no valid  data  The HID 
11.  data for each track  If the value is O no  character is sent  If the value is in the range 1     127 then the equivalent  ASCII character be sent     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     ASCII TO KEYPRESS CONVERSION TYPE PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     28    0x0F   Byte   1 byte   Yes   Yes   0  keymap    The value is a byte that represents the devices ASCII to keypress conversion  type  The value can be set to O for keymap  the active keymap is set with the  ACTIVE KEYMAP property  or to 1 for ALT ASCII code  international  keyboard emulation   When the value is set to 0  keymap   data will be  transmitted to the host according to the active keymap which defaults to the  United States keyboard keymap  For example  to transmit the ASCII  character     063 decimal   the character is looked up in a keymap  For a  United States keyboard keymap  the  7  forward slash  key combined with the  left shift key modifier are stored in the keymap to represent the key press  combination that is used to represent the ASCII character          063 decimal    When the value is set to 1  ALT ASCII code   instead of using the key map   an international keyboard key press combination consisting of the decimal  value of the 
12.  intended use   If fastening tape is to be used  clean the area that the Reader will be mounted on with  isopropyl alcohol  Remove the adhesive protective cover on the fastening tape  and    position the Reader and push down firmly     Mount the Reader     USB Keyboard Emulation Swipe Reader    10    SECTION 3  OPERATION    This section describes the LED Indicator and Card Read   LED INDICATOR    The LED indicator will be either off  red  or green  When the device is not powered  the LED  will be off  When the device is first plugged in  the LED will be red  As soon as the device is  plugged in  the host will try to enumerate the device  Once the device is enumerated the LED  will turn green indicating that the device is ready for use  When a card is being swiped  the LED  will turn off temporarily until the swipe is completed  If there are no errors after decoding the  card data then the LED will turn green  If there are any errors after decoding the card data  the  LED will turn red for approximately two seconds to indicate that an error occurred and then turn  green  Anytime the host puts the device into suspend mode  the LED will turn off  Once the  host takes the device out of suspend mode  the LED will return to the state it was in prior to  entering suspend mode     CARD READ  A card may be swiped through the Reader slot when the LED is green     When using a USB KB Swipe Reader  with a single head   the magnetic stripe must face toward  the front  the side with the LE
13.  specifically for this manual  Section 8 3  Report Format for Array Items     The modifier byte is defined as follows     Table B 1  Modifier Byte       D       Key   LEFT CTRL  LEFT SHIFT  LEFT ALT  LEFT GUI  RIGHT CTRL  RIGHT SHIFT  RIGHT ALT  RIGHT GUI                                     NI  0 jou   O  R      O       JA    USB Keyboard Emulation Swipe Reader    54    
14.  suspend mode when directed to do so by the host  The device will wake  up from suspend mode when directed to do so by the host  The device does not support remote  wakeup     This device is powered from the USB bus  The vendor ID is 0x0801 and the product ID is  0x0001     HOST APPLICATIONS    This device can be used with existing applications that acguire card data via keyboard input   Also  applications that communicate to this device can be easily developed  These applications  can be developed using compilers such as Microsoft s Visual Basic or Visual C    To  demonstrate this device  s card reading capabilities any application that accepts keyboard input  such as Window   s Notepad can be used     CARD DATA    The card data is converted to ASCII and transmitted to the host as if it had been typed on a  keyboard  Any data with ASCII values O     31 or 127 will be transmitted as their equivalent  control code combination  For example a carriage return value 13  0x0D  will be sent as  1M   where   represents the Ctrl key on the keyboard     Caution  If another keyboard is connected to the same host as this device and a  key is pressed on the other keyboard while this device is transmitting   then the data transmitted by this device may get corrupted     13    USB Keyboard Emulation Swipe Reader    Because of potential    data interleave    issues associated with the USB Keyboard interface   MagTek recommends that the USB Keyboard Emulation MSR product should only be used b
15.  this is typically Z  Rather than changing the keyboard  firmware to put the Z Usage into that place in the descriptor list  the vendor should use the Y Usage on  both the North American and German keyboards  This continues to be the existing practice in the industry   in order to minimize the number of changes to the electronics to accommodate other languages     Table A 1  Keyboard Keypad                                                                                           Ref   Usage ID   Usage ID Tvpical  2 SC Usage Name AT 01  lt  o x Boot  Position a   5  0 00 Reserved  no event indicated    N A y y d  4 101 104  1 01 Keyboard ErrorRollOver  N A y y     4 101 104  2 02 Keyboard POSTFail   N A y y y   4101 104  3 03 Keyboard ErrorUndefined  N A y y 4   4 101 104  4 04 Keyboard a and A    31 y y y   4 101 104  5 05 Keyboard b and B 50 y y     4 101 104  6 06 Keyboard c and C  48 y y y   4 101 104  7 07 Keyboard d and D 33 y y     4 101 104  8 08 Keyboard e and E 19 y y y   4 101 104  9 09 Keyboard f and F 34 y y y   4 101 104  10 0A Keyboard g and G 35 y y     4 101 104  11 0B Keyboard h and H 36 y y J   4 101 104  12 OC Keyboard i and I 24 y y     4 101 104  13 0D Keyboard j and J 37 y y y   4 101 104  14 0E Keyboard k and K 38 y y     4 101 104  15 OF Keyboard I and L 39 y y     4 101 104  16 10 Keyboard m and M 52 y y     4 101 104  17 11 Keyboard n and N 51 y y   4 101 104  18 12 Keyboard o and O  25 y y J   4 101 104  19 13 Keyboard p and Pf 26 y y J   4 101 104 
16. 0 y y y 101 104  75 4B Keyboard PageUp  85 y y N 101 104  76 AC Keyboard Delete Forward     76 y y y 101 104  77 4D Keyboard End  81 y y N 101 104  78 4E Keyboard PageDown  86 y y y 101 104  79 4F Keyboard RightArrow  89 y y y 101 104  80 50 Keyboard LeftArrow  79 y y y 101 104  81 51 Keyboard DownArrow  84 y y N 101 104  82 52 Keyboard UpArrow  83 y y y 101 104  83 53 Keypad Num Lock and Clear1  90 y y y 101 104  84 54 Keypad    95 y y N 101 104  85 55 Keypad   100 y y     4 101 104  86 56 Keypad   105 y y J   4 101 104  87 57 Keypad   106 y y y   4 101 104  88 58 Keypad ENTERS 108 y y N 101 104  89 59 Keypad 1 and End 93 y y     4 101 104  90 SA Keypad 2 and Down Arrow 98     J   4 101 104  91 5B Keypad 3 and PageDn 103 y y v   4 101 104  92 5C Keypad 4 and Left Arrow 92 y y J   4 101 104  93 5D Keypad 4 and Left Arrow 97 y y y   4101 104  94 5E Keypad 4 and Left Arrow 102 y y d   4 101 104  95 5F Keypad 7 and Home 91 y y y   4 101 104  96 60 Keypad 8 and Up Arrow 96 y y     4 101 104  97 61 Keypad 9 and PageUp 101 y y J   4 101 104  98 62 Keypad 0 and Insert 99 y y J   4 101 104       47       USB Keyboard Emulation Swipe Reader                                                                                                                                                       Ref   Usage ID   Usage ID Tvpical  ibs  e SSES AT 01  lt  s   E Bogi   Position a   5  99 63 Keypad   and Delete 104 y y y   4 101 104  100 64 Keyboard Non US   and     45 y y y   4 101 104  101 65 Ke
17. 146 92 Keyboard Lang    147 93 Keyboard Lang4      148 94 Keyboard Langg   149 95 Keyboard Lang6   150 96 Keyboard Lang7    151 97 Keyboard Lang8   152 98 Keyboard Langg   153 99 Keyboard Alternate Erase     154 9A Keyboard Sys Req Attention   155 9B Keyboard Cancel  156 9C Keyboard Clear  157 9D Keyboard Prior  158 9E Keyboard Return  159 9F Keyboard Separator  160 AO Keyboard Out  161 Al Keyboard Oper  162 A2 Keyboard Clear Again  163 A3 Keyboard Cr Sel Props  164 A4 Keyboard Ex Sel  165 175 A5 CF Reserved  176 BO Keypad 00  177 B1 Keypad 000  178 B2 Thousands Separator  179 B3 Decimal Separator      180 B4 Currency Unit     181 B5 Currency Sub unit    182 B6 Keypad    183 B7 Keypad    184 B8 Keypad    185 B9 Keypad   186 BA Keypad Tab  187 BB Keypad Backspace                            49       USB Keyboard Emulation Swipe Reader                                                                                                                                                       Ref   Usage ID   Usage ID Typical E   Dec   Hex   sage Namo AT o    lt    e   3 Boot  Position a   5   188 BC Keypad A  189 BD Keypad B  190 BE Keypad C  191 BF Keypad D  192 CO Keypad E  193 C1 Keypad F  194 C2 Keypad XOR  195 C3 Keypad    196 C4 Keypad 96  197 C5 Keypad  lt   198 C6 Keypad  gt   199 C7 Keypad  amp   200 C8 Keypad  amp  amp   201 C9 Keypad    202 CA Keypad     203 CB Keypad    204 CC Keypad    205 CD Keypad Space  206 CE Keypad    207 CF Keypad    208 DO Keypad Memory Store  209 Di 
18. ASCII character combined with the ALT key modifier is used   For example  to transmit the ASCII character          063 decimal   keypad    0   is  sent combined with left ALT key modifier  next keypad    6    is sent combined  with the left ALT key modifier  last keypad    3    is sent combined with the left  ALT key modifier  In general  if this device only needs to emulate United  States keyboards then this property should be set to 0  keymap      If this device needs to be able to emulate all country   s keyboards then this  property should be set to 1  ALT ASCII code   The tradeoff is that the ALT    Section 4  USB Communications    ASCII code mode is slightly slower than keymap mode because more key  presses need to be transmitted  Some applications are not compatible with  ALT ASCII code mode     This property is stored in non volatile memory  so it will persist when the unit  1s power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Example Set ASCII To Keypress Conversion Type property Request  Hex         Cmd Num Data Len Prp ID Prp Value                   01 02 OF 00          Example Set ASCII To Keypress Conversion Type property Response  Hex                                          Result Code   Data Len Data  00 00  Example Get ASCII To Keypress Conversion Type property Request  Hex    Cmd Num Data Len Prp ID  00 01 OF          Example Get ASCII To Keypress Conversion Type 
19. CH BUYER UNDERSTANDS THAT THIS MAGTEK PRODUCT IS  OFFERED AS IS  MAGTEK MAKES NO OTHER WARRANTY  EXPRESS OR  IMPLIED  AND MAGTEK DISCLAIMS ANY WARRANTY OF ANY OTHER  KIND  INCLUDING ANY WARRANTY OF MERCHANTABILITY OR FITNESS  FOR A PARTICULAR PURPOSE     IF THIS PRODUCT DOES NOT CONFORM TO MAGTEK   S SPECIFICATIONS  THE SOLE REMEDY  SHALL BE REPAIR OR REPLACEMENT AS PROVIDED ABOVE  MAGTEK S LIABILITY  IF ANY   SHALL IN NO EVENT EXCEED THE TOTAL AMOUNT PAID TO MAGTEK UNDER THIS  AGREEMENT  IN NO EVENT WILL MAGTEK BE LIABLE TO THE BUYER FOR ANY DAMAGES   INCLUDING ANY LOST PROFITS  LOST SAVINGS  OR OTHER INCIDENTAL OR CONSEQUENTIAL  DAMAGES ARISING OUT OF THE USE OF  OR INABILITY TO USE  SUCH PRODUCT  EVEN IF  MAGTEK HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES  OR FOR ANY CLAIM BY  ANY OTHER PARTY     LIMITATION ON LIABILITY    EXCEPT AS PROVIDED IN THE SECTIONS RELATING TO MAGTEK   S LIMITED WARRANTY   MAGTEK   S LIABILITY UNDER THIS AGREEMENT IS LIMITED TO THE CONTRACT PRICE OF THIS  PRODUCT     MAGTEK MAKES NO OTHER WARRANTIES WITH RESPECT TO THE PRODUCT  EXPRESSED OR  IMPLIED  EXCEPT AS MAY BE STATED IN THIS AGREEMENT  AND MAGTEK DISCLAIMS ANY  IMPLIED WARRANTY  INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTY OF  MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE     MAGTEK SHALL NOT BE LIABLE FOR CONTINGENT  INCIDENTAL  OR CONSEQUENTIAL  DAMAGES TO PERSONS OR PROPERTY  MAGTEK FURTHER LIMITS ITS LIABILITY OF ANY KIND  WITH RESPECT TO THE PRODUCT  INCLUDING ANY NE
20. Command Number 2  or power cycled to have these changes take effect     rack ID Enable property Reguest  Hex    Cmd Num Data Len Prp ID Prp Value  01 02 03 95                            rack ID Enable property Response  Hex    Result Code   Data Len Data  00 00                            Cmd Num Data Len Prp ID  00 01 03                         Result Code   Data Len Prp Value  00 01 95                      23    USB Keyboard Emulation Swipe Reader  TRACK DATA SEND FLAGS PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x04   Byte   1 byte   Yes   Yes   0x63   This property is defined as follows        ICL          ss   es  IRC   0   tc   E   Er                         ICL    SS    ES    LRC    LC    Er    24    0     Changing the state of the caps lock key will not affect the case of the data  1     Changing the state of the caps lock key will affect the case of the data    0     Don t send Start Sentinel for each track  1     Send Start Sentinel for each track    0     Don t send End Sentinel for each track  1     Send End Sentinel for each track    0     Don t send LRC for each track  1     Send LRC for each track    Note that the LRC is the unmodified LRC from the track data  To verify the LRC  the track data needs to be converted back from ASCII to card data format and the  start sentinels that were modified to indicate the card encode type need to be  converted back to their original values     0     Send 
21. D  and may be swiped in either direction     When using a USB KB SureSwipe reader  with dual heads   the magnetic stripe can face toward  the front or the back  and may be swiped in either direction     If there is data encoded on the card  the reader will attempt to decode the data and then send the    results to the host as 1f the data was being typed on a keyboard  After the results are sent to the  host  the device will be ready to read the next card     11    USB Keyboard Emulation Swipe Reader    12    SECTION 4  USB COMMUNICATIONS    This device conforms to the USB specification revision 1 1  This device also conforms with the  Human Interface Device  HID  class specification version 1 1  The device communicates to the  host as a HID keyboard device  The latest versions of the Windows operating systems come  with a standard Windows USB HID keyboard driver     This is a full speed USB device  This device has a number of programmable configuration  properties  These properties are stored in non volatile memory  These properties can be  configured at the factory or by the end user  The device has an adjustable endpoint descriptor  polling interval value that can be set to any value in the range of 1ms to 255ms  This property  can be used to speed up or slow down the card data transfer rate  The device also has an  adjustable serial number descriptor  More details about these properties can be found later in this  document in the command section     The device will go into
22. D KEYPAD PAGE  OO     45  APPENDIX B  MODIFIER BYTE DEFINITIONS              cccsesseesseesseesseeseeeeeeeeeesneeseenseeeeesneeseensnensenesnes 53    FIGURES AND TABLES    Figure 1 1  USB Swipe Reader                                                                                               viii  Table 1 1  Specifications                                                                                                         4  Figure 1 2  Dimensions         a mm nnnd 5  Figure 2 1  Reader Cable and Connector                                                                                   7  Table 2 1  4 Pin Connector                                                                                                       7  Figure 2 2  Mounting Hole Dimensions for Surface                                                                       9  Table A 1  Keyboard Keypad                                                                                                  45  Table B 1  Modifier Byte EE 53    vi    vil       Figure 1 1  USB Swipe Reader    viii    SECTION 1  FEATURES AND SPECIFICATIONS  USB KB SWIPE READER    The USB  Universal Serial Bus  Keyboard Emulation Swipe Reader is a compact magnetic stripe  card reader with a single read head that conforms to ISO standards  The Reader is compatible  with any device with a USB interface  A card is read by sliding it  stripe down and facing the  LED side  through the slot either forward or backward     A LED  Light Emitting 
23. Diode  indicator on the Reader panel provides the operator with  continuous status of the Reader operations     The Reader emulates a USB Human Interface Device  HID  United States keyboard or optionally  all international keyboards using ALT ASCII code keypad key combinations or customizable key  maps  This allows host applications designed to acquire card data from keyboard input to  seamlessly acquire the card data from the USB swipe reader     Caution    If another keyboard is connected to the same host as this device and a key  is pressed on the other keyboard while this device is transmitting  then the  data transmitted by this device may get corrupted     Because of potential    data interleave    issues associated with the USB Keyboard interface   MagTek recommends that the USB Keyboard Emulation MSR product should only be used if the  application requires magnetic stripe data to be provided via the keyboard input  If previous  applications were based upon RS 232 serial interface magnetic stripe readers  or if this is a brand  new development effort  it is recommended that you use the MagTek   s    standard version    of the  USB HID MSR   Refer to Technical Manual 99875191 for further information regarding the  USB HID MSR      USB KB SURESWIPE    The USB KB SureSwipe is a card reader with two magnetic heads  The SureSwipe reader was  designed specifically to read any magnetic stripe card regardless of which way the magnetic stripe  is facing when swiped  The SureSwi
24. ET KEYMAP ITEM COMMAND    Command number     Description     40    0x04   This command is used to set a key map item of the active key map  The  active key map is determined by the active key map property  Data from a  magnetic stripe card is a sequence of ASCII characters  These ASCII  characters are mapped to key strokes and these key strokes are sent to the  host to represent the ASCII character  The key map maps a single ASCII  character to a single USB key usage ID and USB key modifier byte  The  key usage ID and the key modifier byte are transmitted to the host via USB  to represent the ASCII character  The ASCII value is the value of the  ASCII character to be transmitted to the host  See an ASCII table for the  values of the ASCII character set  The USB key usage ID is a unique value  assigned to every keyboard key  For a list of all key usage IDs see  Appendix A  The key modifier byte modifies the meaning of the key usage  ID  The modifier byte indicates if any combination of the right or left Ctrl   Shift  Alt or GUI keys are pressed at the same time as the key usage ID   For a list and description of the key modifier byte see Appendix B  Once a  key map item is modified  the changes take affect immediately  However   the changes will be lost if the device is reset or power cycled  To make the  changes permanent  the save custom key map command must be issued   To use the new custom key map after a reset or power cycle  the active key  map property must be set to cu
25. GLIGENCE ON ITS PART  TO THE  CONTRACT PRICE FOR THE GOODS     MAGTEK   S SOLE LIABILITY AND BUYER   S EXCLUSIVE REMEDIES ARE STATED IN THIS SECTION  AND IN THE SECTION RELATING TO MAGTEK   S LIMITED WARRANTY        ill    FCC WARNING STATEMENT    This equipment has been tested and was found to comply with the limits for a Class B digital device pursuant to  Part 15 of FCC Rules  These limits are designed to provide reasonable protection against harmful interference  when the equipment is operated in a residential environment  This equipment generates  uses  and can radiate  radio frequency energy and  if not installed and used in accordance with the instruction manual  may cause  harmful interference with radio communications  However  there is no guarantee that interference will not occur  in a particular installation     FCC COMPLIANCE STATEMENT    This device complies with Part 15 of the FCC Rules  Operation of this device is subject to the following two  conditions   1  this device may not cause harmful interference  and  2  this device must accept any interference  received  including interference that may cause undesired operation     CANADIAN DOC STATEMENT  This digital apparatus does not exceed the Class B limits for radio noise from digital apparatus set out in the    Radio Interference Regulations of the Canadian Department of Communications     Le pr  sent appareil num  rique n     met pas de bruits radio  lectriques d  passant les limites applicables aux  apparei
26. Keypad Memory Recall  210 D2 Keypad Memory Clear  211 D3 Keypad Memory Add  212 D4 Keypad Memory Subtract  213 D5 Keypad Memory Multiple  214 D6 Keypad Memory Divide  215 D7 Keypad      216 D8 Keypad Clear  217 D9 Keypad Clear Entry  218 DA Keypad Binary  219 DB Keypad Octal  220 DC Keypad Decimal  221 DD Keypad Hexadecimal   222 223 DE DF Reserved  224 EO Keyboard LeftControl 58 y y y  225 E1 Keyboard LeftShift 44 y y y  226 E2 Keyboard LeftA t 60 y y y  227 E3 Keyboard Left GUI    127 y y y  228 E4 Keyboard RightControl 64 y y y       50       Universal Serial Bus HID Tables                                                 Ref   Usage ID   Usage ID Tvpical  L B SES AT 01  lt  s   E Boot  Position a S 5  229 E5 Keyboard RightShift 57 y y y  230 E6 Keyboard RightAlt 62 y y y  231 E7 Keyboard Right GUI 9     128 y y y  232     E8 FFFF   Reserved  65535  Footnotes  1  Usage of keys is not modified by the state of the Control  Alt  Shift or Num Lock keys  That is  a key does not send extra    codes to compensate for the state of any Control  Alt  Shift or Num Lock keys     2  Typical language mappings  US    Belg  u    FrCa   lt   gt  Dan      Dutch   lt  gt  Fren  u Ger    Ital      LatAm  F  Nor    Span   JC Swed     Swiss      UK        3  Typical language mappings  Belg  lt   gt  FrCa        Dan  lt   gt  Dutch Il Fren  lt  gt  Ger  lt l gt  Ital  lt  gt  LatAm  lt  gt  Nor  lt  gt  Span  lt  gt   Swed  lt l gt  Swiss  lt   gt  UK N Brazil  V    4  Typically remapped for othe
27. PRESS CONVERSION TYPE PROPERTY    28  INTERFACE TYPE PROPERTY iniciacion O A A WA JAA FFY aaa da ia a 29  ACTIVE KEYMAP  PROPERTY ua  asc cesses cause ee di ENEE 30  PRE CARD  STRING PROPERTY ai  dde 31  POST CARD STRING PROPERTY            neue eee eaa aan aa aaa aaa aaa a a dlae 32  SS IKIISOZABA PROPERTY score 32  SS  TK2 lSO  ABA PROPER TV tota tn enkt e Kn a m  t etta mtn 0 33  ES PROPERU wae tended iar tea YNI Aids 33  ES TKWPROPERTM  natasa na ie ie n    n Maia A um hee 33  ES  TKZ PROPERT ET 34  ES  TKI PROPERT Vikis sai it e Ase iden Mein olde et AAA 34  DEGODE  ENABLE PROPERTY aca ada ra 35  SSIS  TYPE 2 PROPERTY EE 36  ES JISTYPE 2 PROPERT osmosis 36    RAN NAME DATE  ENABLE PROPERTY iie a te stead nd ee R   Ak ocd 36       POST TK CHAR ENABLE PROPERTY    aaa aaa aaa aa aaa aaa aaa aaa aaa 38    RESET  DEVICE COMMAND cc as 38  GET_KEYMAP_ITEM COMMANDU                   eee eee eee a na na n aan aa naa naa naan aa aan AKA aaa aaa aaa aaa 39  SET KEYMAP ITEM COMMAND ai an aa a na naan aan aa naa aaa aaa naa naa naan anna 40  SAVE CUSTOM KEYMAP COMMAND  AA 42  SECTION 5  DEMO PROGRAM    maama eaa maama aa a aan naa nawa nawa na a nananana nz awa naw NA 43  INSTALLATION e   time ani Tan PT a So ieee Aaaa a Pa Van Gilles ik ENEE  43  OPERATION  aa ad ia TTT AY meit WA AO Ee Seene A   43  SOURCE CODE eege dA o cove A Upa le EA A4  APPENDIX A  USAGE ID DEFINITIONS                           nnrnnnrvaannannnnannnannnnananannnananannnnnnnannnnnnnnnnnannnaannnannt 45  KEYBOAR
28. TYPE PROPERTY  INTERFACE TYPE PROPERTY  ACTIVE KEYMAP PROPERTY   PRE CARD STRING PROPERTY  POST CARD STRING PROPERTY  SS TK1 ISO ABA PROPERTY   SS TK2 ISO ABA PROPERTY   ES PROPERTY   RESET DEVICE COMMAND   GET KEYMAP ITEM COMMAND   SET KEYMAP ITEM COMMAND  SAVE CUSTOM KEYMAP COMMAND    In order to determine if these features are available  request the SOFTWARE ID property  If the  software ID string shows    21042804xxx     the new features are NOT available  If the software  string shows    21042812xxx    or    21042818xxx     then these new features are supported     Section 1  Features and Specifications    HARDWARE CONFIGURATIONS    The hardware configurations for the USB KB Swipe Reader are as follows                                            Part Number Tracks Color Cable Heads  21040107 TK 1 2 3 Pearl White 6    USB A Single  21040108 TK 1 2 3 Black 6    USB A Single  21040109 TK 1 2 Pearl White 6    USB A Single  21040110 TK 1 2 Black 6    USB A Single  21040122 TK 1 2 Black 5 5    USB A Single  21040123 TK 1  no SS ES  Black 6    USB A Single       The hardware configurations for the USB KB SureSwipe are as follows                    Part Number Tracks Color Cable Heads  21040145 TK 1 2 3 Black 6    USB A Dual  21040147 TK 1 2 3 Pearl White 6    USB A Dual                   ACCESSORIES    The accessories are as follows        Part Number   Description  21042806 USB MSR Demo Program with Source Code  Diskette   99510026 USB MSR Demo Program with Source Code  WEB    
29. USB KB SURESWIPE   amp     USB KB SWIPE READER  TECHNICAL REFERENCE MANUAL    Manual Part Number 99875206 Rev 16    JUNE 2009    MAGTEK   REGISTERED TO ISO 9001 2000  1710 Apollo Court  Seal Beach  CA 90740  Phone   562  546 6400  FAX   562  546 6301  Technical Support   651  415 6800  www magtek com    Copyright  god 2009  MagTek    Inc     Printed in the United States of America    Information in this document is subject to change without notice  No part of this document may be  reproduced or transmitted in any form or by any means  electronic or mechanical  for any purpose   without the express written permission of MagTek  Inc     MagTek is a registered trademark of MagTek  Inc     USB  Universal Serial Bus  Specification is Copyright   1998 by Compaq Computer Corporation  Intel  Corporation  Microsoft Corporation  NEC Corporation     Appendix A is taken from Universal Serial Bus HID Usage Tables  Version 1 12  Section 10   Keyboard Keypad Page  0x07    1996 2005 USB Implementers    Forum    Appendix B is taken from Section 8 3 Report Format for Array Items  Device Class Definition for  Human Interface Devices  HID  Version 1 11    1996 2001 USB Implementers    Forum   hidcomments   usb  org    REVISIONS      Rev Number   Date   Notes          28 Aug 01   Initial Release    2 11 Sep 01   Sec 1  Removed Hardware Configurations P Ns 210  40108   40110  40111  40112     4 Section 4  Command Number  Corrected GET and SET  PROPERTY descriptions  printers  o kemme  phone number
30. When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Section 4  USB Communications    Note  This property only applies to swipe readers  not the SureSwipe readers     DECODE_ENABLE PROPERTY    Property ID  Ox1A  Property Type  Byte  Length  1 byte    Get Property  Yes  Set Property  Yes  Default Value  0x00                      Description  This property is defined as follows   Bit  Position 7 6 5 4 3 2 1 0  Decode  Type Reserved   Reserved   Reserved   Reserved   Reserved   Reserved   Reserved   JIS Type 2                         When a decode type bit is set to 1  true   the decode type represented by that bit is  enabled  When a decode type bit is set to O  false   the decode type represented  by that bit is disabled  The reserved decode type bits should always be set to zero     This property is stored in non volatile memory  so it will persist when the unit is  power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Note  The JIS type 2 decoding option was not added until firmware with software ID  21042812K01 was release in October 2008  Some applications may not work  well with the JIS type 2 format because this format allows ASCII characters in the  non printable range  0x00     0x1F and 0x7F      This property only applies to swipe readers  not the SureSwipe readers     Example Set property Reguest  H
31. a naa nananana 8  MOUN TNG EE 8   SECTION 3  OPERATION 00000 ca abs 11  LED INDIGATO Rotas 11  CARD READ vuitton he a s 11   SECTION 4  USB COMMUNICATIONG            cccscseseseeeseeeeseeeseeesneeseeessnessaeeeaeeeaeeeaeseeeseeeseseassneeaensnensenesones 13  HOST APPLICATIO Sica tati AS a 13  CARD DATA EE 13  PROGRAMMABLE CONFIGURATION OPTIONS                  esse eee a aa aaa aaa aaa rr rar 15  LOW LEVEL CGOMMUNICATIONG AAA 15  HAID USAGES z R s    t i A na SO AA aa aa EA WEZ IS 16  REPORT DESCRIPTOR es cidad a ia ad a a PE AHNT SSS ka ia ka ap YL 16  COMMANDS FE eegene adsense cesta ad ia a ia   d a HF YR NI YN NR HF EF EF 17  COMMAND NUMBER ose  cosida it tdt 18  DATA CENG TR e a EE 18  DATA EE 18  RESUISTGODE 5114 ls alain Lk e 18  GET AND SET PROPERTY COMMANDS AA 19  SOFTWARE ID PROPER TY aaa iia 20  SERIAL  NUM PROPERTY minska alan Aa a Y dee 21  POLLINGZINTERVAL PROPERTY viciosa 22  TRACK IDSENBLE PROPERTY esz Gei YG las gi a i ai ORA EE 23  TRACK DATA SEND FLAGS PDRODERTNW eee oe iaaiaae 24  TERMINATION CHAR PROPERTY enea eee ee aaa aa a ana aa naa aaa aaa aaa a aaa 25  SS lt TK2 1BITSIPROPER NC IH 25  S5S_IK3 ISOZABA PROPERTY canal 26  SS_TK3  AAMVA PROPERTY uuig Ye AR a 26  SS_TK3  BITS  PROPERTY wana O A AO a aa aa aa daa a aaa 26  PRE CARD  CHA PROPERTY inicia AAA WA ds 27  POST CARD CHAR PROPERTY  L sit edita kiai aa aaa sanis   ada sa nd Jaa aisiais 27  PRE TK CHAR PROPERTY    aaa hi EEN DRI i ia siais a i iais 27  POST TK CHAR PROPERTY ici dd 28  ASCII  TO KEY
32. ange 1     127 then the equivalent ASCII character will be sent     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     SS_TK3_7BITS PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     26    Ox0A   Byte   1 byte   Yes   Yes   0x26    8      This character is sent as the track 3 start sentinel for cards that have track 3  encoded in 7 bits per character format  If the value is O no character is sent  If  the value is in the range 1     127 then the equivalent ASCII character will be  sent     This property is stored in non volatile memory  so it will persist when the unit  1s power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Section 4  USB Communications    PRE_CARD_CHAR PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x0B   Byte   1 byte   Yes   Yes   0   This character is sent prior to all other card data  If the value is O no character  is sent  If the value is in the range 1     127 then the equivalent ASCII  character will be sent     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must 
33. be reset  see  Command Number 2  or power cycled to have these changes take effect     POST_CARD_CHAR PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x0C   Byte   1 byte   Yes   Yes   0   This character is sent after all other card data  If the value is O no character is  sent  If the value is in the range 1     127 then the equivalent ASCII character  will be sent     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     PRE TK CHAR PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x0D   Byte   1 byte   Yes   Yes   0   This character is sent prior to the data for each track  If the value is 0 no  character is sent  If the value is in the range 1     127 then the equivalent  ASCII character will be sent     24    USB Keyboard Emulation Swipe Reader    This property is stored in non volatile memory  so it will persist when the unit  1s power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     POST_TK_CHAR PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x0E   Byte   1 byte   Yes   Yes   0   This character is sent after the
34. card data as upper case  1     Send card data as lower case    Note that the state of the Caps Lock key on the host keyboard has no affect on  what case the card data is transmitted in unless the ICL bit in this property is set  to 1     00     Don   t send any card data if error  01     Don   t send track data if error  11     Send    E  for each track error    This property is stored in non volatile memory  so it will persist when the unit is  power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Section 4  USB Communications    TERMINATION_CHAR PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x05   Byte   1 byte   Yes   Yes   OxOD  carriage return    This property is defined as follows           mod          o  o    T T T             4 6 EIN               H H H    o       mod    O     Send c after card data  1     Send c after each track    1 127    7 bit ASCII char code  0     send nothing    This property is stored in non volatile memory  so it will persist when the unit is  power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     SS_TK2_7BITS PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x06   Byte   1 byte   Yes   Yes   0x40 E      This character is sent as t
35. dows to the  root directory of the CD  Windows should find all the files it needs there     MOUNTING  The Reader may be mounted with screws or fastening tape as described below   Caution  The Reader should be mounted such that the bottom  mounting  side  is not exposed to the user  This is because the mounting side    of the reader may be susceptible to electrostatic discharge     l  The Reader can be mounted on a surface in various ways     e By two screws through the surface attached to the bottom of the unit and running the  cable on the top of the surface    e By two screws through the surface attached to the bottom of the unit and by drilling a  hole in the surface for the cable and running the cable through the hole    e By attaching the unit to the surface with fastening tape and running the cable on the  top of the surface     Note  The two mounting inserts are 3mm diameter  0 5mm pitch  6 4mm  deep  The length of the screws used depends on the mounting    surface thickness and the thickness of washers  if used      The mounting dimensions are shown in Figure 2 2  Determine the method of mounting  required     Section 2  Installation        kr  Cut Rhaquirsd  Ad Dr LN  Su Thagh burica    Not To Sois  100 04   Linan  Figure 2 2  Mounting Hole Dimensions for Surface  Ensure the Reader is positioned on a flat  accessible surface with at least 4 inches  clearance on either end for room to swipe a card  Orient the Reader so the side with the  LED is facing the direction of
36. e is included with the demo program  It can be used as a guide for application  development  It is described in detail  with comments  to assist developers  The book USB  Complete by Jan Axelson is also a good guide for application developers  especially the chapter  on Human Interface Device Host Applications  see    Reference Documents    in Section 1      44    APPENDIX A  USAGE ID DEFINITIONS    This appendix is from the following document found on www usb org  Universal Serial Bus HID Usage  Tables  Version 1 12 and specifically for this manual  Section 10  Keyboard Keypad Page  0x07      KEYBOARD KEYPAD PAGE  0X07     This section is the Usage Page for key codes to be used in implementing a USB keyboard  A Boot  Keyboard  84   101  or 104 key  should at a minimum support all associated usage codes as indicated in  the    Boot    column below     The usage type of all key codes is Selectors  Sel   except for the modifier keys Keyboard Left Control   0x224  to Keyboard Right GUI  0x231  which are Dynamic Flags  DV      Note  A general note on Usages and languages  Due to the variation of keyboards from language to  language  it is not feasible to specify exact key mappings for every language  Where this list is not specific  for a key function in a language  the closest equivalent key position should be used  so that a keyboard  may be modified for a different language by simply printing different keycaps  One example is the Y key  on a North American keyboard  In Germany
37. e this product at no additional charge except as set forth below  Repair parts and  replacement products will be furnished on an exchange basis and will be either reconditioned or new  All replaced  parts and products become the property of MagTek  This limited warranty does not include service to repair  damage to the product resulting from accident  disaster  unreasonable use  misuse  abuse  negligence  or  modification of the product not authorized by MagTek  MagTek reserves the right to examine the alleged  defective goods to determine whether the warranty is applicable     Without limiting the generality of the foregoing  MagTek specifically disclaims any liability or warranty for  goods resold in other than MagTek   s original packages  and for goods modified  altered  or treated without  authorization by MagTek     Service may be obtained by delivering the product during the warranty period to MagTek  1710 Apollo Court   Seal Beach  CA 90740   If this product is delivered by mail or by an equivalent shipping carrier  the customer  agrees to insure the product or assume the risk of loss or damage in transit  to prepay shipping charges to the  watranty service location  and to use the original shipping container or equivalent  MagTek will return the  product  prepaid  via a three  3  day shipping service  A Return Material Authorization     RMA     number must  accompany all returns  Buyers may obtain an RMA number by contacting Technical Support at  888  624 8350     EA
38. esult Code   Data Len Data          00 00                GET_KEYMAP_ITEM COMMAND    Command number   Description     Data structure     0x03   This command is used to get a key map item from the active key map  The  active key map is determined by the active key map property  Data from a  magnetic stripe card is a sequence of ASCII characters  These ASCII  characters are mapped to key strokes and these key strokes are sent to the  host to represent the ASCII character  The key map maps a single ASCII  character to a single USB key usage ID and USB key modifier byte  The  key usage ID and the key modifier byte are transmitted to the host via USB  to represent the ASCII character  The ASCII value is the value of the  ASCII character to be transmitted to the host  See an ASCII table for the  values of the ASCII character set  The USB key usage ID is a unique value  assigned to every keyboard key  For a list of all key usage IDs see  Appendix A  The key modifier byte modifies the meaning of the key usage  ID  The modifier byte indicates if any combination of the right or left Ctrl   Shift  Alt or GUI keys are pressed at the same time as the key usage ID   For a list and description of the key modifier byte see Appendix B     Starting with the firmware release with software ID 21042812F01  when  both the key usage ID and the key modifier byte are set to OxFF for a given  ASCII value  the ALT ASCII code is sent instead of the key map values   The ALT ASCII code is a key press combi
39. et Property Request Data        Data Offset    Value          0          Property ID       Get Property Response Data        Data Offset    Value       0 n             Property Value       Set Property Reguest Data        Data Offset    Value       0    Property ID          1 n          Property Value       Set Property Response Data   None    The result codes for the Get and Set Property commands can be any of the codes list in the    generic result code table     Property ID is a one byte field that contains a value that identifies the property  The following    table lists all the current property ID values                                                           Value   Property ID Description    Hex   00 SOFTWARE_ID The device s software identifier  01 SERIAL_NUM The device s serial number  02 POLLING_INTERVAL The interrupt pipe s polling interval  03 TRACK_ID_ENABLE Track enable   ID enable  04 TRACK_DATA_SEND_FLAGS Track data send flags  05 TERMINATION_CHAR Terminating char   per track or card flag  06 SS_TK2_7BITS Start sentinel char for track 2     7 bit data  07 Reserved for future use  08 SS_TK3_ISO_ABA Start sentinel char for track 3     ISO ABA  09 SS_TK3_AAMVA Start sentinel char for track 3   AAMVA  OA SS TK3 7BITS Start sentinel char for track 3     7 bit data  OB PRE CARD CHAR Pre card char  0C POST CARD CHAR Post card char  0D PRE_TK_CHAR Pre track char          19    USB Keyboard Emulation Swipe Reader                                                       
40. ex     Cmd Num Data Len Prp ID Prp Value   01 02 1A 01  enable JIS Type 2  decode type                             Example Set property Response  Hex    Result Code   Data Len Data  00 00                         Example Get property Request  Hex    Cmd Num Data Len Prp ID  00 01 1A                         Example Get property Response  Hex    Result Code   Data Len Prp Value  00 01 01                         3    USB Keyboard Emulation Swipe Reader    SS_JIS TYPE_2 PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     Ox1B   Byte   1 byte   Yes   Yes   0x7F    DEL      This character is sent as the start sentinel for cards that are encoded in the JIS  type 2 format  If the value is in the range 0     127 then the equivalent ASCII  character will be sent     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see    Command Number 2  or power cycled to have these changes take effect     Note    This property only applies to swipe readers  not the SureSwipe readers     ES JIS TYPE 2 PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     Ox1C   Byte   1 byte   Yes   Yes   0x7F    DEL      This character is sent as the end sentinel for cards that are encoded in the JIS  type 2 format  If the value is in the range O     127 then the equivalent ASCII  character wil
41. ged in  The report descriptor usages identify the devices capabilities and report  structures  For example  a device could be identified as a keyboard by analyzing the device   s  report descriptor  Usages are four byte integers  The most significant two bytes are called the  usage page and the least significant two bytes are called usage IDs  Usages that are related can  share a common usage page  Usages can be standardized or they can be vendor defined   Standardized usages such as usages for mice and keyboards can be found in the HID Usage  Tables document and can be downloaded free at www usb org  Vendor defined usages must  have a usage page in the range OxFFOO     0xFFFF  All usages for this device use the standard  HID keyboard usages or vendor defined magnetic stripe reader usage page 0xFF00  The vendor  defined usage IDs for this device are defined in the following table  The usage types are also  listed  These usage types are defined in the HID Usage Tables document     Magnetic Stripe Reader usage page 0xFF00           Usage ID   Usage Name Usage Report   Hex  Type Type  20 Command message Data Feature                      REPORT DESCRIPTOR    The HID report descriptor is structured as follows                                                                 Item Value Hex   Usage Page  Generic Desktop  05 01  Usage  Keyboard  09 06  Collection  Application  A1 01  Usage Page  Key Codes  05 07  Usage Minimum  224  19 EO  Usage Maximum  231  29 E7  Logical Minimum  0 
42. h this Keyboard  Emulation device  Use a text editor application such as Windows Notepad to demonstrate card  reading for this keyboard emulation device  Any application that allows user input from a  keyboard should be sufficient to demonstrate card reading for this device     The primary purpose of the demo program  when used with this keyboard emulation device  is to  allow users to change the device   s programmable configuration properties  This is accomplished  by sending commands to the device with the demo program  The demo program also comes  with source code that can be used as a guide for application developers who what to change the  device   s programmable configuration properties in an application  However  it is unlikely that  application developers will want to change these properties in an application since these  properties only need to be set once and can be set at the factory  This program is written in  Visual Basic     Demo programs  version 1 2 0 and newer work on Windows 98  Me  2000 and XP  Older  versions do not support the HID keyboard emulation device on Windows 2000 or XP  These  older versions only work on Windows 98 and Me     When the demo program is run  a button for reading cards is displayed along with a button for  sending commands  The card reading option is not supported for this keyboard emulation  device  Use a text editor application such as Windows Notepad to demonstrate card reading for  this keyboard emulation device     The part nu
43. he United States  keyboard map  modifier byte 0x02  left  shift key  is mapped to ASCII character           To change this to the ASCII character   gt    use modifier byte 0x02  left shift key            Result codes     Response Data  None    O  success     The following example maps the card ASCII data end sentinel character         to the     gt     keyboard       Cmd Num Data Len Data                   3F 37 02          Result Code   Data Len Data       key   Example Request  Hex     04 03  Example Response  Hex     00 00                   41    USB Keyboard Emulation Swipe Reader  SAVE_CUSTOM_KEYMAP COMMAND    Command number  0x05   Description  This command is used to save the active key map as the custom key map  in non volatile memory  The active key map is determined by the active  key map property  Once a key map item is modified  the changes take  affect immediately  However  the changes will be lost if the device is  reset or power cycled  To make the changes permanent  the save custom  key map command must be issued  To use the new custom key map after  a reset or power cycle  the active key map property must be set to custom    Data structure   Reguest Data  None  Response Data  None                   Result codes  O  success    Example Reguest  Hex    Cmd Num Data Len Data  05 00   Example Response  Hex    Result Code   Data Len Data  00 00                   42    SECTION 5  DEMO PROGRAM    The purpose of this demo program is not to demonstrate card reading wit
44. he track 2 start sentinel for cards that have track 2  encoded in 7 bits per character format  If the value is O no character is sent  If  the value is in the range 1     127 then the equivalent ASCII character will be  sent     This property is stored in non volatile memory  so 1t will persist when the unit    1s power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     25    USB Keyboard Emulation Swipe Reader  SS_TK3_ISO_ABA PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x08   Byte   1 byte   Yes   Yes   0x2B           This character is sent as the track 3 start sentinel for cards that have track 3  encoded in ISO ABA format  If the value is O no character is sent  If the  value is in the range 1     127 then the equivalent ASCII character will be sent     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     SS_TK3_AAMVA PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x09   Byte   1 byte   Yes   Yes   0x23     This character is sent as the track 3 start sentinel for cards that have track 3  encoded in AAMVA format  If the value is O no character is sent  If the  value is in the r
45. ing table shows how this properties bit positions relate to each track        Bit 7 6 5  position  Reserved       I    The reserved track fields should always be set to zero  For example  to    Reserved    enable all three tracks set this property to 0x07  To enable only track I set  this property to 0x01     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect       This property was not added until firmware version 21042812L02  This property only exists in  swipe readers  not sureswipe readers     RESET_DEVICE COMMAND    Command number   Description     Data structure   Result codes     0x02   This command is used to reset the device  This command can be used to  make previously changed properties take affect without having to unplug  and then plug in the device  When the device resets it automatically does  a USB detach followed by an attach  After the host sends this command  to the device it should close the USB port  wait a few seconds for the  operating system to handle the device detach followed by the attach and  then re open the USB port before trying to communicate further with the  device    No data is sent with this command   0x00  success     Example Request  Hex      38       Cmd Num Data Len Data          02 00                Section 4  USB Communications    Example Response  Hex         R
46. l be sent     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see    Command Number 2  or power cycled to have these changes take effect     Note    This property only applies to swipe readers  not the SureSwipe readers     PAN_NAME_DATE_ENABLE PROPERTY    Property ID   0x1D    Property Type  Byte    Length  1 byte    Get Property  Yes  Yes  0  DISABLED     Set Property   Default Value     36    Section 4  USB Communications    Description  When this property is set to O  the reader data transmission will use the standard mode of  sending track information as described in SECTION 4  When this value is set to non   zero  and Track 1 or Track 2 is determined to be in a financial data format  the reader will  transmit the PAN  Primary Account Number   Name and Expiration date using the  following format     lf Track 1 is available    lt PAN gt  lt TAB gt  lt Name gt  lt TAB gt  lt MM gt  lt TAB gt  lt YY gt  lt Termination Character gt   Track 2 data will not be transmitted    If only Track 2 is available    lt PAN gt  lt TAB gt  lt TAB gt  lt MM gt  lt TAB gt  lt YY gt  lt Termination Character gt     lf Track 1 and Track 2 are not in financial data format or cannot be decoded  the reader  will revert back to standard mode     This property is stored in non volatile memory  so it will persist when the unit is power  cycled  When this property is changed  the unit must be re
47. ls num  riques de la classe B prescrites dans le R  glement sur le brouillage radio  lectrique   dict   par le  minist  re des Communications du Canada     This Class B digital apparatus complies with Canadian ICES 003     Cet appareil num  riqu   de la classe B est conform   a la norme NMB 003 du Canada   CE STANDARDS    Testing for compliance with CE requirements was performed by an independent laboratory  The unit under test  was found compliant with standards established for Class B devices     UL CSA  This product is recognized per Underwriter Laboratories and Canadian Underwriter Laboratories 1950   RoHS STATEMENT    When ordered as RoHS compliant  this product meets the Electrical and Electronic Equipment  EEE  Reduction  of Hazardous Substances  RoHS  European Directive 2002 95 EC  The marking is clearly recognizable  either as  written words like    Pb free        lead free     or as another clear symbol    BB      iv    TABLE OF CONTENTS    SECTION 1  FEATURES AND SPECIFICATIONS  oooouconcnncnnnncnncnnnnrnnrnernrn reee 1  USB KB SWIPEREADER cut rif 1  USB KB SURESWIP E  iii BE SEENEN eet adi EE 1  FEATURES unit drid 2  HARDWARE CONFIGURATIONS cnncccocococcconinoninncnnncnonnnonnn cnc 3  ACCESSORIES  az nai a mt zy a ir 3  REFERENCE DOCUMENTS ee  eos 499 pm RE aa 3  SPECIFICATIONS awa naci Gan adi REESEN DEA Ga sia 4   SEGTION 2     INSTALLATION ion it 7  USB  CONNECTION vestida Gi 7  WINDOWS PLUG AND PLAY GETUDR  ionia aa naa naa naa aa aan ana ana aa a naa aa aa na
48. mbers for the demo program can be found in this document in Section 1 under  Accessories     INSTALLATION    To install the demo program  run the setup exe file and follow the instructions given on the  screen     OPERATION  To operate the demo program perform the following steps     e Attach the device into a USB port on the host   e If this is the first time the device has been plugged into the host  then follow the instructions  on the screen for installing the Windows HID device driver  This is explained in more detail  in the installation section of this document    e Run the demo program    e To read cards and view the card data do not use the demo program  Use a text editor  program such as Windows Notepad    e To send commands to the device  click on the send commands button     43    USB Keyboard Emulation Swipe Reader    e Enter a command in the Message edit box  All data entered should be in hexadecimal bytes  with a space between each byte  Enter the command number followed by the command data  if there is any  The application will automatically calculate and send the command data  length for you  For example  to send the GET_PROPERTY command for property  SOFTWARE_ID enter 00 00    e Press Enter or click on Send message to send the command and receive the result    e The command request and the command result will be displayed in the Communications  Dialog edit box    e The Clear Dialog button clears the Communication Dialog edit box     SOURCE CODE    Source cod
49. nation consisting of the decimal  value of the ASCII character combined with the ALT key modifier  For  example  to transmit the ASCII character        063 decimal   keypad    0   is  sent combined with left ALT key modifier  next keypad    6    is sent  combined with the left ALT key modifier  last keypad    3    is sent combined  with the left ALT key modifier              Request Data   Offset   Field Name Description  0 ASCII value Value of the ASCII character to be    retrieved from the key map  This can be  any value between 0 and 127  0x7F   For  example  to retrieve the key map item for  ASCII character          card data end  sentinel  use the ASCII value of         which  is 63  0x3F                  39    USB Keyboard Emulation Swipe Reader    Response Data        Offset    Field Name Description       0    Key Usage ID The value of the USB key usage ID that is  mapped to the given ASCII value  For  example  for the United States keyboard  map  usage ID 56  0x38   keyboard   and     is mapped to ASCII character                   Key Modifier Byte   The value of the USB key modifier byte  that is mapped to the given ASCII value   For example  for the United States  keyboard map  modifier byte 0x02  left  shift key  is mapped to ASCII character                         Result codes  O  success                          Example Request  Hex    Cmd Num Data Len Data  03 01 3F  Example Response  Hex         Result Code   Data Len Data                   00 02 38 02       S
50. ons          Figure 1 2  Dimensions    USB Keyboard Emulation Swipe Reader    SECTION 2  INSTALLATION    This section describes the cable connection  the Windows Plug and Play Setup  and the physical  mounting of the unit     USB CONNECTION    Connect the USB cable to a USB port on the host  The Reader  LED Indicator  and pin numbers  for the 4 pin connector are shown in Figure 2 1        Figure 2 1  Reader Cable and Connector  Pin numbers and signal descriptions for the cable shown in the illustration are listed in Table 2 1     Table 2 1  4 Pin Connector    VBUS   Red         USB Keyboard Emulation Swipe Reader    WINDOWS PLUG AND PLAY SETUP    On hosts with the Windows operating system  the first time the device is plugged into a specific  USB port  Windows will pop up a dialog box  which will guide you through the process of  installing a device driver for the device  After this process is completed once  Windows will no  longer request this process as long as the device is plugged into the same USB port  The device  driver that Windows will install for this device is the driver used for HID keyboard devices and it  1s part of the Windows operating system  When the dialog box pops up  follow the instructions  given in the dialog box  Sometimes Windows will find all the files it needs  Other times  Windows will need to know the location of the files 1t needs  If Windows prompts for the file  locations  insert the CD that was used to install Windows on your PC and point Win
51. ontrol key on a Korean language keyboard    27  Keypad Comma is the appropriate usage for the Brazilian keypad period     key  This represents the closest possible match   and system software should do the correct mapping based on the current locale setting    28  Keyboard Internationall should be identified via footnote as the appropriate usage for the Brazilian forward slash     and  question mark     key  This usage should also be renamed to either  Keyboard Non US   and    or to  Keyboard  International1  now that it s become clear that it does not only apply to Kanji keyboards anymore    29  Used on AS 400 keyboards    30  Defines the Katakana key for Japanese USB word processing keyboards    31  Defines the Hiragana key for Japanese USB word processing keyboards    32  Usage 0x94  Keyboard LANGS   Defines the Zenkaku Hankaku key for Japanese USB word processing keyboards    33  The symbol displayed will depend on the current locale settings of the operating system  For example  the US thousands  separator would be a comma  and the decimal separator would be a period    34  The symbol displayed will depend on the current locale settings of the operating system  For example the US currency unit    would be   and the sub unit would be        51    USB Keyboard Emulation Swipe Reader    52    APPENDIX B  MODIFIER BYTE DEFINITIONS    This appendix is from the following document found on www usb org  Device Class Definition  for Human Interface Devices  HID  Version 1 11  and
52. pe   s dual heads provide convenience for the user by  eliminating the confusion when swiping a card     In all other regards  the SureSwipe reader is technically equivalent to the single head USB KB  Swipe reader described above  All technical specifications described in this manual are applicable  to both types of readers     The SureSwipe readers have specific part numbers and they are described in a table in the     Hardware Configurations    section below     USB Keyboard Emulation Swipe Reader    FEATURES    Major features of the Swipe Reader are as follows     Powered through the USB     no external power supply required  Hardware Compatible with PC or any computer or terminal with a USB interface  Bidirectional card reading    Reads encoded data that meets ANSUISO AAMVAJJIS Type 2 standards and others such as  ISO track 1 format on track 2 or 3    Reads up to three tracks of card data   LED for status   Compatible with USB specification Revision 1 1   Compatible with HID specification Version 1 1   Can use standard Windows drivers for communications  No third part device driver is  required    Many programmable configuration options   Non volatile memory for configuration storage   Built in 6 foot USB cable   Ability to convert to HID mode of operation  new in June 2005     Note    New features have been added to the Keyboard Emulation Swipe Reader  The following  commands were added to most readers that are shipped after June 1  2005     ASCII TO KEYPRESS CONVERSION 
53. ponse  Hex    Result Code   Data Len Prp Value  00 01 00                         ACTIVE_KEYMAP PROPERTY    Property ID  0x11  Property Type  Byte  Length  1 byte    Get Property  Yes   Set Property  Yes   Default Value  0  United States    Description  The value is a byte that represents the device   s active key map  The value can  be set to O for the United States key map or to 1 for the custom key map  The  active key map will be used by the device to convert ASCII data into key  strokes  The United States key map should be used will all hosts that are  configured to use United States keyboards  The custom key map can be used  to set up the device to work with hosts that are configured to use other  countries keyboards  The default custom key map is the same as the United  States key map  The key map can be modified to another countries key map  by using commands    Get Key Map        Set Key Map    and    Save Custom Key  Map     See the command section of this manual for a complete description of  these commands  To set up a device to use a custom key map  select the  appropriate key map to be modified using the active key map property  reset  the device to make this change take affect  use the    Get Key Map    and    Set  Key Map    commands to modify the active key map  use the    Save Custom  Key Map    command to save the active key map as the custom key map  set  the active key map property to custom to use the custom key map  reset the  device to make these change
54. property Response  Hex         Result Code   Data Len Prp Value                00 01 00          INTERFACE_TYPE PROPERTY    Property ID  0x10   Property Type  Byte   Length  1 byte   Get Property  Yes   Set Property  Yes   Default Value  1  keyboard emulation    Description  The value is a byte that represents the devices interface type  The value can    be set to O for the HID interface or to 1 for the keyboard emulation interface   When the value is set to O  HID  the device will behave as described in the  HID manual  When the value is set to 1  Keyboard emulation  the device will  behave as described in the keyboard emulation manual  This property should  be the first property changed because it affects which other properties are  available  After this property is changed  the device should be power cycled  before changing any other properties     This property is stored in non volatile memory  so it will persist when the unit    is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     29    USB Keyboard Emulation Swipe Reader    Example Set Interface Type property to HID Request  Hex    Cmd Num Data Len Prp ID Prp Value  01 02 10 00                Example Set Interface Type property Response  Hex    Result Code   Data Len Data  00 00             Example Get Interface Type property Request  Hex    Cmd Num Data Len Prp ID  00 01 10             Example Get Interface Type property Res
55. r languages in the host system    5  Keyboard Enter and Keypad Enter generate different Usage codes    6  Typically near the Left Shift key in AT 102 implementations    7  Example  Erase Eaze    key    8  Reserved for language specific functions  such as Front End Processors and Input Method Editors    9  Reserved for typical keyboard status or keyboard errors  Sent as a member of the keyboard array  Not a physical key    10  Windows key for Windows 95  and    Compose       11  Implemented as a non locking key  sent as member of an array    12  Implemented as a locking key  sent as a toggle button  Available for legacy support  however  most systems should use the  non locking version of this key    13  Backs up the cursor one position  deleting a character as it goes    14  Deletes one character without changing position    15 20  See additional foot notes in Universal Serial Bus HID Usage Tables  Copyright    1996 2005  USB Implementers  Forum    21  Toggle Double Byte Single Byte mode    22  Undefined  available for other Front End Language Processors    23  Windowing environment key  examples are Microsoft Left Win key  Mac Left Apple key  Sun Left Meta key   24  Windowing environment key  examples are Microsoft   RIGHT WIN key  Macintosh   RIGHT APPLE key  Sun   RIGHT  META key    25  Hangul English toggle key  This usage is used as an input method editor control key on a Korean language keyboard    26  Hanja conversion key  This usage is used as an input method editor c
56. rminating NUL character                       SOFTWARE ID PROPERTY    Property ID  0x00  Property Type      String  Length  Fixed at 11 bytes    Get Property  Yes   Set Property  No   Description  This is an 11 byte read only property that identifies the software part number  and version for the device  The first 8 bytes represent the part number and the  last 3 bytes represent the version  For example this string might be     21042812D01     Examples follow     Example Get Software ID property Request  Hex    Cmd Num Data Len Prp ID  00 01 00                         Example Get Software ID property Response  Hex    Result Code   Data Len Prp Value  00 01 32 31 30 34 32 38 31 32 44 30 31                         20    SERIAL_NUM PROPERTY    Property ID  0x01  Property Type  String  Length  0     15 bytes    Get Property  Yes  Set Property  Yes  Default Value      The default value is no string with a length of zero     Description     Section 4  USB Communications    The value is an ASCII string that represents the device   s serial number  This    string can be 0     15 bytes long  The value of this property  if any  will be sent    to the host when the host requests the USB string descriptor     This property is stored in non volatile memory  so it will persist when the unit    is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Example Set Serial Num property Request  Hex       
57. s take affect     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Example Set Active Keymap property Request  Hex    Cmd Num Data Len Prp ID Prp Value  01 02 11 00                            30    Example Set Active Keymap property Response  Hex      Example Get Active Keymap    Example Get Active Keymap  Result Code  00 01    Section 4  USB Communications                   Result Code   Data Len Data  00 00  property Request  Hex    Cmd Num Data Len Prp ID  00 01 11       property Response  Hex         Data Len    Prp Value                00          PRE_CARD_STRING PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x12  String   0     7 bytes  Yes   Yes    The default value is no string with a length of zero   The value is an ASCII string that represents the device  s pre card string  This    string can be 0     7 bytes long  This string is sent prior to all other card data     This property is stored in non volatile memory  so it will persist when the unit    is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Example Set Pre Card String property Request  Hex      Example Get Pre Card String pro    Example Get Pre Card String pro      
58. set  see Command Number 2   or power cycled to have these changes take effect     Rules used for determining that a card is in financial data format   e PAN length should be between 13 and 19  Name length should be between 0 and 26 characters for Track 1  Only 2 field separators       for Track 1  Only 1 field separator           for Track 2  Format code shall be the character    B    for Track 1    Example Set PAN_Name_Date_Enable property to 01 Request  Hex       Cmd Num   Data Len   Prp1D_   Prp Value  1D              Example Set PAN_Name_Date_Enable property Response  Hex      Result Data  Code Len       Example Get PAN_Name_Date_Enable property Request  Hex       Cmd Num  Data Len   Prp ID      Example Get PAN_Name_Date_Enable property Response  Hex      Result Data Len   Prp Value  Code    N       En AE AA    This property was not added until firmware version 21042812L02  This property only exists in  swipe readers  not sureswipe readers     37    USB Keyboard Emulation Swipe Reader    POST_TK_CHAR_ENABLE PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     Ox1E  Byte  1 byte  Yes  Yes  0x07  This property is used to enable or disable the post track character for each    track individually  The post track character is set separately with the post  track character property  To enable the post track character for a given track  set its corresponding bit position to one  To disable it  set it to zero  The  follow
59. specification requires that Reports be fixed in length  Command data may vary  in length  Therefore  the Report should be filled with zeros after the valid data     RESULT CODE    This one byte field contains the value of the result code  There are two types of result codes   generic result codes and command specific result codes  Generic result codes always have the  most significant bit set to zero  Generic result codes have the same meaning for all commands  and can be used by any command  Command specific result codes always have the most  significant bit set to one  Command specific result codes are defined by the command that uses  them  The same code can have different meanings for different commands  Command specific  result codes are defined in the documentation for the command that uses them  Generic result  codes are defined in the following table                             Value   Result Code Description   Hex   00 SUCCESS The command completed successfully   01 FAILURE The command failed   02 BAD_PARAMETER The command failed due to a bad  parameter or command syntax error        18    GET AND SET PROPERTY COMMANDS    Section 4  USB Communications    The Get Property command gets a property from the device  The Get Property command    number is 0x00     The Set Property command sets a property in the device  The Set Property command number    is 0x01     The Get and Set Property command data fields for the requests and responses are structured as    follows     G
60. stom     Starting with the firmware release with software ID 21042812F01  when  both the key usage ID and the key modifier byte are set to OxFF for a  given ASCII value  the ALT ASCII code is sent instead of the key map    Data structure     Section 4  USB Communications    values  The ALT ASCII code is a key press combination consisting of the    decimal value of the ASCII character combined with the ALT key    modifier  For example  to transmit the ASCII character          063 decimal    keypad    0   is sent combined with left ALT key modifier  next keypad    6       is sent combined with the left ALT key modifier  last keypad    3    is sent    combined with the left ALT key modifier     Request Data        Offset    Field Name    Description       0    ASCII value    Value of the ASCII character to be set in  the key map  This can be any value  between 0 and 127  0x7F   For example   to set the key map item for ASCII  character          card data end sentinel  use  the ASCII value of         which is 63  0x3F         Key Usage ID    The value of the USB key usage ID that is  to be mapped to the given ASCII value   For example  for the United States  keyboard map  usage ID 56  0x38    keyboard   and    is mapped to ASCII  character          To change this to the ASCII  character   gt   use usage ID 55  0x37    keyboard   and  gt             Key Modifier Byte          The value of the USB key modifier byte  that is to be mapped to the given ASCII  value  For example  for t
61. tile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see  Command Number 2  or power cycled to have these changes take effect     Example Set Polling Interval property to 10 Reguest  Hex      Example Set Po                                           Example Get Polling Interval                      Example Get Polling Interval    22                   Cmd Num Data Len Prp ID Prp Value  01 02 02 OA  lling Interval property Response  Hex     Result Code   Data Len Data  00 00   property Request  Hex    Cmd Num Data Len Prp ID  00 01 02   property Response  Hex    Result Code   Data Len Prp Value  00 01 OA                   Section 4  USB Communications    TRACK_ID_ENBLE PROPERTY    Property ID   Property Type   Length    Get Property   Set Property   Default Value   Description     0x03   Byte   1 byte   Yes   Yes   0x95   This property is defined as follows        id          NI Oe EN ME    REIT 1                   Id    Ts    Example Set T    Example Set T    Example Get Track ID Enable property Reguest  Hex      Example Get Track ID Enable property Response  Hex      0     Decodes standard ISO ABA cards only  1     Decodes AAMVA  CA DL ID and 7 bit cards also    00     Track Disabled  01     Track Enabled  10     Track Enabled Reguired  Error if blank     This property is stored in non volatile memory  so it will persist when the unit is  power cycled  When this property is changed  the unit must be reset  see  
62. uires low level  communications with the device  During normal device operation  the device acts like a USB  HID keyboard so the host operating system takes care of all low level communications with the  device so that the application developer is not burdened with these low level details  Details on  how to communicate with the device to change programmable configuration properties follows  in the next few sections  These details are included as a reference only  Most users will not need  to know these details because the device will be configured at the factory or by a program  supplied by MagTek  Most users may want to skip over the next few sections on low level  communications and continue with the details of the configuration properties     LOW LEVEL COMMUNICATIONS    It is strongly recommended that application software developers become familiar with the HID  specification the USB specification before attempting to communicate directly with this device   This document assumes that the reader is familiar with these specifications  These specifications  can be downloaded free from www usb org     15    USB Keyboard Emulation Swipe Reader  HID USAGES    HID devices send data in reports  Elements of data in a report are identified by unique identifiers  called usages  The structure of the device   s reports and the device   s capabilities are reported to  the host in a report descriptor  The host usually gets the report descriptor only once  right after  the device is plug
63. will be sent in upper case regardless of the state of the caps lock key on the keyboard  If  no data is detected on a track then nothing will be transmitted for that track  If an error is  detected on a track the ASCII character E will be sent in place of the track data to indicate an  error     The card data format for all programmable configuration options is as follows      P18  P11   P13   Tk1 SS   Tk1 Data   ES   LRC   P14   PS   P13   Tk2 SS   Tk2 Data   ES    LRC   P14   P5   P13   Tk3 SS   Tk3 Data   ES   LRC   P14   P5   P12  P19     14    Section 4  USB Communications    where    ES   P22  end sentinel    LRC   Longitudinal redundancy check character   PS   Terminating character   Pll   Pre card character   P12   Post card character   P13   Pre track character   P14   Post track character   P18   Pre card string   PI9   Post card string   Tk1 SS  P20  ISO ABA start sentinel    Tk2 SS  P21  ISO ABA 5 bit start sentinel   P6  7 bit start sentinel    Tk3 SS  P8  ISO ABA start sentinel     P9  AAMVA start sentinel   P10  7 bit start sentinel     All fields with the format P  are programmable configuration property numbers  They are  described in detail later in this document     PROGRAMMABLE CONFIGURATION OPTIONS    This device has a number of programmable configuration properties  These properties are stored  in non volatile memory  These properties can be configured at the factory or by the end user  using a program supplied by MagTek  Programming these parameters req
64. y     Default Value     Description     0x18   Byte   1 byte   Yes   Yes   OxFF  use ES property    This character is sent as the end sentinel for track 2 with any format except  JIS type 2  If the value is O no character is sent  If the value is in the range 1      127 then the equivalent ASCII character will be sent  If the value is OxFF  then the value of the ES property will be used instead of this property  This  property was not present until firmware revision with software ID  21042812H01     This property is stored in non volatile memory  so it will persist when the unit  is power cycled  When this property is changed  the unit must be reset  see    Command Number 2  or power cycled to have these changes take effect     Note    This property only applies to swipe readers  not the SureSwipe readers     ES TK3 PROPERTY    Property ID     Property Type     Length   Get Property   Set Property     Default Value     Description     34    0x19   Byte   1 byte   Yes   Yes   OxFF  use ES property    This character is sent as the end sentinel for track 3 with any format  If the  value is O no character is sent  If the value is in the range 1     127 then the  equivalent ASCII character will be sent  If the value is 0xFF then the value of  the ES property will be used instead of this property  This property was not  present until firmware revision with software ID 21042812H01     This property is stored in non volatile memory  so it will persist when the unit  1s power cycled  
65. y  customers who have previously used MagTek   s Keyboard Wedge MSR  or who are interfacing  with an existing PC software application which gathers card data from the keyboard port  If  previous applications were based upon RS 232 serial interface MSRs  or if this is a brand new  development effort  it is recommended that you use the MagTek   s USB MSR  Non Keyboard  Emulation Version   Refer to Technical Manual 99875191 for further information regarding the  USB HID reader     The device   s programmable configuration options affect the format of the card data   The card data format for the default configuration is as follows      Tk1 SS   Tk1 Data   ES   Tk2 SS   Tk2 Data   ES   Tk3 SS   Tk3 Data   ES   CR   where   Tk1 SS      7 bit start sentinel   Tk2 SS     ISO ABA 5 bit start sentinel      7 bit start sentinel   DEL  0x7F   JIS type 2 start sentinel      Tk3 SS    ISO ABA start sentinel      AAMVA start sentinel    amp   7 bit start sentinel    ES      end sentinel for all formats except JIS type 2   DEL  0x7F   JIS type 2 end sentinel     CR    carriage return   0x0D       Before the JIS type 2 encode type can be decoded  decoding must be enabled with the decode  enable property  The JIS type 2 decoding option was not added until firmware with software ID  21042812K01 was release in October 2008  Some applications may not work well with the JIS  type 2 format because this format allows ASCII characters in the non printable range  0x00     0x1F  and Ox7F      All data 
66. y J   4 101 104  47 2F Keyboard   and    27 N N J   4 101 104  48 30 Keyboard   and    28 y y 4   4 101 104  49 31 Keyboard   and   29 y y 4   4 101 104  50 32 Keyboard Non US   and    42 y y y   4 101 104  51 33 Keyboard   and    40 y y     4 101 104  52 34 Keyboard     and      41 y y 4   4 101 104  53 35 Keyboard Grave Accent and Tilde  1 y y 4   4 101 104  54 36 Keyboard  and  lt   53   N 4   4 101 104  55 37 Keyboard  and  gt   54 N N     4 101 104  56 38 Keyboard   and   55 y y J   4 101 104  57 39 Keyboard Caps Lock   30 y y     4 101 104  58 3A Keyboard F1 112 y y y   4 101 104  59 3B Keyboard F2 113 y       4 101 104       46       Universal Serial Bus HID Tables                                                                                                                                                    Ref   en   wa Usage Name pa  z   g   een  Position   S 5  60 3C Keyboard F3 114   N 4   4 101 104  61 3D Keyboard F4 115 y       4 101 104  62 3E Keyboard F5 116 y y J   4 101 104  63 3F Keyboard F6 117 y y J   4 101 104  64 40 Keyboard F7 118 y y J   4 101 104  65 41 Keyboard F8 119 y y J   4 101 104  66 42 Keyboard F9 120 y y y   4 101 104  67 43 Keyboard F10 121 y y J   4 101 104  68 44 Keyboard F11 422   y y 101 104  69 45 Keyboard F12 123 y y N 101 104  70 46 Keyboard PrintScreen  124 y y y 101 104  71 47 Keyboard Scroll Lock     125 y y 4   4 101 104  72 48 Keyboard Pause    126 y y y 101 104  73 49 Keyboard Insert  75 y y y 101 104  74 4A Keyboard Home    8
67. yboard Application 9 129 y y 104  102 66 Keyboard Power      y y  103 67 Keypad   y  104 68 Keyboard F13 62 y  105 69 Keyboard F14 63 y  106 6A Keyboard F15 64 y  107 6B Keyboard F16 65  107 6C Keyboard F17  109 6D Keyboard F18  110 6E Keyboard F19  111 6F Keyboard F20  112 70 Keyboard F21  113 71 Keyboard F22  114 72 Keyboard F23  115 73 Keyboard F24  116 74 Keyboard Execute y  117 75 Keyboard Help y  118 76 Keyboard Menu y  119 77 Keyboard Select y  120 78 Keyboard Stop y  121 79 Keyboard Again y  122 7A Keyboard Undo y  123 7B Keyboard Cut d  124 ZC Keyboard Copy d  125 7D Keyboard Paste d  126 7E Keyboard Find y  127 7F Keyboard Mute y  128 80 Keyboard Volume Up y  129 81 Keyboard Volume Down y  130 82 Keyboard Locking Caps Lock   y  131 83 Keyboard Locking Num Lock    y  132 84 Keyboard Locking Scroll Loch   y  133 85 Keypad Comma     107  134 86 Keypad Equal Sign      135 87 Keyboard International    56  136 88 Keyboard International2    137 89 Keyboard International3      138 8A Keyboard International4         48       Universal Serial Bus HID Tables                                                                                                                               Ref   Usage ID   Usage ID Tvpical  55  Hex  SE AT 101  lt  As  Position a S 5  139 8B Keyboard International5    140 8C Keyboard International6    141 8D Keyboard International7    142 8E Keyboard International8    143 8F Keyboard International9    144 90 Keyboard Lang1      145 91 Keyboard Lang    
    
Download Pdf Manuals
 
 
    
Related Search
    
Related Contents
  Climate Asia user guide for NGOs  PM-2 & PM-6 User Manual  Iron Sportster problems - Open  Touch- - Toolsmania  ================!"§==  CENTRIA WNDR4700/WNDR4720 User Manual  MOVIDRIVE MD_60A Systemhandbuch    Copyright © All rights reserved. 
   Failed to retrieve file