User's Manual

QTI Page 12 of 15 Revision: C
Form #: 30Z0266 Effective Date: 5 October 2012
SRN… Get the unit serial number.
The serial number is a string up to 8 characters long.
Get serial number: SRN<CR>
Returns: SRN Z<CR>
TMP… Get the board temperature in degrees Celsius (decimal), with a tenth degree precision (250 =
25.0C).
Get temperature: TMP<CR>
Returns: TMP Z<CR>
VER… Get the unit version.
MCDR is the model, <space>, VVVV is the firmware version (Major.Minor.Build.Rev),
<space>, M is the message types supported (0 = standard [MIDS/EMIDS], 1 = custom), B is
the frequency band (0 = low, 1 = mid, 2 = high), H is the hardware capabilities (1 = receive
only, 2 = transmit only, 3 = both), R is the hardware board revision.
Get version: VER<CR>
Returns: MCDR VVVV MBHR<CR>
Checksum
To use checksum begin the command with “#” plus the unit serial ID and end the command with the
calculated checksum (cs) value followed by the carriage return <CR>. A command with an invalid
checksum or invalid serial ID is ignored and no reply is sent. The checksum is a 2 digit hexadecimal
calculated as the 2’s compliment of the sum of the command string including the “#” and serial ID.
Using the checksum also allows and requires using the serial ID. The universal serial ID is X, so all
units will acknowledge these commands. The unit will respond with its specific serial ID.
Sample syntax:
Action With Checksum Without Checksum
Get receive channel: #XCHRA8<CR> CHR<CR>
Returns: #ACHR 196FF<CR> CHR 196<CR>
Set receive channel to 2: #XCHR 256<CR> CHR 2<CR>
Returns: #ACHR 2 OKB3<CR> CHR 2<CR>
Note: “A” is just a sample serial ID, and may be different.
Example checksum C-Code calculator
char CRC2sComp( char *buffr, int end) { //creates 2's complement
int c;
int calcSum = 0;
for( c = 0; c <= end; c ++ )
{ calcSum += buffr[c]; }
calcSum ^= 0xFF; //1's complement
calcSum += 1; //now 2's complement
return (char)(calcSum);
}