====== Protocol documentation ====== This is for coordinating our development. ===== Basics ===== First two bytes contain the command. The next two bytes is the length of the data, then the rest is data. ===== Commands ===== We have a 16 bit unsigned integer for commands: ==== Human messages (0 - 9) ==== * [0 - 9] CMD_MESSAGE_[0-9] char - Human messages. 0 is lowest priority, 9 is highest. ==== All processes ==== * 10 CMD_ERROR int - Error occured ==== GPS reader ==== * 5000 CMD_GPS_DATA struct gps_data - GPS data ==== Thermopile reader ==== * 5500 CMD_THERMOPILE_DATA struct thermopile_data - Thermopile data ==== Flight management (6000 - 6999) ==== * 6000 CMD_STATUS int - Status of flight has changed, one of: * 0 - Flight not started * 1 - Ascent * 2 - Descent * 3 - Descent with parachute released * 4 - Landed * 6001 CMD_PARACHUTE bool - Parachute released if size > 0, else a request to release * 6003 CMD_CUTDOWN bool - Glider has been cutdown if size > 0, else a request to release * 6005 CMD_DESIRED_HEADING double - The desired heading calculated by the flight management. * 6006 CMD_ALT_DROP_POSITION int - 0 - not in altitude drop, 1-4, position from north clockwise * 6007 CMD_FINAL_WAYPOINT waypoint_t - The final waypoint, generally the launch point ==== Roll control ==== ==== Pitch control ==== ==== Configuration ==== See configuration files for descriptions and categorisation. * 10000 CMD_CONFIG_... to be finished