RGBlink
← Back to Support Hub

proStream

Support For Individuals

Use this path when the issue is tied to creator hardware, mini-series workflows, livestream setup, or OpenAPI control for streaming products.

Mini-series devices, TAO, ASK, MSP, encoders, and creator workflowsOpenAPI questions for streaming devices and command syntaxSetup, firmware, configuration, or live production troubleshooting

AI Support Search

I can search across RGBlink support data to find the most relevant knowledge articles, products, and public documents.

Support Knowledge

Select an article from the menu to view full content here.

API / API Structure / Command Structure

Command Structure

Instructions to devices are made ASCII formatted with data elements in HEX.

Data Format

Transmit Instruction

Sending packets to devices must be in the format below. Note TYPE = "T" for transmit

HeaderTypeDataEnd
<TADDR + SEQN + CMMD + DAT1 + DAT2 + DAT3 + DAT4 + CHKS>
bytes11161

Receive Response

Packets received from a device are in below format. Note TYPE = "F" for transmit

HeaderTypeDataEnd
<FADDR + SEQN + CMMD + DAT1 + DAT2 + DAT3 + DAT4 + CHKS>
bytes11161

Example: Transmit

<T000268010000006B>
Byte Position123&45&67&89&1011&1213&1415&1617&1819
ElementADDRSEQNCMMDDAT1DAT2DAT3DAT4CHKS
ASCII Data<T000268010000006B>
HEX Data3C4600 0000 0236 3800 0100 0000 0000 006B3E

Data Elements

Definitions

Data sent or received is structured with elements

AttributeNameBytesByte PositionDefault Value
ADDRAddress2300id of connected device
SEQNSequence Number2500used for transmission control
CMMDCommand27valid command for connected device
DAT1Data 1291st data value for the CMD
DAT2Data 22112nd data value for the CMD
DAT3Data 32133rd data value for the CMD
DAT4Data 42154th data value for the CMD
CHKSChecksum217add the values of all preceding elements ie. ADDR + SEQN + CMMD + DAT1 + DAT2 + DAT3 + DAT4

Sequence Number (SEQN)

SEQN is used for data transmission control/flow.

SEQN=0x00 is set to establish a connection.

Each time the host sends a command, the SEQN increases by one. The host must control the flow according to the SEQN of the sent command and the SEQN of the received command. The host should only send the next command only if it has received the reply of the previous command. The use of SEQN flow control can reduce the time from sending a command to waiting for reception. It supports the linking of multiple instructions, which must be executed in sequence.

Checksum

A Checksum is used to validate the transmitted/received data. The checksum is a simple addition of the other/preceding data elements (2 byte elements in positions 3 to 16), with the right 2 bits of the sum being the checksum.

CHKS=@right(ADDR+SEQN+CMMD+DAT1+DAT2+DAT3+DAT4,2)

Example: Transmit

<T000268010000006B>

where 6B is the Checksum

Checksum is calculated as: 0x00 + 0x02 + 0x68 + 0x01 + 0x00 + 0x00 = 6B

Byte Position357911131517
ElementADDRSEQNCMMDDAT1DAT2DAT3DAT4CHKS
ASCII Data000268010000006B

Example: Receive

<F00006A1155550025>

where 25 is the Checksum

Checksum is calculated as: 0x00 + 0x02 + 0x68 + 0x01 + 0x00 + 0x00 = 125 => @right(125,2bits) = 12. Checksum is 25

Byte Position357911131517
ElementADDRSEQNCMMDDAT1DAT2DAT3DAT4CHKS
ASCII Data00006A1155550025

Data Elements

DATx elements are used define the specific properties or to specify the size of trailing buffer payloads. In particular, commands 0xF0 (Set Operations) and 0xF1 (Query Device) use DAT3 and DAT4 to

indicate the length of the data block with DAT4 being the upper 8bits of the buffer/payload length and DAT3 being the lower 8bits of the buffer/payload length (to be concatenated).

Errors

Commands not accepted or with invalid DATx elements will have am Error Response in the format

  • FF is returned in the DATx elements

  • where below, XX (XX XX) is the CMMD that was received by the processor and ZZ (ZZ ZZ) is the Checksum

<F0000XXFFFFFFFFZZ>
Byte Position123&45&67&89&1011&1213&1415&1617&1819
ElementADDRSEQNCMMDDAT1DAT2DAT3DAT4CHKS
ASCII Data<T0002XXFFFFFFFFZZ>
HEX Data3C4600 0000 02XX XX0F 0F0F 0F0F 0F0F 0FZZ ZZ3E