连接开发板时 USB转TTL串口模块是必须的嘛?

Completed

Comments

16 comments

  • DJI Developer Support
    您好, 1、不是必须的,但是我们建议开发者使用,因为有些开发板的板载串口会有频偏的问题和兼容性的问题,导致无法正常运行PSDK。 2、主要用来完成串口通信的,涉及到的功能有自定义控件、数据订阅、相机管理、云台管理、飞行控制。 3、串口链路带宽较小,一般用来完成纯指令相关的操作,如果涉及到传输视频等对带宽要求较高的功能,则需要用到USB。 4、这个可能需要您实际验证下了,因为有部分开发者会遇到双头TypeC不能够正常使用的情况,必须使用OTG线缆。
    0
    Comment actions Permalink
  • 一条直线

    感谢答复,在这种连接方式下(一个双 typec 连接 + 一个 usb-ttl 模块)网口信息应该怎么配置呢?

    1. 在一些介绍配置的文档中有看到使用usb网卡的,并且还需要查询和配置其pid,vid信息,但是我们这种连接方式中似乎不涉及网卡,那么示例程序中对网口的配置部分应该怎么做呢?

    2. 这种连接方式属于DJI_USE_UART_ONLY吗?

    0
    Comment actions Permalink
  • DJI Developer Support
    您好, 这种是需要配置USB RNDIS的,您可以了解下https://sdk-forum.dji.net/hc/zh-cn/articles/10232604141465-%E6%A0%91%E8%8E%93%E6%B4%BE4B%E9%85%8D%E7%BD%AEUSB-device-RNDIS-%E5%92%8C-BULK 这篇文章的RNDIS配置,不涉及USB网卡的。 这种方式属于UART&NETWORK。
    0
    Comment actions Permalink
  • 一条直线

    不涉及USB网卡的配置好像很难,而且这个介绍是树莓派4B的,在我的RK3568上难以复刻,很多报错。

    目前接上无人机后的情况是,双typec这一条链路是生效的,插拔双typec线,会影响 ttyACM0 这个端口。但是我这边没有ttyUSB0这个端口,也就是第二个线路usb-ttl这个线路应该没有生效。问题:

    1. acm0和usb0这两个中,usb0是更重要的,acm0是可有可无的是吗?因为看到有文档说M300机型才需要两个,其他机型只需要1个即可,我是M30T。

    2.我没有出现usb0是因为没有配置好 bulk 导致的吗?

    3.不想配置bulk,是否可以用usb网卡的方式作为代替?

    0
    Comment actions Permalink
  • DJI Developer Support
    您好,RK3568会有差异的,这部分我们没有相关的教程,可能需要自行排障更改下脚本,大体流程是一样的。 1、如果是M30T机型,不需要ACM0,可以检查一下E-Port拓展板的拨码开关是否拨到了Device侧,需要处于Host的位置才行。 2、是的,usb0的配置与bulk相关,您可以检查一下bulk的配置。
    0
    Comment actions Permalink
  • 一条直线

    感谢答复,其实最关心第三个问题,因为在配置 bulk 时出现了很多难以解决的问题,所以目前准备换成 usb 网卡的配置方式,也就是把 “双typec” 这条线路 换成 “usb网卡+网线”,从而省去bulk配置,这样是否可行?

    0
    Comment actions Permalink
  • DJI Developer Support
    您好,可以的,M30T是支持这样的方式,您可以参考下这个文档: PSDK各机型连接(M350/M300/M30/M30T/M3E/M3T/M3D/M3TD) 支持的USB网卡型号只有两种:AX88179A、RTL8152
    0
    Comment actions Permalink
  • zqh

    @一条直线 你好,请问你在rk3568平台上实现了拉流的功能吗? 我用的3588,卡在配置rndis了

    0
    Comment actions Permalink
  • 一条直线

    别配那个了,那个配不好的,很难配,网上没有参考资料,也没有原理介绍,用USB网卡+网线就好了;https://sdk-forum.dji.net/hc/zh-cn/articles/15754783739545-M30-T-M3E%E6%9C%BA%E5%9E%8BPSDK%E7%AB%AF%E5%8F%A3USB-%E7%BD%91%E5%8D%A1%E8%AE%BE%E7%BD%AE

    0
    Comment actions Permalink
  • zqh

    按照这个教程,可以跑通, 但是在rk3588上拉流显示的画面非常卡, 你有遇到这种情况吗

    0
    Comment actions Permalink
  • 一条直线

    是挺卡的因为rk那板子性能不咋地,里面用的ffmpeg解码,板子也不是很兼容(比较兼容gstreamer,有硬件加速),你要是用电脑虚拟机做就不会卡了。卡主要还是在播放过程中调用ffmpeg处理视频流卡

    0
    Comment actions Permalink
  • zqh

    按道理说,我用了h264_rkmpp解码器, 这个应该属于硬件解码的

    0
    Comment actions Permalink
  • 一条直线

    你具体咋做的,如果是C++示例的功能,它是用ffmpeg播的所以延迟挺高掉帧严重,如果你是自己做的播放功能那就不好说是什么问题了,获取视频流的回调函数里面不能写太多代码,回调函数里面要简单一点;

    0
    Comment actions Permalink
  • zqh

    是C++示例的功能, 我的意思是ffmpeg在这里面充当是解码的功能,而我调用的解码器是h264_rkmpp, 属于硬件解码,理论上不会这么卡。 我们自己用rk3588 连接云台作拉流测试的时候,调用的也是h264_rkmpp,结果是正常的。

    0
    Comment actions Permalink
  • 一条直线

    那就不太了解了呃

    0
    Comment actions Permalink
  • zqh

    我昨天试了下, 硬解码不行, 强行指定软解是正常的, 不卡顿, 延迟在300ms左右

    0
    Comment actions Permalink

Please sign in to leave a comment.