+// Remote Capability Command
+// Initiated by the master to trigger a capability on a given node
+// RemoteOutput is enabled while capability is activated
+// Set id to 255 if command should be sent in all directions
+typedef struct RemoteCapabilityCommand {
+ Command command;
+ uint8_t id;
+ uint8_t capabilityIndex;
+ uint8_t state;
+ uint8_t stateType;
+ uint8_t numArgs; // # of bytes, args may be larger than 1 byte
+ uint8_t firstArg[0];
+} RemoteCapabilityCommand;
+
+// Remote Output Command
+// Sends debug output to the master node
+// Uses print command redirection to generate each command message
+typedef struct RemoteOutputCommand {
+ Command command;
+ uint8_t id;
+ uint8_t length;
+ uint8_t firstChar[0];
+} RemoteOutputCommand;
+
+// Remote Input Command
+// Sends debug input to given node (usually from master)
+// Uses debug cli to execute command and sends all output using Remote Output Command
+typedef struct RemoteInputCommand {
+ Command command;
+ uint8_t id;
+ uint8_t length;
+ uint8_t firstChar[0];
+} RemoteInputCommand;
+
+
+
+// ----- Variables -----
+
+extern uint8_t Connect_id;
+extern uint8_t Connect_master; // Set if master
+