This page provides answers to common questions, solutions to common problems and other how-tos.
- Host computer requirements
- Revive board that will not boot
- Serial console adapter board
- apt-get does not work
- Install OpenCV
- WiFi network connection
- Wired ethernet connection
- USB3 cable
- Camera image is rotated
- USB-to-serial debug cable
- Debugging ADB problems
- Unable to flash platform BSP
- Debugging IMU issues
- GPS support
- Build your own drone
- High network latency with PX4
- Enable root login
A host PC running Ubuntu 14.04 Linux is recommended for building code, debugging and testing the Snapdragon Flight™ board (newer versions of the OS may work too but may not be tested / supported).
If your Snapdragon™ Flight board does not boot up, you may be able to recover it in one of the following ways:
This is documented in the "Factory reset" chapter of the Snapdragon Flight User Guide: http://support.intrinsyc.com/documents/125
With a serial console adapter board (see here for details). Use the following procedure to recover the Snapdragon Flight board:
- Disconnect power and USB cable(s) from the Snapdragon Flight and adapter boards.
- Plug the serial console adapter board into the Snapdragon Flight board.
- Enable (insert jumper) J2 (FASTBOOT) of the serial console adapter board.
- Connect the debug board’s 3-pin serial port to the computer’s USB port, using the provided USB-to-serial cable, and open a serial terminal (CuteCom or Putty).
- Power up the Snapdragon Flight board.
- Connect the Snapdragon Flight board to the computer via a USB cable.
- Validate the connection by typing “fastboot devices” on a command prompt or terminal window. You should now see the device-specific random number displayed.
- You should be able to flash the platform software images at this point.
To boot the board normally again, perform the following steps:
- Unplug the power supply and USB cable.
- Remove the jumper from FSTBT (J2) on the serial console adapter board.
- Power up the Snapdragon Flight board and connect the board to the computer via a USB cable.
- Validate the connection by typing “adb devices” on a command prompt or terminal window.
NOTE: If none of the above options work, please contact support to get it reflashed.
The serial console adapter board and cable are available as part of the Snapdragon Flight developer's edition. This allows the board to be accessed through a USB connector for debugging purposes. It also provides jumpers to force the board in fastboot and other special modes if necessary.
Some customers may have received an older deprecated version of the serial console adapter board does not include the fastboot jumper support. Please look at the MCN printed on the board to identify it:
- 25-H9563 - Older serial console board, it does not include the fastboot jumper pins
- 25-H9916 - New serial console board, it includes the fastboot jumper pins (J4)
If you have the older version, please contact support to get the newer Serial Console Adapter board.
Some serial console adapter parts have all 4 pins on the header whereas they should only have 3. If you have such a part, please clip pin 2 on the header. This allows the FTDI serial cable to be inserted in only 1 way as below:
Pin 1 (TXD) Orange
Pin 3 (RXD) Yellow
Pin 4 (GND) Black
Ensure that the Snapdragon Flight board is configured in Station mode and connected to the Internet:
apt-get on Snapdragon Flight is broken. We need the following work-around to install packages:
Uninstall certain on-board packages in order to get apt-get to work.
apt-get install -f
Install the package(s) that you want using apt-get.
The standard way to install OpenCV is: apt-get install --fix-missing libopencv-highgui-dev
Since apt-get on Snapdragon Flight is broken, we need to use the following work-around:
Uninstall certain installed packages in order to get apt-get to work, and then install OpenCV.
apt-get install -f
apt-get -o Dpkg::Options::="--force-overwrite" install libglib2.0-dev
apt-get install --fix-missing libopencv-highgui-dev
Also please see this post: https://developer.qualcomm.com/forum/qdn-forums/hardware/snapdragon-flight/32904
To connect Snapdragon Flight board to a WiFi router on the network, please follow these instructions (see Station mode under Wifi-settings): https://docs.px4.io/en/flight_controller/snapdragon_flight_advanced.html
A WiFi antenna is NOT included in the kit. It needs be purchased (ex. Molex part# 146153-0150) and installed. See here for installation and setup.
The board can be connected to the network over a wired connection via the OTG USB port by using a USB Ethernet adapter (such as http://www.apple.com/shop/product/MC704LL/A/apple-usb-ethernet-adapter OR Linksys USB 3.0 Gigabit Ethernet Adapter - model USB3GIGV1) along with a USB 2.0 Female to Micro USB Male OTG adapter (such as http://www.rakuten.com/prod/268480078.html).
Any standard USB micro-B cable may be used with the board. But in order to get USB 3.0 SuperSpeed functionality, one requires a MICRO-A PLUG TO STD-A cable (such as the Amphenol RUB30-0075 http://www1.amphenol-ast.com/v3/en/product_view.aspx?id=189).
On some of the newer boards, the 4K camera images are rotated by 90 degrees. This is a known issue. A software resolution is being worked on and will be provided shortly.
The USB-to-Serial Debug Cable that plugs into the Serial Console Adapter is the TTL-232R-3V3 part from FTDI modified to be 4-pins and keying added to prevent incorrect insertion. For more information, see http://www.ftdichip.com/Support/Documents/DataSheets/Cables/DS_TTL-232R_CABLES.pdf.
- Verify that the Snapdragon Flight target is listed when you type
adb devices
on the host computer? - Do
ls -l /etc/udev/rules.d
and check for the existance of the 51-android.rules file. - Verify that the following lines are present in your
/etc/udev/rules.d/51-android.rules
file? If not, add them and try again.
#for Device adb interface
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666", GROUP="plugdev"
#for Fastboot bootloader interface
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
- Do
lsusb
on the host PC after the Snapdragon Flight board is connected and powered up. You must see an entry for the target (usually listed asQualcomm, Inc. Qualcomm HSUSB Device
). - Do
adb kill-server
and thenadb start-server
and try again? - If none of this works, verify that adb is functional on your host computer by connecting a phone or other device.
- Try replacing the cable. Sometimes the microUSB 3.0 cable does not work, and you might need a microUSB 2.0 cable.
If you're unable to flash the platform BSP using the intructions here, please try the following:
- Execute the jflash script as root
- If the Snapdragon Flight board is powered through the Electronic Speed Controller (ESC) board, the installation is known to sometimes fail. The workaround is to unplug the ESC board from the Snapdragon Flight board, and power the latter through the power adapter and 5V DC power supply that are available as part of the Development kit.
Do the following steps if you experience issues that may be due to IMU data. This is a test utility to verify that IMU data is being received correctly.
On the host machine via a separate terminal (optional):
${HEXAGON_SDK_ROOT}/tools/mini-dm/Linux_Debug/mini-dm
On the target:
cd /usr/bin
# Run the imu_app (in the background)
./imu_app &
# Run the sensor_imu_tester app for 'n' seconds
./sensor_imu_tester <n>
## It should run and then say "test completed..."
## It should log the IMU data in a file called IMU_*.txt
# Stop the imu_app
VAR=$(ps -eaf | grep imu_app | grep -v grep | awk '{print $2}' | cut -d' ' -f2); kill $VAR
If the IMU_*.txt file was not created or the IMU data in it does not look correct, please try the following:
- Ensure that you installed the latest versions platform BSP and flight controller addon from [here] (http://support.intrinsyc.com/projects/snapdragon-flight).
- Post your issue on the QDN forum with a snippet of the target console log as well as the log from mini-dm.
The on-board GPS module on the Snapdragon Flight™ is not supported. Please check this page for other options: https://dev.px4.io/hardware-snapdragon.html
An almost ready-to-fly drone kit compatible with Snapdragon Flight™ and Snapdragon Navigator™ called the Dragon Drone Development Kit is now available. See this post for more information. This is the recommended option.
Other options are as follows:
- Please see this document for instructions on how to build your own UAV using the Snapdragon Flight™ board including components, assembly, programming and flying.
- The PX4 community also recommends another airframe setup. Details are available here: https://dev.px4.io/en/flight_controller/snapdragon_flight.html
WiFi latency can increase to several seconds when PX4 flight stack is started. This could happen when MAVLink is running but QGroundControl is not. To fix this problem, start QGroundControl on the host PC or device that connects to the target.
Ensure that your board is in SoftAP Mode (See the Wi-Fi section in this User Guide for details).
# Set the root password on the board
echo root:<password> | chpasswd
# Backup the ssh configuration file
cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config.backup
Allow incoming SSH connections as root by editing the PermitRootLogin
line in the file /etc/ssh/sshd_config
as follows:
PermitRootLogin yes
Reboot the target
You should now be able to login to the target as follows:
ssh root@<target-IP-address>
- Enter the root password when prompted based on the value that you assigned earlier.