The i.MX 7Dual delivers high-performance processing for low-power requirements with a high degree of functional integration. The i.MX 7Dual features an advanced implementation of two ARM®Cortex®-A7 cores, which operate at speeds of up to 1.2 GHz, as well as the ARM® Cortex®-M4 core. The Pico variant is pin-compatible with the Intel® Edison for sensors and low-speed I/O, but also adds additional expansion possibilities for multimedia and connectivity, giving you cutting edge technology that can easily be expanded and implemented for IoT designs.

Flashing the image
Before you begin flashing, you will need the following items in addition to your board:
- USB-C cable
To flash Android Things onto your board, download the latest preview image and follow these steps:
Step 1: Connect the Hardware
Connect the board to your host computer as shown below:

- Connect a USB-C cable from your host computer for Power and USB OTG.
Step 2: Flash Android Things
Use the following steps to flash the Android image:
-
Update the Android SDK Platform Tools to version 25.0.3 or later from the SDK Manager.
- Verify that the
fastbootbinary is installed in theplatform-tools/directory of your Android SDK. - After you have the fastboot tool, add it to your
PATHenvironment variable.
- Verify that the
-
Open a command line terminal and navigate to the unzipped image directory.
-
If your device is not already in Fastboot mode, use the adb tool to activate it:
$ adb reboot bootloader -
Verify that the device has booted into Fastboot mode by executing the following:
$ fastboot devices 1b2f21d4e1fe0129 fastboot -
Ensure that the bootloader is unlocked.
$ fastboot oem unlock -
Execute the
flash-all.shscript. This script installs the necessary bootloader, baseband firmware(s), and operating system. (On Windows systems, useflash-all.batinstead). -
To verify that Android is running on the device, discover it using the adb tool:
$ adb wait-for-device ... $ adb devices List of devices attached 1b2f21d4e1fe0129 device
Connecting Wi-Fi
After flashing your board, it is strongly recommended to connect it to the internet. This allows your device to deliver crash reports and receive updates.
Before connecting your board to a Wi-Fi network, attach an external IPEX or u.FL Wi-Fi antenna to your board as shown:

To connect your board to Wi-Fi, first access a shell prompt on the device. You can use either of the following methods:
- Open a shell
over adb with the
adb shellcommand. - Connect to the serial console.
Once you can access a shell prompt, follow these steps:
-
Send an intent to the Wi-Fi service that includes the SSID and passcode of your local network. Your board must support the network protocol and frequency band of the wireless network in order to establish a connection.
$ am startservice \ -n com.google.wifisetup/.WifiSetupService \ -a WifiSetupService.Connect \ -e ssid <Network_SSID> \ -e passphrase <Network_Passcode> -
Verify that the connection was successful through
logcat:$ logcat -d | grep Wifi ... V WifiWatcher: Network state changed to CONNECTED V WifiWatcher: SSID changed: ... I WifiConfigurator: Successfully connected to ... -
Test that you can access a remote IP address:
$ ping 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=57 time=6.67 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=57 time=55.5 ms 64 bytes from 8.8.8.8: icmp_seq=3 ttl=57 time=23.0 ms 64 bytes from 8.8.8.8: icmp_seq=4 ttl=57 time=245 ms -
Check that the date and time are set correctly on the device:
$ date
If you want to clear all of the saved networks on the board:
$ am startservice \
-n com.google.wifisetup/.WifiSetupService \
-a WifiSetupService.Reset
Serial debug console
The serial console is a helpful tool for debugging your board and reviewing
system log information. The console is the default output location for kernel
log messages (i.e. dmesg), and it also provides access to a full shell prompt
that you can use to access commands such as logcat.
This is helpful if you are unable to access ADB on your board through other
means and have not yet enabled a network connection.
To access the serial console, connect a micro USB cable to the board as shown below.

Open a connection to the USB serial device on your development computer using a terminal program, such as PuTTY (Windows), Serial (Mac OS), or Minicom (Linux). The serial port parameters for the console are as follows:
- Baud Rate: 115200
- Data Bits: 8
- Parity: None
- Stop Bits: 1