Where communities thrive

  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
Repo info
  • 07:15
    github4529 commented #791
  • 07:04
    dji-dev commented #791
  • 03:17
    github4529 opened #791
  • Jun 14 16:56
    nZac commented #752
  • Jun 12 06:27
    manuoso commented #409
  • Jun 11 03:46
    dji-dev commented #790
  • Jun 11 03:41
    dji-dev commented #789
  • Jun 11 03:08
    dji-dev commented #788
  • Jun 11 02:50
    github4529 opened #790
  • Jun 11 02:36
    MisterYan opened #789
  • Jun 11 02:33
    github4529 closed #786
  • Jun 10 08:31
    github4529 commented #788
  • Jun 10 08:27
    github4529 opened #788
  • Jun 10 03:44
    dji-kyle commented #786
  • Jun 10 03:39
    dji-dev commented #787
  • Jun 10 02:47
    github4529 commented #786
  • Jun 10 02:36
    github4529 commented #786
  • Jun 10 01:11
    github4529 closed #787
  • Jun 09 10:13
    github4529 opened #787
  • Jun 09 10:13
    github4529 opened #786
Rohit Sant
@XiaoR answered in your post on the DJI forum
Allan Matthew
Has anyone run into this error? ERROR validateSerialDevice,line 118: Failed to read from serial device. The Onboard SDK is not communicating with your drone.
I'm running an Ubuntu 16.04 image in a VM with an FTDI USB->serial converter that talks to an M100 UART
A couple others have the same problem: http://forum.dev.dji.com/thread-32834-1-1.html
I was previously able to communicate with the M100 using the Onboard-SDK demo applications, but I'm no longer ever able to communicate
I did a bit of digging and it appears that the serial read() is returning 0 bytes in LinuxSetup.cpp, which triggers that error. I know that I'm getting data over the serial line though, as I can connect minicom to the port and see data streaming in
Rohit Sant

@allanm84 A USB->Serial converter will report that it is connected even if the UART end is left open. To avoid false positives, we have an additional check (validateSerialDevice) that looks at the broadcast data on the line. If it does not receive any data on the line it will return this error. In our tests, this check has proven to be quite robust.

A few questions: (a) What VM are you using? (b) Can you post a minicom log? I assume minicom is running on the same VM, is that right? (c) What baud rate are you trying comms at?

Rohit Sant
@/all PSA: if you are having the std::runtime_error after cloning the hotfix release and are using an M100, please revert to the 3.1.9 release. There is no functional difference between the 3.1.9 and the releases for the M100 and for A3 units running FW or below. We will fix the runtime error in an upcoming release. Apologies!
Rohit Sant
UPDATE: The error has been fixed temporarily, so you can simply pull from gitHub to make it go away.
Allan Matthew
@rohitsantdji Thank you that fixed it!
The dji phantom 4 pro is now available, does the old sdk appliable for this ? or should i wait for the new release?
Rohit Sant

Great, that's good to know @allanm84.

@YamZYang Sorry, the P4 Pro does not support the Onboard SDK. If you are looking for Mobile SDK support, a future release of the iOS and Android SDKs will add support for the P4 Pro.

Allan Matthew
Is the only way to determine if the drone is armed trying to arm it and waiting for the ack? Or is the armed state somewhere in the broadcast data?
Allan Matthew
Is that also true of the flight mode (p/a/f)?
Aman Singh
I am facing issues of target dependency not found in cmake for Onboard SDK Linux v3.2
anybody found a solution to these?
What IDE are people using for the onboard SDK and STM32? The DJI docs say to use Keil uVision, however the SDK and example code compiles to way over the 32K free limit, and I've had difficulty compiling it with Atollic IDE. Suggestions?
Justin Huntington
I'm working on activating a recently purchased A3 FC to be used with the OSDK with ROS. I've been able to get past the SDK version bug by modifying the versionA3_32 const in DJI_Version.h, but now seem to be stymied by not being able to activate without some sort of connection to DJI GO to rectify the New device error. Using Lightbridge was not among our RC options. I also have the A3 connected to DJI Assistant 2 running on Mac. I had seen some thread about it being possible using Assistant running on a PC. Is this true? Are there any other ways to activate without a Lightbridge?
Javier Gutierrez
how to display Telemetry data with DJI Onboard SDK in the Linux example
Eduardo Cordeiro
Hello. I have recently acquired a Matrice M100 and I am curently experience the error: "ERROR validateSerialDevice,line 118: Failed to read from serial device. The Onboard SDK is not communicating with your drone."
The same @allanm84 was complaining about.
It is my first time using an M100 and I cant seem to run any of the linux applications. Current Setup is a Linux Machine running 16.04 and a Windows 10 Machine for the DJI assistant connected over UART/TLL and Micro-Usb
I also did the command: sudo usermod -a -G dialout $USER
Rohit Sant
@Corusco The non-Lightbridge activation is a work in progress. The next firmware release should offer a fully functional assistant-based method for activation - but the next firmware release will likely be toward the end of March. Apologies for the inconvenience.
@comgeek The linux sample app does not currently offer an example of telemetry data - however it is very easy to do. Modify the Linux sample and add a call to getBroadcastData(); The returned data structure should have all the telemetry data you enabled in DJI Assistant 2's SDK page. Call this in a loop to get it at some desired frequency.
Rohit Sant
@EduardoCordeiro the error @allanm84 was facing was a bug that has been fixed in the hotfix release; the error you see is likely a real issue. To help debug, could you confirm that you:
  1. Enabled API control on DJI Assistant 2's SDK page
  2. Set baud rate to be the same on DJI Assistant 2 and in your UserConfig.txt
  3. Logged out and logged in after typing the sudo usermod -a -G dialout $USER command
