Archimonde666 / Challenge-drone-EA

GNU General Public License v3.0
0 stars 1 forks source link

Drone communication freezes during takeoff and land #22

Open pbag47 opened 2 years ago

pbag47 commented 2 years ago

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)

pbag47 commented 2 years ago

NB : it might be needed to implement an asynchronous command directly into the DjiTelloPy module

pbag47 commented 2 years ago

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]