MT7663 Module
This chapter describes module-dependent information and instructions. For example, you will get different benchmark results on different module on different platforms.
For general usage of Wi-Fi, such as command to configure DHCP or static IP and so on, please refer to Wi-Fi chapter.
Note
Command operations and test results presented in Wi-Fi chapter are based on the IoT Yocto v23.0.
MT7663 - the Combo Connectivity Solution for Wi-Fi 5 and BT 5.2
The MediaTek MT7663 solution supports various kinds of form factors. Currently IoT Yocto supports MT7663S (SDIO) combo modules made by Azurewave. Both solutions are high-performance wireless modules that provide robust Wi-Fi and Bluetooth connectivity. MT7663S supports the latest Wi-Fi 5 standard, offering faster and more reliable connections compared to previous Wi-Fi standards. It also supports the latest Bluetooth 5.2 standard for fast and reliable connections to a wide range of Bluetooth devices.
Important
- There is only 1 of the MT7663S modules made by Azurewave tested with Genio 350-EVK board.
AW-CB451NF
: a MT7663S module where both Wi-Fi and Bluetooth share the SDIO interfaces.
The pin assignment of MT7663S M.2 module AW-CB451NF
is not compatible with the standard M.2 E Key.
Please double check the customized hardware schematic and DTS assignment with hardware engineer very carefully.
Kernel Configurations for MT7663
IoT Yocto applies kernel configurations of MT7663 families as a common setting for supporting platform: Genio 350-EVK.
User can find the 3 Kernel configurations file mt7663.cfg
, mt76xx-tk-wifi.cfg
and mt76xx-tk-bt.cfg
in meta-mediatek-bsp layer.
Configuration for MT7663S in DTS
You can refer to the DTS configurations of the Genio 350-EVK for guidance. However, only basic Wi-Fi and Bluetooth functions are supported. Advanced system related functions such as module reset, BT SCO, and wake on wireless are not supported for IoT Yocto v23.1.
Note
The functionalities of module reset, BT SCO, and wake on wireless are not included in the scope of the IoT Yocto v23.1 release. However, it’s important to reserve the circuits and pin definitions in your design in advance for these features.
The provided DTS nodes for the MT7663S SDIO module are used to configure the hardware settings of the module. Here’s a brief explanation of each node:
mmc2_pins_default
andmmc2_pins_uhs
: These nodes are used to configure the MMC interface for the SDIO module in different speed.
pins_wifi_pwr_en
: This property within the MMC nodes sets the pinmux for the Wi-Fi power enable line, which is set to output high.
pins_sysrstb_en
: This property within the MMC nodes sets the pinmux for the system reset enable line, which is also set to output high.
Proprietary Software Stack for MT7663S
There are no usable open-source drivers and software stacks for the MT7663S module. Proprietary software is necessary to operate the MT7663S module. Access to these software stacks requires an NDA agreement. Below is a brief list of these software stacks.
Note
Interface name in Linux OS should be wlan0 for MT7663S SDIO module.
Open Source Tools iwpriv (from legacy wireless-tools) for MT7663
The primary purpose of iwpriv
is to allow users to configure and manage wireless network interfaces
at a low level. It provides access to private (driver-specific) wireless extensions, including various
advanced settings and features. The iwpriv
tool has been deprecated and replaced by newer tools and
frameworks. Most advanced settings can now be configured using wifitest
(an NDA tool) for mass production.
However, some tests still require iwpriv
to pass.
Project URL
SOP
Add iwpriv tool bb file into connectivity recipe
Executed build command to get code and build bin tool out
Modify tool source code to enlarge the MAX size that allowed for driver ioctl and rebuild tool (without this step, the tool will print “no private iotcl” error message.)
After above steps, iwpriv tool is available.
Then we need to modify kernel configuration to let iwpriv tool available for all commands used in mt76-tk-driver. (Without this step, iwpriv driver command cannot be used)
Set config WIRELESS_EXT to def_bool y
Set config WEXT_PRIV to def_bool y
Rebuild load and all done. User can execute iwpriv wlan0 driver version to confirm whether it is OK.