[Draft] 2022 Data link protocol
Protocol (metadata) Requirements:
time epoch or actual time?
CRC (crc8, or sketchy literal checksum that xbee already uses)
payload type (could stick this in xbee protocol as well, but less organized I guess?)
Protocol Definition:
time [uint32]
payload type [uint8]
01 for gps/imu/motor outputs
02 for adding waypoints
03 for drone specific
etc
payload
CRC [uint8]
xbees use sums to do crc, THAT CANNOT BE DISABLED, so we must do it regardless
Suggest CRC methods that we would prefer over this built in basic sum
Air-Ground Payload (this is common for all comps, all UAVs, etc)
GPS Data
lat [float]
long [float]
altitude [float]
IMU Data
yaw [float]
pitch [float]
roll [float]
motor outputs
12 outputs [uint8]
Air-Ground Payload (drone/comp specific things)
Grabber Status [uint8]
other?
Ground-Air Payload
Add/Replace (whether to add these waypoints, or replace the existing waypoints) [uint8/bool]
Fixed length of Waypoints of lets say 5
lat [float]
long [float]
altitude [float]