Justin Huntington
@rohitsantdji Thanks for the update. We'll look forward to that release. Until then, we have a pretty nice Lightbridge 2 to fly with now.
Eduardo Cordeiro
@rohitsantdji I have done all those steps, i re-did everything and and the same problem occurs.

Hi. I've been trying to perform the M100's onboardSDK sample activation (https://developer.dji.com/onboard-sdk/documentation/github-platform-docs/PureQT/README.html) using QT Creator for Windows but it's not working. I typed the ID and Key pair obtained from DJI and then I opened the COM without any problems and received the following message:

STATUS QtOnboardsdkPortDriver::init,line 35: port COM5 open success
STATUS QtOnboardsdkPortDriver::init,line 42: BaudRate: 230400

Then, according to the tutorial from the link above (Activation - 7th step) I should click on the "version" button, but when I do absolutely nothing happens. There's no error nor any response from the application.

Ignoring this step, when I click on the "Activate" button, I get the following ERROR:

ERROR DJI:nboardSDK::CoreAPI::activate,line 388: Please call getDroneVersion first.

However, I believe this error is due to the fact that when I click the "version" button, nothing happens.
Does anyone have any idea as to why it is not responding to the "version" request?

Nithin Reddy Gaddam
Hi, Is there a way to send data apart from video with the LightBridge has anyone done this in the past?
Nithin Reddy Gaddam
@AlexandreBorowczyk - You mentioned you had success with ubnt product.. How does that work? did you use two transceivers?
Hello, I'd like to communicate to OES using data transparent transmission using my app, while the drone is being controlled by DJI GO, Ground Control Station, or some other app. Is this possible? Thank you.
Andre Nguyen
@nithinreddygaddam Yeah we used unifi. But basically get an airmax basestation like a Nanostation M and add a Bullet M to your quad. Do note though that the power drain is noticeable.
Nithin Reddy Gaddam
@andre-nguyen what antennas did you use for the Bullet and what was the power rating for the POE adapter?
Hi, I am trying to trigger a camera using the sdk but the camera functionality is not responsive. I cannot even get the gimbal values for the camera in the API. I am using the ZenMuse Z15 with Sony Alpha 7 R camera on the M600.
Andre Nguyen
@nithinreddygaddam We ended up just using standard antennas with an intel wifi card, but the reality is that if you want good data rates you need a good transmitter AND receiver
If you look at the MBZIRC going on right now you can see some people equipped their drones with ubiquity products
Anna Liao
@andre-nguyen very cool!
Adrian Huang
Could any one help? I try to trigger sdk failsafe after waypoints are done, but after it returns, I could ask A3 to fly way points again
I use setmovementcontrol to keep the connection between board and fligth control without real rc
Anyone could help?
Matias Godoy
I'm new to C++, and I'm trying to add the OnboardSDK as a lybrary to my project, but I'm not able to do it.
This is my CMakeLists.txt file: https://pastebin.com/GU4PyK6g
When I run "cmake .." from the "build" folder, everything goes fine. The problem comes when I run "make". I get an error saying that "LinuxSerialDevice.h" was not found (even though it is inside "${ONBOARDSDK_SOURCE}/platform/linux/inc" as specified in CMakeLists.txt)
I'm using OnboardSDK version 3.2 (3.3 is not yet available to the M600 Pro)
Can anybody help me build my CMakeLists.txt file?
does anyone know how to solve the error message "Please call getDroneVersion first."
I get this error message when I try to roslaunch dji_sdk sdk_manifold.launch
Hi all, when I get the lat / lon values in the dji_sdk/global_position message, does anyone know if those values corresponds to the antenna location, or another specific point in the M100 frame?
Christopher Farm
is there an SDK that allows you to run python on the phantom 3?