M300 RTK使用Skyport转接环和Xport时候,以及使用E-port套件,运行demo均失败
已完成M300 RTK使用Skyport转接环和Xport搭配Psdk开发板,运行demo的时候,出现报错:
cat@lubancat:~/dji/Payload-SDK/build/bin$ sudo ./dji_sdk_demo_linux
'Logs/latest.log' -> 'DJI_0042_20240326_00-03-44.log'
[0.024][core]-[Info]-[DjiCore_Init:101) Payload SDK Version : V3.8.0-beta.0-build.1929
[2.497][adapter]-[Info]-[DjiAccessAdapter_Init:212) Try identify UART0 connection failed. Probably because SDK adapter or aircraft not finish init or UART connect error.
[5.041][adapter]-[Info]-[DjiAccessAdapter_Init:212) Try identify UART0 connection failed. Probably because SDK adapter or aircraft not finish init or UART connect error.
[7.609][adapter]-[Info]-[DjiAccessAdapter_Init:212) Try identify UART0 connection failed. Probably because SDK adapter or aircraft not finish init or UART connect error.
[10.216][adapter]-[Info]-[DjiAccessAdapter_Init:212) Try identify UART0 connection failed. Probably because SDK adapter or aircraft not finish init or UART connect error.
[12.853][adapter]-[Info]-[DjiAccessAdapter_Init:212) Try identify UART0 connection failed. Probably because SDK adapter or aircraft not finish init or UART connect error.
[15.499][adapter]-[Info]-[DjiAccessAdapter_Init:212) Try identify UART0 connection failed. Probably because SDK adapter or aircraft not finish init or UART connect error.
[18.194][adapter]-[Info]-[DjiAccessAdapter_Init:212) Try identify UART0 connection failed. Probably because SDK adapter or aircraft not finish init or UART connect error.
[20.901][adapter]-[Info]-[DjiAccessAdapter_Init:212) Try identify UART0 connection failed. Probably because SDK adapter or aircraft not finish init or UART connect error.
[23.635][adapter]-[Info]-[DjiAccessAdapter_Init:212) Try identify UART0 connection failed. Probably because SDK adapter or aircraft not finish init or UART connect error.
[23.635][adapter]-[Info]-[DjiAccessAdapter_Init:212) Try identify UART0 connection failed. Probably because SDK adapter or aircraft not finish init or UART connect error.
[23.635][adapter]-[Error]-[DjiAccessAdapter_Init:217) Try identify UART0 connection timeout. Probably because SDK adapter or aircraft not finish init or UART connect error.
[23.635][adapter]-[Error]-[DjiAccessAdapter_Init:217) Try identify UART0 connection timeout. Probably because SDK adapter or aircraft not finish init or UART connect error.
M300 RTK在使用OSDK口,连接E-port开发板时候,能够识别飞机,但是依然有报错:
cat@lubancat:~/dji/Payload-SDK/build/bin$ sudo ./dji_sdk_demo_linux
'Logs/latest.log' -> 'DJI_0034_20240325_22-47-58.log'
[0.025][core]-[Info]-[DjiCore_Init:101) Payload SDK Version : V3.8.0-beta.0-build.1929
[2.078][utils]-[Info]-[DjiSdkVersionAck_Parse:183) Identify aircraft serial number = 1ZNDH3L0010456, Firmware = 3.4.18.42
[2.080][adapter]-[Info]-[DjiAccessAdapter_Init:228) Identify aircraft series is Matrice 300 Series
[2.080][adapter]-[Info]-[DjiAccessAdapter_Init:261) Identify mount position type is Extension Port Type
[2.194][adapter]-[Info]-[DjiAccessAdapter_Init:340) Now auto reconfigure baudrate from 230400 to 460800
[4.463][adapter]-[Info]-[DjiAccessAdapter_Init:228) Identify aircraft series is Matrice 300 Series
[4.463][adapter]-[Info]-[DjiAccessAdapter_Init:261) Identify mount position type is Extension Port Type
[4.565][adapter]-[Info]-[DjiAccessAdapter_Init:362) Identity uart0 baudrate is 460800 bps
[4.565][adapter]-[Info]-[DjiPayloadNegotiate_Init:147) No need negotiate device info
[4.723][adapter]-[Info]-[DjiPayloadNegotiate_Init:147) No need negotiate device info
[6.724][linker]-[Warn]-[DjiCommand_SendAsyncHandle:894) Command async send retry: index = 0, retryTimes = 3, cmdSet = 0, cmdId = 0
[8.725][linker]-[Warn]-[DjiCommand_SendAsyncHandle:894) Command async send retry: index = 0, retryTimes = 2, cmdSet = 0, cmdId = 0
[10.726][linker]-[Warn]-[DjiCommand_SendAsyncHandle:894) Command async send retry: index = 0, retryTimes = 1, cmdSet = 0, cmdId = 0
[12.727][linker]-[Error]-[DjiCommand_SendAsyncHandle:906) Command async send error 0
[12.727][linker]-[Error]-[DjiCommand_SendSync:489) sendSync callback timeout
[12.727][auth]-[Error]-[DjiSdkActivate_GetDroneSWVersionSync:199) Get OSDK version send error:0x000000E1.
[12.727][auth]-[Error]-[DjiSdkActivate_GetDroneSWVersionSync:200) Execution timeout. Suggestion : Please contact DJI for help.
[12.727][auth]-[Error]-[DjiSdkActivate_ExtensionPortActivateSync:74) Request to get version sync error
并且我在DJI Assitants2上面再Payload栏目,显示没有连接到负载设备。
并且Xport在上电自检之后,云台就不动了,像是关机了一样。
-
尊敬的开发者, 您好,感谢您联系DJI 大疆创新。 抱歉让您久等了, 您上传了两份日志,第一份日志是完全没有检测到串口有信息交互,导致运行程序时报错,第二份是在OSDK端口运行,后面也是串口通信失败引起的PSDK程序错误。 请问一下您使用的是板载串口还是USB-TTL,我们推荐您使用FT232,实测下来这个会稳定一些,另外第一份报错您可以检查下Payload开发套件的拓展板电源灯是否正常亮起,串口TX RX交叉一下看是否反接了。 第二份日志,可以确认下E-Port拓展板的拨码开关是否拨到了Device侧,M300是需要无人机作为Device。 另外,您可以先在PSDK中设置链路为Only_Uart,先确保您的串口正常。 》并且我在DJI Assitants2上面再Payload栏目,显示没有连接到负载设备。 这个是因为您的PSDK没有正常起来,所以显示没有连接。指的是PSDK的状态。 》并且Xport在上电自检之后,云台就不动了,像是关机了一样。 这个也是需要您的PSDK连接在X-Port上运行起来,您才能正常使用X-Port的功能。 感谢您对大疆产品的支持!祝您一切顺利! Best Regards, DJI 大疆创新SDK技术支持 -
非常感谢,针对你提到的问题点:
1. 请问一下您使用的是板载串口还是USB-TTL:我使用的是USB转TTL,型号我记不清,我将会尝试更换FT232的模块。
2. 第一份报错您可以检查下Payload开发套件的拓展板电源灯是否正常亮起,串口TX RX交叉一下看是否反接了:电源灯正常亮,RX和TX没有接反,因为USB转TTL上面的RX和TX灯会闪,并且行为符合预期的。
3.第二份日志,可以确认下E-Port拓展板的拨码开关是否拨到了Device侧,M300是需要无人机作为Device:是的,并且通过检查,有/dev/ttyACM0设备。
你提到的其他建议已收到,我将再次尝试。
额外再问一个问题,如何升级Xport和Skyport转接环的固件?以及如何查看我的Xport和Skyport的固件版本?因为我注意到飞机和各部件之间有固件版本的兼容要求。
-
您好, >RX交叉一下看是否反接了:电源灯正常亮,RX和TX没有接反,因为USB转TTL上面的RX和TX灯会闪,并且行为符合预期的。 如果是这样,我们建议您先更换下USB-TTL看是否有改善。之前也有开发者遇到过这个问题,通过更换USB-TTL以后解决了。 >额外再问一个问题,如何升级Xport和Skyport转接环的固件?以及如何查看我的Xport和Skyport的固件版本?因为我注意到飞机和各部件之间有固件版本的兼容要求。 这个您可以通过DJI Assistant2软件查看和升级。 可以在此处下载:https://enterprise.dji.com/cn/matrice-300/downloads -
您好,根据您昨天的提示,我在更新了Xport和飞机的固件,并且改用直接TTL连接串口,Xport的demo成功运行起来了,各项功能符合预期,但是在运行的时候,M300遥控器的健康管理中,报告了航电系统错误:
当飞机不安装Xport,不运行demo的时候,遥控器上就是没有这个报错的。请问这个是什么原因呢。
第二个问题,我买的Skyport转接环不是全新的,当我连接Skyport运行demo的时候,串口依然无法正常沟通(此时的串口硬件跟上面Xport一致),调整波特率也没有改善,此时我在Assitant2上面的PayloadSDK栏目中,发现未绑定,尝试绑定,提示无法获取负载信息。
请问这个情况是因为什么呢?还有这个绑定是什么含义呀,是只这个Skyport转接环和飞机进行绑定是吗?
感谢您的关注,还麻烦再帮忙解答一下。
请先登录再写评论。
评论
7 条评论