dji Manifold User manual

MANIFOLD
2015.11
V1.0
User Manual

2
©2015 DJI. All Rights Reserved.
Legends
Warning Important Hints and Tips Reference
Disclaimer
Thank you for purchasing the DJI Manifold (abbreviated as “Manifold”). Users must comply with
local radio transmission laws and regulations when using this product. By using this product, you
hereby agree to this disclaimer and signify that you understand all points completely. Please use
this product in strict accordance with the manual and be sure to pay attention to the warnings.
When assembling and using this product, follow all instructions carefully. SZ DJI TECHNOLOGY
CO., LTD. and its aliated companies assume no liability for damage(s) or injuries incurred directly
or indirectly from improper use of this product.
DJI is the registered trademark of SZ DJI TECHNOLOGY CO., LTD. (abbreviated as “DJI”). Names
of products, brands, etc., appearing in this manual are trademarks or registered trademarks of
their respective owner companies. This product and manual are copyrighted by DJI with all rights
reserved. No part of this product or manual shall be reproduced in any form without the prior
written consent or authorization of DJI.
This disclaimer is produced in various languages. In the event of divergence among different
versions, the Chinese version shall prevail when the product in question is purchased in Mainland
China, and the English version shall prevail when the product in question is purchased in any
other region.
Searching for Keywords
Search for keywords such as “battery” and “install” to nd a topic. If you are using Adobe
Acrobat Reader to read this document, press Ctrl+F (Windows) or Command+F (Mac) to
begin a search.
Navigating to a Topic
View a complete list of topics in the table of contents. Click on a topic to navigate to that
section.

©2015 DJI. All Rights Reserved.
3
Contents
Disclaimer 2
ProductProfile 4
ConnectorView 4
SystemSettings 7
BasicSetup 7
RootPassword 8
NetworkSettings 8
MaxPerformanceMode 8
InstallingDevelopmentPackages 9
InstallingCUDA 9
InstallingOpenCV4tegra 9
InstallRoboticOperatingSystem(ROS) 9
SystemImage 10
DownloadingPackageFile 10
EnteingRecoverymode 10
CreateSystemImage 11
RestoreSystemImage 11
CompilingKernel 11
Specification 12

Product Profile
4
©2015 DJI. All Rights Reserved.
HDMI
CAM
_
IN
CAM
_
OUTExpansion Header
USB 3.0
USB 3.0
USB 2.0
Power*
UART 2
UART 3
Mini PCIe Slot SD Card Slot
Recovery Button
Reset Button
Combo Audio Jack
Recovery USB
Ethernet
Product Prole
The Manifold is an embedded-Linux computer that is ideal for DJI SDK based software and
application development on DJI flight platforms including the DJI Matrice 100. Featuring an
NVIDIA Tegra K1 SOC (CPU+GPU+ISP in a single chip) with both standard and extended
connectors and interfaces, the Manifold development board provides high flexibility and
extensibility for developers.
Connector View
Connector Overview
Expansion Header
Expansion header provides an interface to customized devices.
ExpansionI/OPort
EXPANSION I/OCAM_IN HDMICAM_OUT

