Please select Into the mobile phone version | Continue to access the computer ver.
Error when launching dji_sdk_node
1461 9 2020-6-9
Uploading and Loding Picture ...(0/1)
o(^-^)o
kjhardrict
lvl.2

United States
Offline

Hi everyone,

I am having trouble running the initial node described in the documentation.

The main error is: [2579543.511]ERRORLOG/1 @ initVehicle, L215: Failed to initialize Linker channel

I feel as if the error revolves around what I set serial_name and acm_name to? Is there easy way to verify that the values I set to those two parameters are correct?

I am running Ubuntu 18.04 and ROS Melodic.

My output when I use the command "dmesg | grep tty" is:
[    2.476545] printk: console [tty0] enabled
[    4.577417] 00:05: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
[    7.779445] cdc_acm 1-2:1.0: ttyACM0: USB ACM device
[  435.308771] cdc_acm 1-3:1.0: ttyACM1: USB ACM device
[  780.472566] cdc_acm 1-3:1.0: ttyACM0: USB ACM device
[  791.374786] cdc_acm 1-2:1.0: ttyACM1: USB ACM device
[  856.651303] cdc_acm 1-3:1.0: ttyACM0: USB ACM device


The entire output when I run "roslaunch dji_osdk_ros dji_sdk_node.launch" is this:

kjhardrict@ubuntu:/dev$ roslaunch dji_osdk_ros dji_sdk_node.launch
... logging to /home/kjhardrict/.ros/log/0ad0e50e-aa68-11ea-b761-000c2982f0af/roslaunch-ubuntu-3956.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://ubuntu:42303/

SUMMARY
========

PARAMETERS
* /dji_sdk/acm_name: /dev/ttyACM0
* /dji_sdk/align_time: False
* /dji_sdk/app_id: 1089099
* /dji_sdk/app_version: 1
* /dji_sdk/baud_rate: 921600
* /dji_sdk/dxc: False
* /dji_sdk/enc_key: a263fdc78e88cca16...
* /dji_sdk/serial_name: /dev/tty0
* /dji_sdk/use_broadcast: False
* /rosdistro: melodic
* /rosversion: 1.14.5

NODES
  /
    dji_sdk (dji_osdk_ros/dji_sdk_node)

auto-starting new master
process[master]: started with pid [3966]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 0ad0e50e-aa68-11ea-b761-000c2982f0af
process[rosout-1]: started with pid [3977]
started core service [/rosout]
process[dji_sdk-2]: started with pid [3983]
[ INFO] [1591717443.030293251]: Advanced Sensing is Enabled on M210.
Read App ID
User Configuration read successfully.

[2579543.511]ERRORLOG/1 @ initVehicle, L215: Failed to initialize Linker channel
[dji_sdk-2] process has died [pid 3983, exit code -11, cmd /home/kjhardrict/deuce_ws/devel/lib/dji_osdk_ros/dji_sdk_node __name:=dji_sdk __log:=/home/kjhardrict/.ros/log/0ad0e50e-aa68-11ea-b761-000c2982f0af/dji_sdk-2.log].
log file: /home/kjhardrict/.ros/log/0ad0e50e-aa68-11ea-b761-000c2982f0af/dji_sdk-2*.log
^C[rosout-1] killing on exit
[master] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done


2020-6-9
Use props
kjhardrict
lvl.2

United States
Offline

I am using a Matrice 600 Pro by the way
2020-6-9
Use props
xiao long
lvl.3

South Africa
Offline

May I ask what version of OSDK are you using?
2020-6-10
Use props
kjhardrict
lvl.2

United States
Offline

xiao long Posted at 6-10 06:08
May I ask what version of OSDK are you using?

DJI Onboard SDK ROS 4.0.0
2020-6-10
Use props
kjhardrict
lvl.2

United States
Offline

I have gotten past the point above, but now have the following output. I am at the max baud rate in the DJI Assistant, and do have API control on. It says the TX and RX pins could be inverted. How could I potentially fix this issue?


kjhardrict@ubuntu:~/deuce_ws$ roslaunch dji_osdk_ros dji_vehicle_node.launch
... logging to /home/kjhardrict/.ros/log/276c852e-ab35-11ea-8c0d-000c2982f0af/roslaunch-ubuntu-2694.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://ubuntu:40783/

SUMMARY
========

