...
The data telemetry system would facilitate seamless data transfer from the flight and ground station using XBees. On the ground-side, we would receive the data from the flight through the GroundReceive module which decodes the data from MavLink format and send it to the GUI. The GUI will then send back the data to the GroundSend module, which encodes the data back to MavLink format and sends it to the flight.
GroundReceive Module
...
The GroundReceive module has an XBeesInterface to read in the data from the other XBees device on the flight using the read_data() function. After reading the data, we would have a GroundReceiveWorker() function that will be passed as a callback to the interface to decode data from MavLink and send it to the GUI.
...