Product Profile
©2015 DJI. All Rights Reserved.
5
Manifold User Manual
The table below describes the pin and voltage that are available on the expansion header.
Pin # Signal Voltage
1 3.3V_SYS 3.3 V-Power
2 SPI4_CS3_L 1.8 V
3 3.3V_SYS 3.3 V-Power
4 SPI4_SCK 1.8 V
5 1.8V_VDDIO 1.8 V-Power
6 SPI4_MOSI 1.8 V
7 1.8V_VDDIO 1.8 V-Power
8 SPI4_MISO 1.8 V
9 NULL -
10 SPI4_CS0_L 1.8 V
11 GND 0 V
12 GPIO1_IN 3.3 V
13 UART1_RXD_CON 3.3 V
Pin # Signal Voltage
14 GPIO2_OUT 3.3 V
15 UART1_TXD_CON 3.3 V
16 GND 0 V
17 NULL -
18 PWR_I2C_SCL 1.8 V
19 GND 0 V
20 PWR_I2C_SDA 1.8 V
21 UART4_RXD_CON 3.3 V
22 GEN1_I2C_SCL 1.8 V
23 UART4_TXD_CON 3.3 V
24 GEN1_I2C_SDA 1.8 V
25 GND 0 V
26 GND 0 V
Access UART1 from /dev/ttTHS0 in the operating system. UART is used as a kernel
console and it is mapped to /dev/ttyS0.
I2C is running at following frequency 100kHz/400kHz (Standard/Fast Mode). Access
GEN1_I2C from /dev/i2c-0 in the kernel. Access PWR_I2C from /dev/i2c-4 in the
kernel.
Maximum SPI frequency is 50MHz.
Access GPIO1_IN from /sys/class/gpio/gpio157 and GPIO2_OUT from /sys/
class/gpio/gpio158 in the kernel.
UART 2/UART 3 Port
Both ports are used to establish connection between the Manifold and Matrice 100.
UART2Port

6
©2015 DJI. All Rights Reserved.
Manifold User Manual
Product Profile
Pin # Signal Voltage
1 NULL -
2 NULL -
3 NULL -
Pin # Signal Voltage
4 GND 0 V
5TXD 3.3 V
6RXD 3.3 V
Access UART2 from dev/ttyTHS1 in the kernel.
UART 2 Port Definition
UARTPort3
Pin # Signal Voltage
1 NULL -
2RXD 3.3 V
Pin # Signal Voltage
3TXD 3.3 V
4 GND 0 V
Access UART3 from dev/ttyTHS3 in the kernel.
UART 3 Port Definition
CAM_IN and CAM_OUT Port
CAM_IN and CAM_OUT port are mainly serves as the interface between the camera mounted
on the Matrice 100 and the Manifold. Refer to the Manifold product page for details on how to
connect the camera to the Manifold.
CAM_IN/CAM_OUTPorts
EXPANSION I/OCAM_IN HDMICAM_OUT

©2015 DJI. All Rights Reserved.
7
Manifold User Manual
Product Profile / System Settings
Recovery USB
Recovery USB port works in either Host or Slave mode. The Recovery USB ports works in Host
mode by default. While in Slave Mode, you connect the Manifold to a computer via Recovery
USB port to create a system image. Refer to “System Image”on P10 for more information on
how to create a system image.
RECOVERY USB RECOVERYRESET
RecoveryUSB
The Recovery USB works in Host mode by default. Execute the following commands to switch
from Host to Slave mode.
$ echo 0 > /sys/devices/platform/tegra-otg/enable_host
$ echo 1 > /sys/devices/platform/tegra-otg/enable_device
Mount USB Gadget through the commends below if necessary:
$ modprobe g_zero
$ echo connect > /sys/devices/platform/tegra-udc.0/udc/tegra-
udc.0/soft_connect
CAN_IN and Recovery USB port are both governed by the same USB controller, hence
only one port can be used at a time.
System Settings
Set root password, networking and system parameters in the terminal after the system has been
boot up. This chapter describes procedures on how to carry out these settings.
Basic Setup
The Manifold development board should be connect to the monitor through the HDMI port, and
to the USB peripherals such as keyboard, mouse and Ethernet(optional) as a basic set up. Power
on the Manifold, the system will automatically boot up. Ubuntu 14.04 is preloaded as default
operating system. Enter the following login credentials to login to the system:
User name: ubuntu
Password: ubuntu

