This request returns a Fade Engine Data data structure. This structure contains detailed information about all playbacks, all universes and all ports simultaneously.
URL:
/get.cgi?req=fed
Response:
The FadeEngineData structure is variable length. The header of 16 bytes is followed by a variable number of EPIData, UniverseData, and PortData records. The total length of a maximum of 32 playbacks, 128 universes, and 4 ports is currently 8,240 bytes. This may grow in future versions.
typedef struct FadeEngineData { // (16 bytes)
uint16_t signature; // Signature = 'CS'
int16_t version; // Version = 0x0002 (or negative error code)
uint8_t playbacks; // Number of EPIData records (0..32)
uint8_t playbackSize; // Size of EPIData record (currently 160)
uint8_t universes; // Number of UniverseData records (0..128)
uint8_t universeSize; // Size of UniverseData record (currently 24 bytes)
uint8_t ports; // Number of PortData records (0..4)
uint8_t portSize; // Size of PortData record (currently 8 bytes)
uint8_t reserved[6]; // -
uint8_t variableData[]; // EPIData, UniverseData, and PortData records start here
} FadeEngineData;
typedef struct EPIData { // (160 bytes total)
uint8_t version; // Result Version = 0x02
uint8_t playback; // Playback number (1..32)
uint8_t flags; // Flags (0 = Normal, 1 = Stopped, -1 = Not Installed)
uint8_t mode; // Mode (0 = Merge, 1 = Override, 2 = Scale, 3 = Pin)
uint8_t reserved1[4]; // -
int32_t curCueID; // Current Cue ID (0..MAX_CUE_NUMBER, -1=CUE_NONE, -2=CUE_ACTIVE_CHANNELS)
int32_t nextCueID; // Next Cue ID to "Go" to
int32_t linkCueID; // Link Cue ID to link to
FadeTimes fadeTimes; // Current fade/split/delay times
float followTime; // Follow time for next cue go (0 = Do Not Auto-Follow)
uint8_t submaster; // Submaster
uint8_t reserved2[3]; // -
uint32_t fadeCurTime; // Fade progress
uint32_t fadeTotalTime; // Fade total time
float followTimeRemain; // Follow progress
float followTotalTime; // Follow total time
uint32_t streamCurTime; // Stream playback position (ticks)
uint32_t streamTotalTime; // Stream total time (ticks)
uint8_t reserved3[12]; // -
char stackName[STACK_NAME_BUF_SIZE]; // Name of current stack
char curCueName[32]; // Name of current cue
char nextCueName[32]; // Name of next cue
} EPIData;
typedef struct UniverseData { // (24 bytes)
uint8_t version; // Result Version = 0x02
uint8_t universe; // Universe number (1..128)
uint16_t channelIndex; // Starting channel index
uint16_t channelCount; // Width of universe
uint8_t rxProtocol; // Rx Protocol
uint8_t reserved; // -
int16_t rxChannels; // Rx Channels (0..512, -1)
uint16_t rxUniverse; // Rx Universe
uint32_t rxExtra; // Rx Extra Data (port number for KiNET v2)
uint8_t txProtocol; // Tx Protocol
uint8_t txEnabled; // Tx Enabled
uint16_t txUniverse; // Tx Universe
uint32_t txExtra; // Tx Extra Data (port number for KiNET v2)
} UniverseData;
typedef struct PortData { // (8 bytes)
uint8_t version; // Result Version = 0x01
uint8_t port; // Port number (1..4)
uint8_t universe; // Universe number (1..32)
uint8_t direction; // Data direction
uint8_t led; // LED Indicator value
uint8_t reserved1; // -
int16_t channels; // Tx/Rx Channels (0..512, -1)
} PortData;
Errors:
If an error occurs during the processing of the request, only the first four bytes of the above structure will be returned by this URL. The first two bytes will have the “CS” signature and the next two bytes will contain an error value as described by the following table:
| Error Value | Description |
|---|---|
-1 |
An internal shared memory error occurred. |
-2 |
An internal memory error occurred. |

