jetson nano + M300 + psdk 初始化问题

已完成

评论

15 条评论

  • DJI Developer Support
    您好,M300用E-Port连接时,拓展板TypeC接口侧的拨码开关需要拨到SLAVE侧,您的报错是ACM0端口不存在,主要是主从角色没有切换过来,您可以检查下这个拨码开关是否切换正确。另外执行PSDK的文件时,建议您加上sudo。
    0
    评论操作 固定链接
  • fley_fly

    感谢回复, 按照上述沟通, 我做了如下测试

    1  type C连接 jetson nano otg 端口测的  开关拨到 device 侧; 

    2  sudo 方式执行 PSDK的样例 

    得到了如下结果:

     

    还是无法找到 ACM0   我的jetson nano 是ubuntu 18.04  是不是没有包含ACM的驱动?

     

    另外:我将device 在断电状态下拨到 device和host 两个状态 分别进行了如上的运行测试,得到的结果是一样的。 也是不是可能这个 device开关失效了?

     

    谢谢~~ 

     

    0
    评论操作 固定链接
  • fley_fly

    在dji_sdk_app_info.h 中 将波特率 改为115200  也是一样的情况。

    0
    评论操作 固定链接
  • fley_fly

    我将 e-port 转接板的 payload 端 typeC 口接到  win10笔记本上面,可以看到BULK interface  如上图

     

    0
    评论操作 固定链接
  • DJI Developer Support
    您好,您这个感觉是接入顺序的问题,您可以先这样,TypeC侧的TypeC线缆您先别连接,按照这个步骤:E-Port拓展板先连接飞机,飞机开机,等E-Port电源灯亮起以后,您再连接拓展板的TypeC线缆,先连接E-Port端口,再连接至您的设备USB A,看看此时有没有ACM0。
    0
    评论操作 固定链接
  • fley_fly

    多谢回复~~

    按照上文提示, 先用E-port拓展板连接飞机, 然后开机,等电源灯亮起, 在连接USB A 到jetson nano otg 端口, 依然没有发现 ACM0 ;

    复盘下来, 可能是是bulk 配置的问题,因为:

    1  :发现 /dev/usb-ffs/bulk1 和 bulk2   只有ep0

    2: 执行   

    ps -aux | grep startup_bulk

    得到: nvidia      7818  0.0  0.0  11744   672 pts/0    S+   16:32   0:00 grep --color=auto startup_bulk
      

     

    Payload-SDK-Tutorial/docs/cn/30.quick-start/01.quick-guide/01.jetson-nano.md at master · dji-sdk/Payload-SDK-Tutorial · GitHub  这个配置文档中  有如下描述:

    2. 开启 Jetson Nano 的 USB bulk 功能

    PSDK提供Jetson nano的 usb bulk 配置文件,包括配置脚本(psdk-usb-configure.sh)和配置程序(startup_bulk)。

    /* Back up the bulk configuration file of jetson nano */

    cp /opt/nvidia/l4t-usb-device-mode-start.sh ~/Desktop/nano-usb-config/l4t-usb-device-mode-start-bk.sh

    /* Using PSDK's bulk configuration file */

    sudo cp startup_bulk/psdk-usb-configure.sh /opt/nvidia/l4t-usb-device-mode-start.sh

    /* Set the startup_bulk file path in the script */

    /home/dji/Desktop/startup_bulk/startup_bulk /dev/usb-ffs/bulk1 &

    /home/dji/Desktop/startup_bulk/startup_bulk /dev/usb-ffs/bulk2 &

    /* After restarting the system, make sure that startup_bulk is running normally */

    ps -aux | grep startup_bulk

     

    usb bulk 配置文件  该链接下的 usb-bulk-configuration-reference  压缩包内的 readme.txt  中有如下描述:

    Step 2: 

    -- Replace the nv-l4t-usb-device-mode.sh to /opt/nvidia/l4t-usb-device-mode/

    cp nv-l4t-usb-device-mode.sh /opt/nvidia/l4t-usb-device-mode/nv-l4t-usb-device-mode.sh 

     

    这两个配置文件所说的 

    1 sudo cp startup_bulk/psdk-usb-configure.sh /opt/nvidia/l4t-usb-device-mode-start.sh

    2 cp nv-l4t-usb-device-mode.sh /opt/nvidia/l4t-usb-device-mode/nv-l4t-usb-device-mode.sh 

    这两个文件是替换的同一个文件么?  还是两个不同的文件?

     

    替换重启后:jetson nano 重启出现 udc 700d0000.xudc failed to start l4t : -19

    如下图:

     

     

    0
    评论操作 固定链接
  • fley_fly

    执行  sudo ./nv-l4t-usb-device-mode-start.sh

    得到如下结果:

    ln: failed to create symbolic link 'configs/c.1/ffs.bulk1': File exists 

    bulk1 在/dev/usb-ffs/ 下是存在的 

    0
    评论操作 固定链接
  • DJI Developer Support
    您好,这个和BULK配置没有关系哈,这个ACM0是飞机做从设备,您负载做主设备时才会出现的飞机端口,如果没有ACM0,需要检查您的飞机是否连接到了负载的Device接口,飞机需要做从设备,E-Port拓展板的开关需保持在Device侧,不需要改变。
    0
    评论操作 固定链接
  • fley_fly

    E-port 一直处于Device侧 没有改变啊 

     

    0
    评论操作 固定链接
  • fley_fly

    反复测试 /dev/ttyACM0  还是没有出现啊,   插接顺序 上电顺序 都试了一下。 

    啥情况?  E-port  在host  Device 两侧都测试了, 结果一样, 串口ttyUSB0 可以使用正常通信,得到飞机ID ;

    就是没有 /dev/ttyACM0, 如之奈何?

    0
    评论操作 固定链接
  • DJI Developer Support
    您可以参考下附图的连接,先连接E-Port同轴线到飞机OSDK端口,待E-Port拓展板电源灯亮起以后,再将TypeC端连接至您设备的USBA。
    0
    评论操作 固定链接
  • fley_fly

    没有看到图  亲~~

    0
    评论操作 固定链接
  • fley_fly

    谢谢    说明手册中是连接 nano的 otg mini usb  接口的,  但是适配的是M350 ; 

    我们用的M300  直接连接USBA 就可以了。   

    0
    评论操作 固定链接
  • bon

    hi fley_fly, did you manage to get this working?

    im having the same issue but on Jetson Orin Nano. 

    you can try this:

    with the usb cable coming from the eport disconnected run 
    sudo dmesg -w

     

    give it some space with Enter 

    plug the usb cable to the jetson and check if you have something there


    if you see that the ttyACM0 gets enabled and disabled try this
    open another terminal and type:
    sudo modprobe cdc-acm 


    you will see in the dmesg log that cdc_acm gets enabled

    then unplug and plug the cable again

    you may see the ttyACM0

    but/// unfortunately that does not fix the usb bulk configuration. im stuck there too. 

    0
    评论操作 固定链接
  • 让你见笑

    请问下,我为什么按照到手即用手册,编译出来的是dji_sdk_demo_linux_cxx ?

    1
    评论操作 固定链接

请先登录再写评论。