8
©2015 DJI. All Rights Reserved.
Manifold User Manual
System Settings
Root Password
A random root password is assigned. Should there is a need to set up a static root password, run
the command as shown below:
$ sudo passwd
And enter the login password “ubuntu” then enter the new user name and password.
Network Settings
Ethernet Settings
Plug the Ethernet cable into the Ethernet port. If DHCP service is available on the connected
network, then the Manifold will be assigned with an IP address automatically. Otherwise, run the
following command to obtain an IP address:
$ sudo ifcong eth0 xxx.xxx.xxx.xxx
$ ifcong
Note that xxx.xxx.xxx.xxx is the IP address that you wish to use.
Wireless Network
It is recomended a wireless adapter that equipped with Intel 7260 chipset, which supports both
802.11n and 802.11ac protocol. The drivers for Intel 7260 HMW is preinstalled. Refer to http://
elinux.org/Jetson/Network_Adapters for more information about how to configure wireless
adapter from other vendors.
Wireless Settings
Wireless adapter will acquire an IP address if DHCP services is available on the connected
network. Should there is a need to manually assign an IP address to the wireless adapter, run the
commands below:
$ ifcong wlan0 xxx.xxx.xxx.xxx
$ ifcong
Note that xxx.xxx.xxx.xxx is the IP address that you wish to use.
Max Performance Mode
A script designed to tweak the performance to its is preinstalled. Run the following command to
temporarily set the Manifold into Max Performance mode:
$ sudo /home/ubuntu/max_performance

©2015 DJI. All Rights Reserved.
9
Manifold User Manual
System Settings /Installing Development Packages
Add a new entry of “/home/ubuntu/max_performance” within the “/etc/rc.local” if
you wish to set the Manifold into Max Performance mode persistently. Refer to http://elinux.
org/Jetson/Performance for more information.
Installing Development Packages
Installing CUDA
1. Visit the following link to download the CUDA package: http://developer.download.nvidia.com/
embedded/L4T/r21_Release_v3.0/cuda-repo-l4t-r21.3-6-5-prod_6.5-42_armhf.deb
2. Run the following commands to install the CUDA package onto the operating system.
$ sudo dpkg -i cuda-repo-l4t-r21.3-6-5-prod_6.5-42_armhf.deb
$ sudo apt-get update
$ sudo apt-get install cuda-toolkit-6-5
Refer to the link below for more details: https://developer.nvidia.com/embedded/linux-tegra
Installing OpenCV4tegra
a. Visit the following link to download the package of “libopencv4tegra-repo_l4t-r21_2.4.10.1_
armhf.deb” http://developer.download.nvidia.com/embedded/OpenCV/L4T_21.2/
libopencv4tegra-repo_l4t-r21_2.4.10.1_armhf.deb
b. Run the commands below to install the OpenCV4tegra package onto the operating system.
$ sudo dpkg -i libopencv4tegra-repo_l4t-r21_2.4.10.1_armhf.deb
$ sudo apt-get update
$ sudo apt-get install libopencv4tegra libopencv4tegra-
devlibopencv4tegra-python
Refer to the link below for more details: https://developer.nvidia.com/embedded/linux-tegra
Install Robotic Operating System (ROS)
Refer to the link below for the complete information about how to download and install the ROS
package onto the operating system. http://wiki.ros.org/indigo/Installation/UbuntuARM

10
©2015 DJI. All Rights Reserved.
System Image
System Image
The prerequisites for creating the system image are listed as follow:
1. A computer that runs on the Linux.
2. There is at least 16 GB free space for storage.
Downloading Package File
Downlaod the package le “manifold_image_v1.0.tar.gz” from the following link:
https://developer.dji.com/en/manifold/downloads/
Unzip the package les by running the commands listed below:
$ mkdir ~/manifold
$ cd ~/manifold
$ tar -xvzf <your path>/manifold_image_v1.0.tar.gz
Enteing Recovery mode
1. Switch o the Manifold development board and remove the AC adapter from the power port.
2. Connect the Recovery USB to an available USB port on the Host computer with the supplied
Micro USB cable.
3. Connect the power adapter to the Manifold development board.
4. Use a pin to press and hold the RECOVERY button, then press the POWER button once to
turn on the Manifold development board. Release the RECOVERY button to enter Recovery
Mode. Run “lsusb” from the Host computer to check if the Manifold has entered the Recovery
Mode successfully.
The Manifold has entered the Recovery Mode successfully If “NVIDIA” is displayed on the screen.
If no such text is displayed, repeat from step 1 to step 4.
The Manifold development board will not boot up when it is in Recovery Mode (nothing
appears on the monitor).