PARAMETERS
* /rosdistro: melodic
* /rosversion: 1.14.5
* /vehicle_node/acm_name: /dev/ttyACM0
* /vehicle_node/align_time: False
* /vehicle_node/app_id: 1089099
* /vehicle_node/app_version: 1
* /vehicle_node/baud_rate: 921600
* /vehicle_node/enc_key: a263fdc78e88cca16...
* /vehicle_node/serial_name: /dev/tty0
* /vehicle_node/use_broadcast: False

NODES
  /
    vehicle_node (dji_osdk_ros/dji_vehicle_node)

auto-starting new master
process[master]: started with pid [2711]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 276c852e-ab35-11ea-8c0d-000c2982f0af
process[rosout-1]: started with pid [2722]
started core service [/rosout]
process[vehicle_node-2]: started with pid [2725]
EnableAd: 1
[2667640.849]ERRORLOG/1 @ getDroneVersion, L1613: Drone version not obtained! Please do not proceed.
Possible reasons:
        Serial port connection:
                * SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
                * Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
                * TX and RX pins are invert
[2667640.849]STATUS/1 @ functionalSetUp, L318: Shake hand with drone Fail ! Cannot get drone version. (1/20)
[2667640.849]STATUS/1 @ functionalSetUp, L320: Try again after 1 second ......
[2667643.212]ERRORLOG/1 @ getDroneVersion, L1613: Drone version not obtained! Please do not proceed.
Possible reasons:
        Serial port connection:
                * SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
                * Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
                * TX and RX pins are invert
[2667643.212]STATUS/1 @ functionalSetUp, L318: Shake hand with drone Fail ! Cannot get drone version. (2/20)
[2667643.212]STATUS/1 @ functionalSetUp, L320: Try again after 1 second ......
[2667645.574]ERRORLOG/1 @ getDroneVersion, L1613: Drone version not obtained! Please do not proceed.
Possible reasons:
        Serial port connection:
                * SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
                * Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
                * TX and RX pins are invert
[2667645.574]STATUS/1 @ functionalSetUp, L318: Shake hand with drone Fail ! Cannot get drone version. (3/20)
[2667645.574]STATUS/1 @ functionalSetUp, L320: Try again after 1 second ......
[2667647.924]ERRORLOG/1 @ getDroneVersion, L1613: Drone version not obtained! Please do not proceed.
Possible reasons:
        Serial port connection:
                * SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
                * Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
                * TX and RX pins are invert
[2667647.924]STATUS/1 @ functionalSetUp, L318: Shake hand with drone Fail ! Cannot get drone version. (4/20)
[2667647.924]STATUS/1 @ functionalSetUp, L320: Try again after 1 second ......
^C[vehicle_node-2] killing on exit
[2667650.058]ERRORLOG/1 @ getDroneVersion, L1613: Drone version not obtained! Please do not proceed.
Possible reasons:
        Serial port connection:
                * SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
                * Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
                * TX and RX pins are invert
[2667650.058]STATUS/1 @ functionalSetUp, L318: Shake hand with drone Fail ! Cannot get drone version. (5/20)
[2667650.058]STATUS/1 @ functionalSetUp, L320: Try again after 1 second ......
[2667652.418]ERRORLOG/1 @ getDroneVersion, L1613: Drone version not obtained! Please do not proceed.
Possible reasons:
        Serial port connection:
                * SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
                * Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
                * TX and RX pins are invert
[2667652.418]STATUS/1 @ functionalSetUp, L318: Shake hand with drone Fail ! Cannot get drone version. (6/20)
[2667652.418]STATUS/1 @ functionalSetUp, L320: Try again after 1 second ......
^C^C^C^C[2667654.775]ERRORLOG/1 @ getDroneVersion, L1613: Drone version not obtained! Please do not proceed.
Possible reasons:
        Serial port connection:
                * SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
                * Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
                * TX and RX pins are invert
[2667654.775]STATUS/1 @ functionalSetUp, L318: Shake hand with drone Fail ! Cannot get drone version. (7/20)
[2667654.775]STATUS/1 @ functionalSetUp, L320: Try again after 1 second ......
[2667657.136]ERRORLOG/1 @ getDroneVersion, L1613: Drone version not obtained! Please do not proceed.
Possible reasons:
        Serial port connection:
                * SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
                * Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
                * TX and RX pins are invert
[2667657.136]STATUS/1 @ functionalSetUp, L318: Shake hand with drone Fail ! Cannot get drone version. (8/20)
[2667657.136]STATUS/1 @ functionalSetUp, L320: Try again after 1 second ......
[2667659.492]ERRORLOG/1 @ getDroneVersion, L1613: Drone version not obtained! Please do not proceed.
Possible reasons:
        Serial port connection:
                * SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
                * Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
                * TX and RX pins are invert
