Multisensory enablement kit, mek cpu board, based on i.mx 8quadmax application processor (15 pages)
Summary of Contents for NXP Semiconductors i.MX 8M Quad
Page 1
User manual Document information Information Content Keywords i.MX 8M Quad Evaluation Kit (EVK), 88W8987-based wireless module, 88W8997-based wireless module Abstract Details the bring-up of Wi-Fi and Bluetooth on NXP-based wireless modules on i.MX 8M Quad EVK running Android 10 OS...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS About this document 1.1 Purpose and scope This manual details the bring-up of Wi-Fi and Bluetooth for NXP-based wireless modules on i.MX 8M Quad EVK running Android 10 operating system. Refer to i.MX 8M Quad Android BSP documentation and Android User's Guide for guidance on how to run and build Android images from source.
Linux kernel to the i.MX 8M Quad hardware. • The i.MX 8M Quad BSP is based on the Linux kernel from the official Linux kernel website. It is enhanced with the features provided by NXP and can be accommodate customized Linux kernel configurations.
Page 5
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS Figure 1. i.MX 8M Quad EVK block diagram For more information about the application processor, please refer to the data sheet and reference manual on www.nxp.com.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 2.3 i.MX 8M Quad evaluation board interfaces Figure 2 shows the front view of i.MX 8M Quad evaluation board with pointers to the interfaces.
Page 7
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS Figure 3 shows the back view of i.MX 8M Quad evaluation board with pointers to the interfaces. Figure 3. i.MX 8M Quad evaluation board interfaces - Back view UM11558 All information provided in this document is subject to legal disclaimers.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 2.4 i.MX 8M Quad switch settings Figure 4 shows the two switches on i.MX 8M Quad evaluation board. The Boot Device Switch is used to boot the device from eMMC while the Boot Mode Switch is used to set the boot mode.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS NXP-based wireless modules Refer to 88W8987 short datasheet 88W8987 product overview on NXP website. Refer to 88W8997 fact sheet 88W8997 product overview on NXP website.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 3.2 Wi-Fi layer interfaces The wireless module requires a kernel driver loaded on the i.MX 8M Quad host system and a firmware running on 88W8987/88W8997 SoC. The MLAN module downloads the firmware binary to the SD8987/PCIE8997 adapter when the SDIO/PCIe bus driver detects the SDIO/PCIe interface of the module.
Bluetooth module. The NXP-based wireless module requires a kernel driver loaded on the i.MX 8M Quad host system and a firmware running on NXP SoC. The Wi-Fi driver loads the combo firmware. The hci_uart driver provides the HCI interface between the firmware and user application.
Azurewave AW-CM358SM datasheet.. Note: Azurewave AW-CM358-uSD supports both Wi-Fi and Bluetooth RF standards. But as i.MX 8M Quad EVK did not define the FFC connector for Bluetooth, only Wi-Fi is supported for i.MX 8M Quad platform with AW-CM358-uSD module combination. UM11558 All information provided in this document is subject to legal disclaimers.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 3.4.5 Azurewave AW-CM358-uSD Wi-Fi module interface Figure 8. AzureWave AW-CM358-uSD module interface 3.4.6 Azurewave AW-CM358-uSD module jumpers and power supply This section provides the jumper settings to configure the module with 1.8V SDIO voltage level for Wi-Fi.
[ 3632.632050] mmc1: new ultra high speed SDR104 SDIO card at address 0001 Connect the antenna. Use a Micro USB to USB cable to connect i.MX 8M Quad EVK to the host computer running Linux OS. Figure 10. AzureWave AZ-CM358-uSD module and i.MX 8M Quad EVK setup UM11558 All information provided in this document is subject to legal disclaimers.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 3.5 88W8987-based AzureWave AW-CM358MA module The AW-CM358MA module supports a SDIO device interface that conforms to the industry SDIO Full-Speed card specification and allows a host controller using the SDIO bus protocol to access the Wireless SoC device.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 3.5.6 Enabling SDIO on M.2 connector The M.2 connector on AW-CM358MA wireless module supports SDIO interface for Wi- Fi whereas the i.MX 8M Quad M.2 connector supports PCIe interface by default. This section shows how to rework i.MX 8M Quad resistors to support SDIO on M.2 connector...
Page 20
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS Figure 12. MicroSD Card J1601 registers • Install the following 0Ω 0402 resistors: R1429, R1430, R1431, R1432, R1433, R1434, R1435 and R1436 (M.2 J1401) Figure 13. M.2 J1401 registers...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 3.5.7 AW-CM358MA module setup with iMX 8M Quad EVK Connect AW-CM358MA module into the M.2 connector of the i.MX 8M Quad board and screw.
Page 22
NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS Connect the antenna, and use a Micro USB to USB cable to connect i.MX 8M Quad EVK to the host computer running Linux OS.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 3.6 88W8997-based AzureWave AW-CM276MA module AzureWave AW-CM276MA supports PCIE and high-speed UART interfaces to the host processor for Wi-Fi and Bluetooth. Read more in AzureWave AW-CM276MA-PUR datasheet.
Android pre-built image. Therefore, Android pre-built image supports only AW-CM276MA module. This section describes the steps to prepare eMMC to boot up an i.MX 8M Quad board using a Linux host machine. The pre-built image can be downloaded from the release page, after selecting the supported platform i.MX 8M Quad EVK - demo images.
Page 26
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS The content of the extracted downloaded release archive is shown herefater. ├── boot-debug.img ├── boot.img ├── bootloader-imx8mq-dual.img ├── bootloader-imx8mq-trusty-dual.img ├── dtbo-imx8mq-dual.img ├── dtbo-imx8mq.img ├──...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 4.2 Setting up the host Install the packages and utilities to set up Ubuntu 16 Linux host machine. The Ubuntu 16.04 64-bit version is the most tested environment for the Android 10.0 build.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 4.2.4 Creating Android 10 build environment for i.MX Assuming that you stored i.MX Android proprietary source code package imx- android-10.0.0_2.6.0.tar.gz in ~/. directory, run the following command to generate the i.MX Android 10 build environment.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 4.3 Enabling uSD/M.2 88W8987-based wireless module This section shows how to enable the uSD/M.2 88W8987-based wireless module in the Android 10 image, and the set of modifications to implement prior to initiating the Android 10 image build process.
Page 30
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS Step 4:Create android_addition_defconfig file to add additional default configuration. The file path is <absolute-path>/android_build/device/fsl/imx8m/evk_8mq/. Configuration file content: CONFIG_WLAN_VENDOR_NXP=y CONFIG_MXMWIFIEX=m Step 5: Open and modify early.init.cfg file to add the driver loading command. The file path is <absolute-path>/android_build/device/fsl/imx8m/evk_8mq/.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 4.3.2 Enabling uSD 88W8987-based wireless module support Open and modify BoardConfig.mk file to enable the device tree support for uSD. The file path is <absolute-path>/android_build/device/fsl/imx8m/evk_8mq/.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 4.4 Building Android 10 image The Android 10 image can be built after the source code has been downloaded. i.MX Android platform needs some preparation when building the image for the first time. The preparation steps are described hereafter.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 4.5 Image deployment The complete set of Android 10 images is generated at the location: ${MY_ANDROID}/ out/target/product/evk_8mq/. The directory content is shown hereafter: ├──...
Quad EVK board (${MY_ANDROID}/out/target/product/evk_8mq/): ubuntu@ubuntu-desktop:/# sudo ./uuu_imx_android_flash.sh -f imx8mq -a -e -u trusty 4.7 Booting from eMMC To boot the i.MX 8M Quad EVK board from eMMC, set the boot switch per the settings given in Section 2.4 "i.MX 8M Quad switch settings".
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 4.7.2 Plugging the wireless module Plug the module into the connector slots of i.MX 8M Quad EVK board: • For AW-CM358MA, connect the module into the M.2 connector of the i.MX 8M Quad board and screw.
Use the following steps to set up scrcpy on Linux Ubuntu and access the Android 10 GUI. • Use a USB type C OTG cable to connect the i.MX 8M Quad EVK to the PC • Use the command line to install scrcpy:...
Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS Bring-up of Wi-Fi, Hotspot, and Wi-Fi Direct This section explains how to bring up Wi-Fi, Hotspot, and Wi-Fi Direct on I.MX 8M Quad EVK board.
Page 38
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Turn on Wi-Fi by sliding the white dot to the right (left screenshot in Figure 19) to view the list of available networks (right screenshot in Figure 19).
Page 39
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Select the network (left screenshot in Figure 20), type the password and click on Connect (right screenshot in Figure 20). Figure 20. Connecting to the Wi-Fi network UM11558 All information provided in this document is subject to legal disclaimers.
Page 40
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Look for the Connected status for your Wi-Fi network (Figure Figure 21. Successful connection to Wi-Fi network UM11558 All information provided in this document is subject to legal disclaimers.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 5.2 Bring-up of Hotspot • Swipe up the Home screen and look for the Settings icon. Click on Settings to open the Settings window.
Page 42
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Select Wi-Fi hotspot (left screenshot in Figure 23) and click on Hotspot password (right screenshot in Figure 23). Figure 23. Selecting Wi-Fi Hostpot and capturing the password UM11558 All information provided in this document is subject to legal disclaimers.
Page 43
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Capture the Hotspot password (left screenshot in Figure 24) and click OK. Click on AP band and select the AP band (left screenshot in Figure 24).
Page 44
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Turn on Wi-Fi Hotspot by sliding the white dot to the right (Figure 25). Figure 25. Turning on Wi-Fi Hotspot UM11558 All information provided in this document is subject to legal disclaimers.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 5.3 Bring-up of Wi-Fi Direct • Turn on Wi-Fi as described in Section 5.1 "Bring-up of Wi-Fi" • Select Wi-Fi preferences in the Wi-Fi window (left screenshot in...
Page 46
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Select Wi-Fi Direct to initiate the scanning of devices (left screenshot in Figure 27). Select the peer device in the list (right screenshot in Figure 27).
Page 47
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Look for Connected status for the selected peer device (Figure 28). Figure 28. Successful connection with Wi-Fi Direct UM11558 All information provided in this document is subject to legal disclaimers.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS Debug of Wi-Fi This section explains how to get the driver version, how to enable the various driver debug logs, and how to use logcat command line tool to generate a dump file.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 6.2.3 Firmware dump Firmware dump is the capability to retrieve the firmware memory from the device and store it into a file for debugging purposes. A firmware dump can be triggerred from the / proc.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 6.2.4 Logcat command line tool The Logcat command line tool dumps a log of system messages, including stack traces when the device throws an error. Each log entry includes the following: •...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS Bring-up of Bluetooth • Swipe up the Home screen and look for the Settings icon. Click on Settings to open the window.
Page 53
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Wait until the list of Bluetooth devices found in the vicinity is displayed (Figure 30). Figure 30. List of Bluetooth devices detected in the vicinity UM11558 All information provided in this document is subject to legal disclaimers.
Page 54
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Look for the Bluetooth device to pair and tap on its name. A message pops up to confirm or cancel the pairing. Tap on PAIR to pair the device (left screenshot in 31).
Page 55
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • To unpair the Bluetooth device, select the Settings icon on the right of the active Bluetooth device in the Connected devices window (left screenshot in Figure 32).
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS Bluetooth features and configuration This section explains how to access and use the various Bluetooth profiles with Android 10 GUI once you have connected a Bluetooth device per the instructions provided in Section 7 "Bring-up of...
Page 57
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Use Android 10 GUI to control audio parameters such as volume up and down, and pause or play (right screenshot in Figure 34).
Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 8.2 Hands-free profile (HFP) This section shows how to configure i.MX 8M Quad EVK to act as HFP Gateway only. • Connect a Bluetooth device (refer to Section 7 "Bring-up of...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 8.3 Object Push Profile This section shows how to send and/or receive a file to/from a remote device over Bluetooth. 8.3.1 Using object push profile to send a file •...
Page 60
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Browse and select the file to send to the remote Bluetooth device (number 1 on the left screenshot in Figure 37).
Page 61
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Bluetooth mode switches to Bluetooth scanning. The Choose Bluetooth device screen opens and displays the list of Bluetooth devices available for sharing (Figure 38).
Page 62
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Tap on ACCEPT when the request notification prompts on the remote Bluetooth device. After accepting the request, the progress of the file sending shows on the screen of...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 8.3.2 Using object push profile to receive a file • When a remote Bluetooth device shares a file with i.MX 8M EVK connected to...
Page 64
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Wait for the successful/unsuccessful file transfer status (Figure 41). Figure 41. File transfer status with i.MX 8M EVK as slave Bluetooth device UM11558 All information provided in this document is subject to legal disclaimers.
Page 65
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Select the Files icon on the home screen of Android 10 GUI. • Browse Android file manager and look for the bluetooth folder (left screenshot in Figure •...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 8.4 Human interface device profile (HIDP) This section shows the use of a HID-enabled Bluetooth device such as a keyboard or mouse. HID is a type of computer device used by humans that takes input from humans and gives output to humans.
Page 67
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • The Bluetooth device shows a Bluetooth keyboard in CURRENTLY CONNECTED list (left screenshot in Figure • The right screenshot in Figure 44...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS Debug of Bluetooth This section shows how to enable Buetooth HCI Snoop logs to capture and analyze the Bluetooth Host Controller Interface (HCI) packets, and how to use ADB tool to export the logs to an external device.
Page 69
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Tap on the Build number seven times until the notification You are now a developer! pops up. Figure 46. Confirmation of developer mode being set UM11558 All information provided in this document is subject to legal disclaimers.
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 9.2 Enabling Bluetooth HCI snoop log • Select the Settings icon on Android 10 GUI home screen • Scroll down the settings and look for the System icon (left screenshot in Figure •...
Page 71
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Select Developer options on the Advanced system screen (left screenshot in Section 9.2) • Select Enable Bluetoth HCI snoop log (right screenshot in Section 9.2)
Page 72
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS • Tap on Enable Bluetooth HCI snoop log and select the Enabled option when the notification Capture Bluetooth packets pops up (Figure Figure 49. Selecting Enabled on Capture Bluetooth packets notification window...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 9.3 Exporting the snoop files Two types of Bluetooth HCI snoop logs are created: • btsnoop_hci.log defines the running Bluetooth HCI logs •...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 10 Contact information Use the following links for more product details, queries and support. Home page: www.nxp.com Web support: nxp.com/support NXP community: community.nxp.com...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 11 Acronyms and abbreviations Table 9. Acronyms and abbreviations Acronyms Definition A2DP Advanced Audio Distribution Profile Android Debug Bridge Access Point Board Support Package...
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS 12 Legal information accepts no liability for any assistance with applications or customer product design. It is customer’s sole responsibility to determine whether the NXP 12.1 Definitions...
Page 77
UM11558 NXP Semiconductors Getting Started with NXP-based Wireless Modules on i.MX 8M Quad EVK Running Android 10 OS Tables Tab. 1. References ............3 Tab. 6. AW-CM358MA supported RF standards ..17 Tab. 2. Features of i.MX 8M Quad ........5 Tab.
Need help?
Do you have a question about the i.MX 8M Quad and is the answer not in the manual?
Questions and answers