In the era of digitization, concepts like smart homes and the Internet of Things (IoT) are continuously evolving. To realize these visions, a robust and efficient network infrastructure becomes crucial. OpenWRT, with its open-source nature, high customizability, and excellent stability, has become a key player in leading the future development of networks. NXP, as a global leader in semiconductor technology innovation, leverages its expertise in embedded systems and communication to introduce an intelligent network solution based on OpenWRT, empowering the flourishing smart home and IoT ecosystems. This article will explore the current status and ways to access NXP's chip support for the wireless router solution, enabling readers to build a solid foundation for the next generation of networks.
1. Unique Features of OpenWRT
1.1. Noble Value of Open Source Freedom
OpenWRT stands out with its open-source nature, granting users unlimited freedom to access, modify, and share the source code, unlocking significant innovation potential. This openness not only drives continuous technological advancements but also allows users to take active control of the network direction, saving costs.
1.2. Stable and Reliable Network Foundation
Built on a mature Linux kernel, OpenWRT undergoes extensive evolution and fine-tuning, ensuring outstanding system stability. This results in fewer network failures, longer device lifespans, and solid support for various network needs. OpenWRT becomes an ideal choice for building reliable home networks, alleviating concerns about network instability or crashes.
1.3. Powerful Software Package Management
OpenWRT's proud software package management system provides users with great flexibility. Users can freely install, update, and uninstall various applications and services based on their needs, achieving a highly personalized network environment for a smarter networking experience. OpenWRT allows users to install various network services and applications such as VPNs and proxy servers to meet specific network requirements, providing greater freedom to create a network environment that suits individual or family needs.
1.4. Strong Community Support
The vast OpenWRT community is the source of its powerful driving force. Users can exchange experiences, solve problems, and even participate in project development within the community. This collaborative spirit propels continuous innovation and progress in OpenWRT.
2. Applications of NXP wireless router Solution
2.1. Construction of Smart Home Ecosystem
The seamless integration of NXP's wireless router solution with the NXP Matter solution provides an ideal platform for users to build smart home ecosystems. With its powerful customization capabilities, users can easily connect, manage, and control various smart devices, creating a highly intelligent home environment. The solution integrates NXP's Bluetooth and Wi-Fi chip drivers, such as IW612, 88W9098, 88W8997, allowing users to effortlessly build an OpenThread Border Router (OTBR) or Zigbee Bridge based on OpenWRT.
2.2. Customized Network Services
The NXP wireless router solution supports the customized installation of various network services and applications. Users can create personalized network services, such as VPNs, proxy servers, home routers, or gateways, based on their individual needs, achieving a more flexible networking experience.
2.3. Transmission of High-Definition Video Streams
The transmission of high-definition video streams in smart homes imposes higher demands on network performance. NXP's wireless router solution, with its excellent network performance, combined with NXP's industrial-grade IP Camera solution, ensures users can smoothly enjoy high-definition video streams, providing a superior home entertainment experience.
2.4. Construction of Smart Security Systems
Security systems are an essential part of smart homes. NXP's wireless router solution, with its advanced network security features, builds a more reliable and intelligent security system for users, enhancing home security.
3. NXP's Support for OpenWRT Given the numerous advantages and wide-ranging application scenarios of wireless router, NXP early on adapted to support OpenWRT. Full support has been provided for the entire Layerscape series processors, and mainstream IMX processors are also supported. The specific supported IMX platforms and details are as follows:
Processor and Board Support
ARMv8 ARMv7
I.MX93EVK • I.MX6ULL
I.MX8MPlus
I.MX8MMini
I.MX8MNano
I.MX8MQuad
OpenWrt Version
Based on OpenWrt v23.05 from mainline (tag: v23.05.0-rc1)
Toolchain:
ARMV8: gcc-11.3, binutils-2.37
ARMV7: gcc-12.3, binutils-2.40
U-Boot Boot Loader
IMX LF release, tag: lf-5.15.71-2.2.1 v2022.04
Linux Kernel
OpenWrt kernel 5.15.114 based on IMX SDK release kernel v5.15.71_2.2.1
Firmware
firmware-imx-8.18
firmware-sentinel-0.5.1
Main Features
Squashfs rootfs support on SD card.
Supported CLI and web configuation.
- U-Boot: lf-5.15.71-2.2.1.
- Arm Trusted firmware (TF-A) integration.
- Boot from SDHC
Linux Kernel Core
- Linux kernel 5.15.114
- Cortex-A53 (AARCH64), little endian for imx8m platform
- Cortex-A55 (AARCH64), little endian for imx93 platform
- Cortex-A7, little endian for imx6ull platform
- 64-bit effective kernel addressing [Cortex-A53/A55]
Linux Kernel Drivers
- SDIO 3.0 / eMMC5.1
- USB 3.0/2.0 Dual-Role with PHY type C
- 32-bit LPDDR4
- 2x Gigabit Ethernet with AVB, IEEE 1588, EEE and 1x w/ TSN
- PCIe Gen 3 + WIFI
- CAN FD
- Dual-ch. QuadSPI (XIP) or 1x OctalSPI(XIP)
- RTC
Licensing
The majority of the software included in the OpenWrt release is licensed under a form of open source license (e.g. GPL, BSD).
Some software is licensed under the NXP EULA license.
4. How to Start Deploying and Using wireless router?
To experience the powerful features of the Layerscape series chips with wireless router, download the source code from the official OpenWRT repository: https://git.openwrt.org/openwrt/openwrt.git. The OpenWRT support code for Layerscape is already integrated into the official OpenWRT codebase.
Taking IMX8MMini-EVK as an example, here are the deployment steps for wireless router on the IMX platform using Ubuntu 22.04:
4.1. Get the source code from GitHub: https://github.com/nxp-imx/imx_openwrt (Tag: imx_v23.05_v5.15.114)
4.2. Compile, Install, and Configure wireless router:
$ ./scripts/feeds update -a; ./scripts/feeds install -a; cp config.default .config; make -j $ sudo dd if=/mnt/tftpboot/imx8/matter_20230908/openwrt-imx-imx8-imx8mmini-squashfs-sdcard.img of=/dev/sdX bs=1M && sync
This way, an wireless router bootable disk for SD card has been generated. You can directly use an SD card to boot and experience wireless router.
For more compilation assistance, please refer to the README file in the source code: target/linux/imx/README.
4.3. Configuration and Personalization
Users can access the wireless router device through the web interface or SSH to begin configuring and personalizing the network environment. This includes setting network rules, installing software packages, and ensuring that the device operates according to individual needs. The following image shows the interface for installing and removing software. Isn't it simple and convenient!
4.4. What to Do If You Encounter Issues?
Firstly, you can seek support in the vibrant OpenWRT community. You can not only get assistance but also share your development or usage experiences and even participate in project development. This open community provides users with more opportunities for learning and growth, collectively driving continuous progress in OpenWRT.
You can also participate in the official NXP community at https://community.nxp.com/t5/i-MX-Processors/bd-p/imx-processors to ask questions and share technical insights. Professional engineers are available to help you troubleshoot and overcome challenges. NXP OpenWRT looks forward to your participation!
Disclaimer
This wireless router release is an NXP's Systems Engineering Initiative and is not part of NXP's Linux base enablement strategy for its MPU platforms. NXP does not vouch for the quality of this release and any follow up releases including adding support to new platforms is at the sole discretion of the Systems Engineering team. For specific requirements or needs please reach out to NXP's systems engineering team on the following email address "andy.tang@nxp.com."
View full article