[2667659.492]STATUS/1 @ functionalSetUp, L318: Shake hand with drone Fail ! Cannot get drone version. (9/20)
[2667659.492]STATUS/1 @ functionalSetUp, L320: Try again after 1 second ......
[2667661.849]ERRORLOG/1 @ getDroneVersion, L1613: Drone version not obtained! Please do not proceed.
Possible reasons:
        Serial port connection:
                * SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
                * Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
                * TX and RX pins are invert
[2667661.849]STATUS/1 @ functionalSetUp, L318: Shake hand with drone Fail ! Cannot get drone version. (10/20)
[2667661.849]STATUS/1 @ functionalSetUp, L320: Try again after 1 second ......
[vehicle_node-2] escalating to SIGTERM
[rosout-1] killing on exit
[master] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done
2020-6-10
Use props
xiao long
lvl.3

South Africa
Offline

OSDK 4.0 does not support M600 Pro. It is recommended that you use OSDK-ROS 3.8
2020-6-10
Use props
kjhardrict
lvl.2

United States
Offline

xiao long Posted at 6-10 19:51
OSDK 4.0 does not support M600 Pro. It is recommended that you use OSDK-ROS 3.8

I have now created a whole new workspace with OSDK 3.8.1, and I get the following output. At this point, I am simply not sure what I am not including correctly.

kjhardrict@ubuntu:~/m600_ws$ roslaunch dji_sdk sdk.launch
... logging to /home/kjhardrict/.ros/log/ed012c30-ac08-11ea-8c0d-000c2982f0af/roslaunch-ubuntu-17798.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://ubuntu:36679/

SUMMARY
========

PARAMETERS
* /dji_sdk/align_time: False
* /dji_sdk/app_id: 1089099
* /dji_sdk/app_version: 1
* /dji_sdk/baud_rate: 921600
* /dji_sdk/enc_key: a263fdc78e88cca16...
* /dji_sdk/serial_name: /dev/ttyACM0
* /dji_sdk/use_broadcast: False
* /rosdistro: melodic
* /rosversion: 1.14.5

NODES
  /
    dji_sdk (dji_sdk/dji_sdk_node)

auto-starting new master
process[master]: started with pid [17808]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to ed012c30-ac08-11ea-8c0d-000c2982f0af
process[rosout-1]: started with pid [17819]
started core service [/rosout]
process[dji_sdk-2]: started with pid [17825]
[ INFO] [1591896493.216358209]: Advanced Sensing is Enabled on M210.

STATUS/1 @ init, L55: Attempting to open device /dev/ttyACM0 with baudrate 921600...

STATUS/1 @ init, L65: ...Serial started successfully.

ERRORLOG/1 @ getDroneVersion, L1418: Drone version not obtained! Please do not proceed.
Possible reasons:
        Serial port connection:
                * SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
                * Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
                * TX and RX pins are inverted.
                * Serial port is occupied by another program.
                * Permission required. Please do 'sudo usermod -a -G dialout $USER' (you do not need to replace $USER with your username). Then logout and login again

[ERROR] [1591896499.219782840]: drone activation error
[ERROR] [1591896499.219884871]: Vehicle initialization failed
^C[dji_sdk-2] killing on exit
[rosout-1] killing on exit
[master] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done
2020-6-11
Use props
xiao long
lvl.3

South Africa
Offline

/dev/ttyACM0  ==> This is not true.
May I ask what development platform you use? What is the serial port connect to the M600? USB-TTL device? If so, that would be /dev/ttyUSBx.
2020-6-12
Use props
djiuser_gWW927PeJfCJ
lvl.1

China
Offline

xiao long Posted at 6-12 03:51
/dev/ttyACM0  ==> This is not true.
May I ask what development platform you use? What is the serial port connect to the M600? USB-TTL device? If so, that would be /dev/ttyUSBx.

how could I chack the corrected port name in manifold 2G with M210V2
2020-7-8
Use props
Xiao Long
lvl.3

South Africa
Offline

djiuser_gWW927PeJfCJ Posted at 7-8 22:39
how could I chack the corrected port name in manifold 2G with M210V2

you can using the command:
ls -l /dev/ttyUSB*
ls -l /dev/ttyACM*
2020-7-9
Use props
Advanced
You need to log in before you can reply Login | Register now

Credit Rules