This document provides information regarding the SpringCard K531 & K632 OEM embedded software.
You will find a detailed description of the SpringCard K531 & K632 hardware in the product datasheet.
This document is to be used by anyone wishing to build embedded electronic systems implementing the use of a ISO 144443 contactless interface.
Date | Description |
---|---|
28/06/2004 | Initial release |
25/01/2007 | Updated according to new specifications for version >= 1.40 |
25/05/2009 | Updated according to new specifications for version >= 1.41 |
Changing startup parameters or RF configuration will dramatically change the module behaviour ! For example, when a different baudrate than default one is selected, you will not be able to communicate with the module using the default baudrate. Setting an invalid RF configuration may prevent communication with any or some kind of cards. Be sure to understand exactly what you're doing before writing into OEM reader's non-volatile variables.
The startup parameters are stored in a 4-byte area of module's non-volatile memory (EEPROM). They can be read and writen using the "const" command in the module console, or through the SPROX_ReaderGetConsts / SPROX_ReaderSetConsts functions in the SpringProx API.
The RF settings are stored in a 4-byte area of module's flash memory (FEED). They can be read and writen only using the "feed" command in the module console.
MSB | LSB | ||
B0 | B1 | B2 | B3 |
Byte | Name |
---|---|
B0 | Basic configuration |
B1 | Address on bus |
B2 | Startup action |
B3 | RFU byte |
msb | lsb | ||||||
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 |
RFU | RFU | KBD | SBO | SOD | SEO | BDR |
Bit | Name | Meaning |
---|---|---|
KBD | Keyboard style output |
1 : a 10ms delay is inserted between each chars in output (this is usefull when the device emulates an input device) 0 : no delay |
SBO | Serial Bus Option |
0 : 2 wires serial communication (RS-232 or RS-422) 1 : 1 wire "bus" serial communication (RS-485 or alike) |
SOD | Serial OSI Disabled |
0 : OSI protocol is allowed for host communication 1 : OSI protocol is disabled |
SEO | Serial Echo Off |
1 : suppress the echo during serial console communication. 0 : keep the echo. |
BDR | Initial baudrate on startup |
00 : 38400bps 01 : 115200bps 10 : 9600bps 11 : RFU |
This byte allows to assign the device an address, for multi-nodes operation on an RS-485 bus.
When Address on Bus is between 01 and FE, the fast "bus" binary protocol is selected as described in K531 & K632 Developer's Guide.
Instead of being a versatile conctactless device, involving high-level host-side development to interact with contactless cards at the application level, the OEM reader may also be used as a "dumb reader", just sending over the serial line the serial numbers (UIDs) of the cards it sees (see also the "poll" command in the module console).
The value in Startup Action defines the kind of card that will be looked for my the reader.
Note : you should definitively consider using a full featured reader (with advanced capabilities) such as IWM-K531 or IWM-K632 instead of using OEM reader in this mode.
msb | lsb | ||||||
b7 | b6 | b5 | b4 | b3 | b2 | b1 | b0 |
Calypso | RFU | RFU | RFU | ASK CTS | ST SR | ISO B | ISO A |
Bit | Name | Meaning |
---|---|---|
Calypso | Read Calypso serial number | Note : reading Calypso serial number is subject to a licence fee. Only devices holding the "C" mark in their reference are allowed to use this feature. |
ASK CTS | Read ASK CTS512 (and compliant) cards | |
ST SR | Read ST MicroElectronics SR176 (and compliant) cards | |
ISO B | Read ISO/IEC 14443-B card | The number read is the PUPI (4 first bytes of ATQb). |
ISO A | Read ISO/IEC 14443-A card | The number read is the UID (4, 7 or 12 bytes returned during the anticollision loop). |
RF settings are stored in FEED with address C1 and size 24 (hexadecimal) (36 in decimal). They are loaded at startup. Host-side software may alter those settings at runtime, but upon reset any change will be discarded.
Offset | Description | Default value | |
---|---|---|---|
decimal | hexa. | ||
00 | 00 | Conductance of the output amplifier (i.e. the amplitude of the field) | 3F |
01 | 01 | Conductance during during the time of 14443-B modulation | 0B |
02 | 02 | RxConfig register. Shoul'd be 01 | 01 |
03 | 03 | RxWait register. Shoul'd be 06 | 06 |
04 | 04 | BitPhase register. Shoul'd be 06 | AD |
05 | 05 | Conductance during during the time of 15693 modulation | 12 |
06 | 06 | RFU | 00 |
07 | 07 | RFU | 00 |
Transmitter configuration, 106 kbit/s | |||
08 | 08 | CoderControl register for 14443-A operation | 19 |
09 | 09 | CoderControl register for 14443-B operation | 20 |
10 | 0A | ModWidth register for 14443-A operation | 13 |
Transmitter configuration, 212 kbit/s | |||
11 | 0B | CoderControl register for 14443-A operation | 11 |
12 | 0C | CoderControl register for 14443-B operation | 18 |
13 | 0D | ModWidth register for 14443-A operation | 07 |
Transmitter configuration, 424 kbit/s | |||
14 | 0E | CoderControl register for 14443-A operation | 09 |
15 | 0F | CoderControl register for 14443-B operation | 10 |
16 | 10 | ModWidth register for 14443-A operation | 03 |
Transmitter configuration, 848 kbit/s | |||
17 | 11 | CoderControl register for 14443-A operation | 01 |
18 | 12 | CoderControl register for 14443-B operation | 08 |
19 | 13 | ModWidth register for 14443-A operation | 01 |
Receiver configuration, 106 kbit/s | |||
20 | 14 | RxControl1 register | 77 |
21 | 15 | DecoderThreshold register | 08 |
22 | 16 | RxThreshold register | FF |
23 | 17 | BPSKDemControl register | 00 |
Receiver configuration, 212 kbit/s | |||
24 | 18 | RxControl1 register | 57 |
25 | 19 | DecoderThreshold register | 09 |
26 | 1A | RxThreshold register | F0 |
27 | 1B | BPSKDemControl register | 0C |
Receiver configuration, 424 kbit/s | |||
28 | 1C | RxControl1 register | 37 |
29 | 1D | DecoderThreshold register | 09 |
30 | 1E | RxThreshold register | F0 |
31 | 1F | BPSKDemControl register | 0C |
Receiver configuration, 848 kbit/s | |||
32 | 20 | RxControl1 register | 17 |
33 | 21 | DecoderThreshold register | 09 |
34 | 22 | RxThreshold register | F0 |
35 | 23 | BPSKDemControl register | 0C |
Default values specified here are for K531 or K632 OEM module. CSB4 or other products may ship with different values. Please observe that appropriate values (especially for conductance and receive threshold) depend deeply on antenna characteristics (size, number of turns, tuning).
Do not try to change those values without an expert knowledge of the underlying physical phenomenons.