©2015 DJI. All Rights Reserved.
11
Manifold User Manual
Compiling Kernel / System Image
Create System Image
Enter bootloader folder by running the command shown below:
$ cd ~/manifold/manifold_images/bootloader
Remove the existing system.img le from the bootloader folder. Run the following command to
create a new system image.
$ sudo ./nvash --read APP system.img --bl ardbeg/fastboot.bin –go
It may take a while for creating a system image. Please wait with patient. The end result of the
above command is a system.img le that can be used as a backup of the current system.
Restore System Image
Run the following command to restore the system to default settings.
$ cd ~/manifold/manifold_images
$ sudo ./ash.sh jetson-tk1 mmcblk0p1
Restore the system with the current system.img le by executing the commands below:
$ cd ~/manifold/manifold_images
$ sudo ./ash.sh –r jetson-tk1 mmcblk0p1
Refer to video tutorial on the Manifold product page (https://developer.dji.com/en/manifold/videos/)
for more information.
For more information about restoring system refer to this link (http://elinux.org/Jetson/Cloning).
Compiling Kernel
1. Download source package le “Manifold_kernel_source_v1.0.tar.gz” from the Manifold product
page (https://developer.dji.com/en/manifold/downloads/).
2. Unzip the package le by running the commands below:
$ mkdir ~/kernel
$ cd ~/kernel
$ tar xvzf Manifold_kernel_source_v1.0.tar.gz
3. Compiling kernel by running the commands below:
$ cd ~/kernel/Linux_3.10
$ cp cong_manifold .cong //cong_manifold

12
©2015 DJI. All Rights Reserved.
Manifold User Manual
Compiling Kernel / Specification
$ make menucong
$ make
4. Run “make modules” to install the kernel and modules.
$ make modules_install
$ sudo cp /boot/zImage /boot/zImage.bak //backup the zImage
$ sudo cp arch/arm/boot/zImage /boot/ //cp zImage
$ sudo cp arch/arm/boot/dts/tegra124-jetson_tk1-pm375-000-c00-00.
dt* /boot/ //copy device tree
Specication
Weight 197 g
Dimension 110 mm×110 mm×26 mm
Processors Quad-core, 4-Plus-1 ARM Cortex-A15 MPcore Processor with
NEON technology
Low-power NVIDIA Kepler-based GeForce graphics processor
Image-signal processor
Ultra low-power audio processor
Memory 2GB DDR3L system RAM
16 GB eMMC 4.51 storage
Network 10/100/1000BASE-T Ethernet
Audio Microphone jack
Headphone jack
USB USB 3.0 Type-A Host connector×2
USB 2.0 Type-A Host connector×2
Micro-B USB connector (host/slave mode)
Extended USB connector with DJI M-series Multicopter×2

Specification
©2015 DJI. All Rights Reserved.
13
Manifold User Manual
I/O
Mini-HDMI connector
Half mini-PCIe expansion slot
UART port(3.3V)×2
Micro SD card connector
I/O expansion headers (26pins)
Input Voltage 14 V ~ 26 V
Operating Temperature -10 ℃ ~ 45 ℃
Power Consumption 5 w ~ 15 w

©2015 DJI. All Rights Reserved.
This content is subject to change.
Download the latest version from
https://developer.dji.com/manifold/download
If you have any questions about this document, please contact DJI by
Other manuals for Manifold
2
Table of contents
Other dji Desktop manuals