Warning

You are reading an old version of this documentation. If you want up-to-date information, please have a look at 2023.9 .

Protocol specifications

Asycube communication protocol

The host controller communication protocol uses only ASCII characters and is designed for communication networks. The host computer is always the client. Servers transmit only after receiving a message from the client.

Command / Response Format
Command: Begin, Command, End, CRLF
Response: Begin, Response, End, CRLF
Begin

The ASCII char { must be the first character of the packet, which allows detection of a new packet.

Command

This field contains ASCII characters that specify the purpose of the message. The available Commands are listed further in the documentation.

Response

This field contains a fixed format that specifies the validation of the instruction. The Asycube gives a response message for each corresponding instruction.

End

The ASCII char } must be placed just after the Command or Response

CRLF

The ASCII chars carriage return 0x0D (also known as \r) and line feed 0x0A (also known as \n) are the last two bytes of the packet, for both sending and receiving.

Table 8 ASCII Character

0 to 9

not case sensitive

a to z, A to Z

{

begin of packet

:

specifies read operation

=

specifies write operation

}

end of packet

( or ) or ;

special delimiters

CR

0x0D Carriage Return

LF

0x0A Line Feed

Note

For more information on all commands available, see chapter Commands.

Error codes

The serial response gives an error code in the form of an integer value. You have to convert the value to binary to obtain the error bit affected. For example, a response {Er00004} means that the system does not recognized the first character of the command.

Table 9 Communication error code

Binary

Error Bit

Message

[00001]

0

Message string syntax error!

[00002]

1

String to integer data convert error! , even/off according to read/write

[00004]

2

Unknown first character of command!

[00008]

3

Unknown second character of command!

[00016]

4

Parameter value error!

[00032]

5

Sequence vibration duration value 0 error!

[00064]

6

Access to the vibration set or sequence ID 26 error!

[00128]

7

Not used

[00256]

8

Receive buffer is full!

[00512]

9

Receive end of message } but receive buffer is full!

[01024]

10

Receive end of message } but missing begin of message {!

[02048]

11

[04096]

12

Framing error detected!

[08192]

13

Parity error detected!

[16384]

14

Overflow error detected!

[32768]

15

Receive complete message timeout control!