User Guide
Table Of Contents
- Contents
- Introduction to the Mercury6e- Transcore Module
- Functionality of the Embedded Modules
- Overview of the Communication Protocol
- Command Set
- Boot Loader Commands
- Multi-Protocol Tag Commands
- Allegro/Title-21 Tag Commands
- eGo/SeGo Tag Command Set
- ATA Tag Command Set
- Gen2 Tag Commands
- Get Configuration Commands
- Get Hardware Version (10h)
- Get Antenna Configuration (61h)
- Get Read TX Power (62h)
- Get Current Tag Protocol (63h)
- Get Write TX Power (64h)
- Get Frequency Hop Table (65h)
- Get User GPIO Inputs (66h)
- Get Current Region (67h)
- Get Power Mode (68h)
- Get User Mode (69h)
- Get Reader Configuration(6Ah)
- Get Protocol Configuration (6Bh)
- Get Reader Statistics (6Ch)
- Get Available Protocols (70h)
- Get Available Regions (71h)
- Get Current Temperature (72h)
- Set Configuration Commands
- FCC Test Commands
- Appendix A: Hardware Details
- Appendix B: Using the ArbSer Application
- Appendix C: Error Messages
- Common Error Messages
- FAULT_MSG_WRONG_NUMBER_OF_DATA – (100h)
- FAULT_INVALID_OPCODE – (101h)
- FAULT_UNIMPLEMENTED_OPCODE – 102h
- FAULT_MSG_POWER_TOO_HIGH – 103h
- FAULT_MSG_INVALID_FREQ_RECEIVED (104h)
- FAULT_MSG_INVALID_PARAMETER_VALUE - (105h)
- FAULT_MSG_POWER_TOO_LOW - (106h)
- FAULT_UNIMPLEMENTED_FEATURE - (109h)
- FAULT_INVALID_BAUD_RATE - (10Ah)
- Bootloader Faults
- FPGA Faults
- Flash Faults
- Protocol Faults
- FAULT_NO_TAGS_FOUND – (400h)
- FAULT_NO_PROTOCOL_DEFINED – 401h
- FAULT_INVALID_PROTOCOL_SPECIFIED – 402h
- FAULT_WRITE_PASSED_LOCK_FAILED – 403h
- FAULT_PROTOCOL_NO_DATA_READ – 404h
- FAULT_AFE_NOT_ON – 405h
- FAULT_PROTOCOL_WRITE_FAILED – 406h
- FAULT_NOT_IMPLEMENTED_FOR_THIS_PROTOCOL – 407h
- FAULT_PROTOCOL_INVALID_WRITE_DATA – 408h
- FAULT_PROTOCOL_INVALID_ADDRESS – 409h
- FAULT_GENERAL_TAG_ERROR – 40Ah
- FAULT_DATA_TOO_LARGE – 40Bh
- FAULT_PROTOCOL_INVALID_KILL_PASSWORD – 40Ch
- FAULT_PROTOCOL_KILL_FAILED - 40Eh
- FAULT_PROTOCOL_BIT_DECODING_FAILED - 40Fh
- FAULT_GEN2 PROTOCOL_OTHER_ERROR - 420h
- FAULT_GEN2_PROTOCOL_MEMORY_OVERRUN_BAD_PC - 423h
- FAULT_GEN2 PROTOCOL_MEMORY_LOCKED - 424h
- FAULT_GEN2 PROTOCOL_INSUFFICIENT_POWER - 42Bh
- FAULT_GEN2 PROTOCOL_NON_SPECIFIC_ERROR - 42Fh
- FAULT_GEN2 PROTOCOL_UNKNOWN_ERROR - 430h
- Analog Hardware Abstraction Layer Faults
- Tag ID Buffer Faults
- System Errors
- Common Error Messages
- Appendix D: FPGA Support
Boot Loader Commands
Command Set 47
starting from word address 0x00000000. Since the flash is a 16-bit device, there must be
an even number of data bytes. The number of data bytes to be written is embedded in the
length of the payload (N) by the formula:
LengthDataToWriteInWords = (N – 8) / 2
The password required for each sector is defined in Flash Memory Sector Mapping
.
The following example shows a Write Flash Sector command writing to the Application
Sector, starting at the beginning
Note
DO NOT send a packet that spans two sectors. Split the packet into 2
separate messages, then send the first message to sector “x” and the
second to sector “x+1”.
Get Sector Size (0Eh)
The size of a flash sector can be retrieved from the module using the Get Sector Size
command. Since different products may have different flash sector sizes, this command is
useful for ensuring that the module has enough memory to store the desired data. This
example receives the sector size for the application area:
The response to this command is shown in the following example:
The size of the sector is returned in bytes. Sector 2 (application) is 212992 bytes.
Modify Flash Sector (0Fh)
The Modify Flash Sector command is used as a read-modify-write operation in the
flash. Since the Modify Flash Sector command erases the flash sector each time it is
FF 0F 0D 02 25 44 10 00 00 00 00 02 12 34 56 78 90 12 73 4C
SOH Length OpCode Password Start Address Sector Data To Write CRC
FF 01 OE 02 D1 BF
SOH Length OpCode Sector CRC
FF 04 OE 00 00 00 03 40 00 88 54
SOH Length OpCode Status Size of Sector CRC