- Computers & electronics
- Computer components
- System components
- Development boards
- dji
- Manifold
- User manual
- 14 Pages
DJI Manifold User Manual
Below you will find brief information for Manifold. This device features an embedded-Linux computer ideal for DJI SDK, software and application development on DJI flight platforms. The Manifold development board provides high flexibility and extensibility for developers.
advertisement
Assistant Bot
Need help? Our chatbot has already read the manual and is ready to assist you. Feel free to ask any questions about the device, but providing details will make the conversation more productive.
MANIFOLD
User Manual
V1.0
2015.11
Searching for Keywords
Search for keywords such as “battery” and “install” to find 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.
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 affiliated 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.
2
©
2015 DJI. All Rights Reserved.
Contents
Disclaimer
Product Profile
System Settings
Installing Development Packages
Installing the Robotic Operating System (ROS)
System Image
Compiling Kernel
Specification
©
2015 DJI. All Rights Reserved.
3
Product Profile
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 HDMI
CAM_IN
CAM_OUT
Ethernet
Recovery USB
USB 3.0
USB 3.0
USB 2.0
UART 2
UART 3 Combo Audio Jack
Reset Button
Recovery Button
Power*
Mini PCIe Slot SD Card Slot
Expansion Header
The expansion header provides an interface to customized devices.
CAM_OUT CAM_IN HDMI EXPANSION I/O
Expansion I/O Port
4
©
2015 DJI. All Rights Reserved.
Manifold User Manual
The table below describes the pins and voltages of the expansion header.
11
12
13
7
8
9
10
5
6
3
4
Pin # Signal
1 3.3V_SYS
2 SPI4_CS3_L
3.3V_SYS
SPI4_SCK
1.8V_VDDIO
SPI4_MOSI
1.8V_VDDIO
SPI4_MISO
NULL
SPI4_CS0_L
Voltage
3.3 V-Power
1.8 V
3.3 V-Power
1.8 V
1.8 V-Power
1.8 V
1.8 V-Power
1.8 V
-
1.8 V
GND
GPIO1_IN
0 V
3.3 V
UART1_RXD_CON 3.3 V
Pin # Signal
14 GPIO2_OUT
15
16
17
18
19
20
21
22
23
24
25
26
UART1_TXD_CON 3.3 V
GND
NULL
PWR_I2C_SCL
GND
PWR_I2C_SDA
GEN1_I2C_SCL
GEN1_I2C_SDA
GND
GND
-
Voltage
3.3 V
0 V
1.8 V
0 V
1.8 V
UART4_RXD_CON 3.3 V
1.8 V
UART4_TXD_CON 3.3 V
1.8 V
0 V
0 V
Access UART1 from /dev/ttTHS0 in the operating system. UART4 is used as a kernel console and it is mapped to
/dev/ttyS0.
I2C is running at these frequencies 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.
The 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 a connection with the Matrice 100.
DC 16V~24V
UART 2 Port
©
2015 DJI. All Rights Reserved.
5
Manifold User Manual
UART 2 Port Description
Pin #
1
2
3
Signal
NULL
NULL
NULL -
-
-
Voltage Pin #
4
5
6
Access UART2 from /dev/ttyTHS1 in the kernel.
Signal
GND
TXD
RXD
Voltage
0 V
3.3 V
3.3 V
DC 16V~24V
UART Port 3
UART 3 Port Description
Pin #
1
2
Signal
NULL
RXD
-
Voltage
3.3 V
Pin #
3
4
Access UART3 from
/dev/ttyTHS2 in the kernel.
Signal
TXD
GND
Voltage
3.3 V
0 V
CAM_IN and CAM_OUT Port
The CAM_IN and CAM_OUT ports mainly serve as the interface between the camera mounted on the Matrice 100 and the Manifold. Refer to the Manifold product page(https://developer.dji.com/ manifold/videos/) for details on how to connect the camera to the Manifold.
CAM_OUT CAM_IN HDMI
CAM_IN / CAM_OUT Ports
6
©
2015 DJI. All Rights Reserved.
EXPANSION I/O
Manifold User Manual
Recovery USB
The Recovery USB port can work in either Host or Slave Mode, but is set to Host Mode by default. In Slave Mode, you can connect the Manifold to a computer via the 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 RESET RECOVERY
Recovery USB
The Recovery USB works in Host Mode by default. Execute the following commands to switch from Host Mode to Slave Mode.
$ echo 0 > /sys/devices/platform/tegra-otg/enable_host
$ echo 1 > /sys/devices/platform/tegra-otg/enable_device
Mount the USB Gadget using the commands below if necessary. Take g_zero for example:
$ modprobe g_zero
$ echo connect > /sys/devices/platform/tegra-udc.0/udc/tegraudc.0/soft_connect
Execute the following commands to switch from Slave Mode to Host Mode.
$ echo disconnect > /sys/devices/platform/tegra-udc.0/udc/ tegraudc. 0/soft_connect
$ modprobe -r g_zero
$ echo 0 > /sys/devices/platform/tegra-otg/enable_device
$ echo 1 > /sys/devices/platform/tegra-otg/enable_host
The CAM_IN and Recovery USB ports are both governed by the same USB controller, and hence only one port can be used at a time.
©
2015 DJI. All Rights Reserved.
7
System Settings
Set the root password and the networking and system parameters in the terminal after the system is booted up. This chapter describes the procedures on configuring these settings.
Basic Setup
The Manifold development board should be connected to an HDMI monitor, a USB keyboard and mouse, and an Ethernet connection (optional). The Ubuntu 14.04 operating system will sign in automatically after the Manifold is powered on. Enter the following login credentials if necessary:
User name: ubuntu
Password: ubuntu
Root Password
A random root password is assigned. If a static root password is required, run the following command:
$ sudo passwd
And enter the login password “ubuntu” then enter the root 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 ifconfig eth0 xxx.xxx.xxx.xxx
$ ifconfig where “xxx.xxx.xxx.xxx” is the IP address that you wish to use.
Wireless Network
It is recommend to use the mini-PCIe chipet with ““Intel 7260 HMW”“ wireless adapter, which supports both 802.11n and 802.11ac protocols. The drivers for the Intel 7260 HMW is preinstalled. Refer to http://elinux.org/Jetson/Network_Adapters for more information about how to configure wireless adapters from other vendors.
8
©
2015 DJI. All Rights Reserved.
Manifold User Manual
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:
$ ifconfig wlan0 xxx.xxx.xxx.xxx
$ ifconfig where “xxx.xxx.xxx.xxx” is the IP address that you wish to use.
Max Performance Mode
A script designed to optimize the performance is preinstalled. Run the following commands to temporarily set the Manifold to Max Performance Mode:
$ sudo /home/ubuntu/max_performance
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 the 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
©
2015 DJI. All Rights Reserved.
9
Manifold User Manual 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 libopencv4tegradevlibopencv4tegra-python
Refer to the link below for more details: https://developer.nvidia.com/embedded/linux-tegra
Installing the 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
System Image
Prerequisites for creating the system image:
1. Linux operating system.
2. At least 16 GB of free disk space.
Downloading Package File
Downlaod the package file “manifold_image_v1.0.tar.gz” from the following link: https://developer.dji.com/en/manifold/downloads/
Unzip the package files by running the commands listed below:
$ mkdir ~/manifold
$ cd ~/manifold
$ sudo tar -xvpzf <your path>/manifold_image_v1.0.tar.gz
Entering Recovery Mode
Method 1:
1. Switch off 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, and then press the POWER button once to turn on the Manifold development board. Release the RECOVERY button to enter
Recovery mode.
10
©
2015 DJI. All Rights Reserved.
Manifold User Manual
Method 2 :
1. Switch off the Manifold development board and remove the AC adapter from the power port.
2. Connect the Recovery USB to an USB Port on the Host computer via the Micro USB cable.
3. Connect the power adapter to the Manifold development board.
4. Press the power button once to boot up the system. While pressing the Recovery Button, use a pin to press and release Reset Button once. Finally, release the Recovery Button.
Run “lsusb” from the Host computer to check if the Manifold has entered the Recovery Mode successfully.
The Manifold has entered Recovery Mode successfully if “NVIDIA” is displayed on the screen. If no such text is displayed, repeat steps 1 to 4.
The Manifold development board will not boot up if it is in Recovery Mode (nothing appears on the monitor).
Create a System Image
Enter the bootloader folder by running the command shown below:
$ cd ~/manifold/manifold_images/bootloader
Remove the existing system.img file from the bootloader folder. Run the following command to create a new system image.
$ sudo ./nvflash --read APP system.img --bl ardbeg/fastboot.bin --go
It may take a while to create the system image. Please be patient. After running the above command, the “system.img” file can be used as a backup of the current system.
©
2015 DJI. All Rights Reserved.
11
Manifold User Manual
Restoring the System Image
Run the following command to restore the system to its default settings.
$ cd ~/manifold/manifold_images
$ sudo ./flash.sh jetson-tk1 mmcblk0p1
Restore the system with the created system.img file by executing the commands below:
$ cd ~/manifold/manifold_images
$ sudo ./flash.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 the “manifold_kernel_source_v1.0.tar.gz” source package from the Manifold product page (https://developer.dji.com/en/manifold/downloads/).
2. Unzip the package file by running the commands below:
$ mkdir ~/kernel
$ cd ~/kernel
$ tar xvzf <your path>/manifold_kernel_source_v1.0.tar.gz
3. Compiling kernel by running the commands below:
$ cd ~/kernel/Linux_3.10
$ cp arch/arm/configs/manifold_config .config
$ make menuconfig
$ make
Note that manifold_config is the default configuration file.
4. Run “make modules” command 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
12
©
2015 DJI. All Rights Reserved.
Specification
Weight
Dimension
Processors
Memory
Network
Audio
USB
I/O
Input Voltage
Operating Temperature
Power Consumption
197 g
110 mm×110 mm×26 mm
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
2GB DDR3L system RAM
16 GB eMMC 4.51 storage
10/100/1000BASE-T Ethernet
Combo audio jack(mic/headphone)
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
Mini-HDMI connector
Half mini-PCIe expansion slot
UART port(3.3V)×2
Micro SD card connector
I/O expansion headers (26pins)
14 V ~ 26 V
-10 ℃ ~ 45 ℃
5 w ~ 15 w
©
2015 DJI. All Rights Reserved.
13
This content is subject to change.
Download the latest version from https://developer.dji.com/manifold/downloads
If you have any questions about this document, please contact DJI by sending a message to [email protected]
.
© 2015 DJI. All Rights Reserved.
advertisement
Key Features
- Embedded-Linux computer
- NVIDIA Tegra K1 SOC
- High flexibility and extensibility
- DJI SDK based software and application development
- DJI flight platforms including the DJI Matrice 100
- Standard and extended connectors and interfaces
Frequently Answers and Questions
How do I switch from Host Mode to Slave Mode on the Recovery USB?
How do I switch from Slave Mode to Host Mode on the Recovery USB?
How do I install the CUDA package?
Related manuals
advertisement
Table of contents
- 2 Disclaimer
- 4 Product Profile
- 4 Connector View
- 8 System Settings
- 8 Basic Setup
- 8 Root Password
- 8 Network Settings
- 9 Max Performance Mode
- 9 Installing Development Packages
- 9 Installing CUDA
- 9 Installing the OpenCV4tegra
- 10 Installing the Robotic Operating System (ROS)
- 10 System Image
- 10 Downloading Package File
- 10 Entering Recovery Mode
- 11 Create a System Image
- 12 Restoring the System Image
- 12 Compiling Kernel
- 13 Specification