Distributing Wi-Fi/Bluetooth software as CMSIS pack

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Distributing Wi-Fi/Bluetooth software as CMSIS pack

Distributing Wi-Fi/Bluetooth software as CMSIS pack

CMSIS, the ARM Cortex Microcontroller Software Interface Standard, can be used to distribute software components in standard package format.

CMSIS compliant software components allow:
• Easy reuse of example applications or template code
• Combination of SW components from multiple vendors

CMSIS packages available here: https://www.keil.arm.com/packs/
NXP WiFi package available here: https://www.keil.arm.com/packs/wifi-nxp/versions/

 

Getting NXP WiFi/BT software

 

Please find the minimal setup required to download the NXP WiFi/BT software CMSIS packs:


First, get cpackget binary from the Open CMSIS Pack toolbox binaries

Then, install the NXP WiFi and Bluetooth packages and their dependencies using below commands

cpackget add NXP::WIFI@2.0.0
cpackget add NXP::WIRELESS_WPA_SUPPLICANT@2.0.0
cpackget add NXP::EDGEFAST_BT_BLE@2.0.0

 

Please note that the CMSIS software packs are installed in below directory:

~/.cache/arm/packs/NXP/

 

Building NXP WiFi/Bluetooth software

 

Using combined WiFi+Bluetooth application on i.MXRT1060-revC board, as an example.

 

Prerequisite

Follow below steps to install all the required tools to get CMSIS packages and build them

. <(curl https://aka.ms/vcpkg-init.sh -L)
. ~/.vcpkg/vcpkg-init
vcpkg new --application
vcpkg add artifact arm:cmsis-toolbox
vcpkg add artifact microsoft:cmake
vcpkg add artifact microsoft:ninja
vcpkg add artifact arm:arm-none-eabi-gcc
vcpkg activate


Refer to CMSIS toolbox installation documentation 

 

Activate required tools

. ~/.vcpkg/vcpkg-init
vcpkg activate


Install the NXP i.MXRT1060-REVC Bluetooth examples and their dependencies

cpackget add NXP::MIMXRT1060-EVKC_EDGEFAST_BLUETOOTH_Examples@1.0.0


Workaround: current NXP SW is aligned with ARM::CMSIS@5.8.0, and does not support latest ARM::CMSIS@6.0.0, so we need to use older version with below commands

cpackget rm ARM::CMSIS@6.0.0
cpackget add ARM::CMSIS@5.8.0


List the installed packages

cpackget list


Building combined WiFi+BT example application

Copy example application to local directory and provide write permissions

mkdir -p ~/test
cp -r ~/.cache/arm/packs/NXP/MIMXRT1060-EVKC_EDGEFAST_BLUETOOTH_Examples/1.0.0/boards/evkcmimxrt1060/edgefast_bluetooth_examples/wifi_cli_over_ble_wu/ ~/test/
cd ~/test/wifi_cli_over_ble_wu/ && chmod -R u+w .

 

Build the application

csolution convert wifi_cli_over_ble_wu.csolution.yml
cbuild wifi_cli_over_ble_wu.flexspi_nor_debug+armgcc.cprj


Convert elf to bin for flashing

cd armgcc/flexspi_nor_debug
arm-none-eabi-objcopy wifi_cli_over_ble_wu.elf -O binary wifi_cli_over_ble_wu.bin
No ratings
Version history
Last update:
‎03-05-2024 01:14 AM
Updated by: