Agent Server

Overview

To aid third party tools RAPIDSEA supports a TCP/IP server feature over which it can receive control/debug packets. It is a simple protocol running on port 10002 as explained below.

Frame Structure

The transmit and receive frames are of fixed size of 64 bytes each with the following structure.

Agent Frame

Offset

Size

Description

0x00

1

Header. 0xA5 for transmit frame and 0xA2 for receive frame

0x01

1

Command. Indicates the action to be taken

0x02

1

Sub-Command. Contains more information about the command

0x03

1

Status. Result of the last command

0x04

1

Tx Sequence. 8-bit incremental counter to indicate the transmit sequence.

0x05

1

Rx Sequence. 8-bit incremental counter to transmit back the last receive sequence.

0x06

56

Data corresponding to the command.

0x3E

1

Reserved. Should be 0.

0x3F

1

Footer. 0xAE.

Following commands are supported.

Command Supported

Code

Command

Description

Response

0x00

IDLE

Do nothing

No response found

0x01

WRITE_DATA

Extracts colon separated Data ID and Value string and writes the same. For e.g, “model.gear_factor: 1.1”.

Updated value from the given ID is returned as coma separated values.

0x02

READ_DATA

Reads the value corresponding to the Data. For e.g, “model.gear_factor”.

Returns the data name along with its value in colon separated format. For e.g, “model.gear_factor: 1.1”.

Application Interface

There is no dedicated application interface for this port as it is expected to be a purely internal functionality.

Agent Header Details

Documentation from the relevant header as follows:

Functions

void rs_agent_server_task(void)
void rs_agent_set_debug_info(void *ptr_debug_buf, uint32_t u32_debug_size)