8 - Commands
eDynamo| Secure Card Reader Authenticator | Programmer’s Manual (COMMANDS)
Page 89 of 245 (
D998200115-17
)
8.3.15
Command 0x49 - Send Extended Command Packet (Extended Commands Only)
The host uses this command to send
extended commands
to the device as one or more data packets.
This
extended commands protocol
doubles the command number namespace to two bytes, doubles the
result code namespace to two bytes, and supports commands and responses which require larger data
payloads than those available for standard commands (shown in
If the required command data is 52 bytes or shorter, the host can send the entire command using a single
extended command packet. If the command data is longer than 52 bytes, the host should split the data
into multiple packets of 52 or fewer bytes, and send multiple extended command packets. Assuming 52-
byte packets, the first packet the host sends should specify Extended Data Offset = 0, the next packet
should specify Extended Data Offset = 52, and so on, until the host has sent all the command data. The
device’s response to each packet contains either an extended command result code or a standard result
code for the command that was sent:
Result Code 0x0B - Extended Protocol Request Pending
indicates the device is buffering the
incoming data and expects the host to send subsequent packets.
Result Code 0x0A - Extended Command Response
indicates the device has received the complete
data set and has executed the command. If the device has 52 bytes or fewer to return to the host, that
concludes the round trip of the command. If the response data is greater than 52 bytes, the host must
retrieve additional data by continuing to call
Command 0x4A - Get Extended Response
retrieved all response data.
Standard Result Code.
When using this command to invoke a standard command (as opposed to an
extended command), see the Result Codes in the documentation for the command the host is
invoking.
To simplify the development of custom host software, developers who are working exclusively with
devices that support extended commands may choose to send all commands, including the single-byte
commands described in this manual, using the extended commands protocol.
Table 8-32 - Request Data for Command 0x49 - Send Extended Command Packet (Extended Commands
Only)
Offset Field Name
Description
0..1
Extended
Data Offset
This field is in big endian format. It indicates the byte offset position of this
packet’s Extended Data field, relative to the complete extended data field being
sent as multiple packets. The Extended Data Offset of Packet 0 is 0.
2..3
Extended
Command
Number
This field is in big endian format and contains the number of the command to
execute. For one-byte command numbers, the high byte should be set to zero.
4..5
Complete
Extended
Data Length
This field is in big endian format and gives the total length of the Extended Data
field the host is sending as multiple packets.
6..n
Extended
Data
This field contains either part or all of the extended data request the host is
sending to the device. The size of this Extended Data field can be determined
by subtracting the Extended Data field’s offset within the request (6) from the
request’s total data length (N). In most cases the request’s complete data
payload can have a maximum value of 58 (for example see section
to Send Commands On the USB Connection
), so this field can have a
maximum length of 58 - 6 = 52 bytes.