Open pbag47 opened 2 years ago
NB : it might be needed to implement an asynchronous command directly into the DjiTelloPy module
This issue does not appear to be prohibitive as the drone works well besides the landing and takeoff phase However, it implies that we cannot take back the control of the UAV during these flight modes if something goes wrong, and thus jeopardizes the safety. It also explains why the camera output freezes during Takeoff and Landing flight modes.
If the send_control_command method returns an error, the module then calls that command again for 4 tries before it raises an error (about 10 seconds)
=> 10 seconds during which we are unable to send any other command to the UAV => potential unavoidable crash
Plus for the competition, if the timer is started when the drone takes off, we either need to anticipate the first seconds of the flight path [we currently are unable to send the move command until the takeoff is completed]
When the program sends a control command via the send_control_command method (land, move, takeoff etc ...) or any other command that requires a response from the Tello : the program is stuck waiting for that response and cannot handle any other input / event / process
=> go asynchronous (link to Issue #14)