串口不对
运行下面的代码看一下所有串口,确保…/build/bin/UserConfig.txt里面的串口和你在用的对应起来。
ls -l /dev/ttyS*
权限不够的话用root权限再看
sudo su
串口通信不正常
注意报这个错的原因一般有:
- Assistant里面没有设置好SDK控制模式,设置一下就好了。
不会吧不会吧,不会真有人用osdk还不勾这一项吧 - 波特率不匹配,这个要给他改成匹配的才能正常。
比如Assistant 2里面是230400,那…/build/bin中的UserConfig.txt里面也要调成230400 - TX 和 RX串口接反了,调过来就行。
只要你没乱接VCC,就都好说 - 串口被占用了,这个有时候多插拔或者换个口就好了。
- 权限不够,给一下权限就好了,代码图上都给了。
电机不动
你没有看错,就是电机不动。不管怎么跑都是Takeoff failed,有时候是Motors are not spinning,有时候是Aircraft is still on the ground,but the motors are spinning。
其实大部分人都不会有这个问题
但是有个傻逼(我)搞了三天
解决的方式也很简单,换一台性能好一点的电脑跑Assistant 2 里面的仿真就好了,性能太差就会出现这种问题。 从此就有了正大光明换电脑的理由
参考文献
https://developer.dji.com/cn/onboard-sdk/documentation/quickstart/run-the-sample.html#%E8%BF%90%E8%A1%8Clinux-%E7%A4%BA%E4%BE%8B%E4%BB%A3%E7%A0%81