DJI Matrice 100 and Guidance System

The DJI Matrice 100 is a quadcopter for developers. The drone allows developers to customize the flight platform using the DJI SDK. Plus, it comes in a big black box! Looky here:


DJI is a world leader in easy-to-fly drones and aerial photography systems. As on-board electronics have become more sophisticated, a need has developed for developers to be able to build sophisticated aerial based applications for different markets. The DJI Matrice 100 is a quadcopter for developers which allows access to the inflight systems on the drone, as well as providing a platform for additional sensors, electronics and computers.


The DJI Matrice 100 is a fully programmable flight platform built around DJI cutting edge technology. Expansion bays allow addition of extra hardware to the flight platform, while SDKs allow access to on board flight information and sensors. The SDK also provides a communication channel over a direct serial connection to the DJI flight controller from other on board computers.

In addition, a system called DJI Guidance is available which provides a powerful vision sensing system. The Guidance system consists of 5 different sensor modules, with each sensor module containing ultrasonic sensors and cameras. A central processor fuses the sensor information into actionable information for the flight controller and other attached processors. The sensors high-precision stereo algorithms provide positioning information over nearly any terrain at altitudes up to 20 meters.

One of the big features of Guidance is that it continuously scans the environment and detects obstacles in real time. This information can be used to tell the flight system to automatically avoid collisions.


DJI also supports a product called Manifold which is a NVIDIA Tegra K1 based computer. The Manifold runs Robot Operating System (ROS), which provides the Matrice 100 with standard ROS types of interfaces. In future articles, we’ll cover the Manifold in depth.


Over the next couple of weeks we will build the platform and interface to the flight controller on board. Should be fun!


  1. Great article!

    You mentioned ‘The SDK also provides a communication channel over a direct serial connection to the DJI flight controller from other on board computers.’

    I wonder if you have any info about the microcontroller/board that the flight controller and the ‘other on board computer’ run on, respectively?


    • Hi Tom,
      Thank you for the kind words. The ‘other on board computers’ refer to any other computers the developer adds to the vehicle platform. In this series, a Manifold computer was added which is a NVIDIA Tegra TK1 based Linux machine, however people have added other machines. The flight controller is a proprietary to DJI computer.

      • Hi Jim,

        Thanks for the great resources. The DJI Matrice is a pretty expensive drone to work on research projects I was wondering if you new of other developer friendly drones that were not as expensive as the DJI Matrice. In addiition, if someone were to build their own drone is a flight controller like the PixHawk Flight Controller something that can be easily controlled from the Jetson over ROS.


        • Hi Rishi,
          Thanks for the compliment! There are all sorts of drones out there that you can work with, the older 450/550 DJI drones and clones, as well as some of the 3DR drones like the IRIS. Hobby King still sells enough of the parts to build your own, it just depends on what you’re trying to accomplish.
          One of the original founders of 3DR formed a new company and is building Pixhawks I and II for sale:
          DIYDrones is a good website to get a feel for how people build their own research vehicles.
          Hope this helps.

  2. Hi Jim,

    So I did a little more research into 3DRobotics and it turns out they have this thing called This is their sdk for all of their drones. The documentation shows companion computers like Raspberry Pi’s and Beagle Bone Blacks work so I am going to assume that the Jetson should also work. In addition the dronekit sdk is using MAVlink so I may be able to use the mavros ROS package to communicate with the flight controller on an Iris drone. Thanks for the help. Hopefully I am going down the right path.


Leave a Reply

Your email address will not be published.