Drift much if controlled by keyboard but very stable if controlled by freeflight APP


Product:Ar Drone 2.0
Product version: power edition
SDK version: 2.0
Use of libARController: [YES/NO] (Only for ARSDK) No
SDK platform: [iOS/Android/Unix/Python…] Ubuntu
Reproductible with the official app: [YES/NO/Not tried] Not sure the meaning
Hi guys,
Have any one run into the problem that the Ar.Drone 2.0 drift much when turn left/right if controlled by keyboard? But it turns good if I control it by Freeflight APP.
The keyboard control using the Generic Keyboard Teleop for ROS https://github.com/Irismoon/teleop_twist_keyboard and publish the keyboard operation to cmd_vel topic. All directions go well when I control flight by keyboard except turn left/right namely cmd.angular.z in program. But turn left/right could be controlled well Freeflight APP.
so I think it’s not due to positioning deficiency but the different operation of turn left/right between keyboard and Freeflight APP. May Freeflight APP control turn not by cmd_vel topic. Am I right?
Any one know why? Really confused. Thank you!
By the way, ubuntu is run in virtual machine and ros&ardrone_autonomy is run in ubuntu.
This is not my own problem. A similar post is here https://github.com/AutonomyLab/ardrone_autonomy/issues/9 and not resolved.