IF91x Wi-Fi Provisioning over BLE Using ModusToolbox™

Overview

This guide describes how to:

  1. Build the https://github.com/Infineon/mtb-example-threadx-le-wifi-onboarding example in ModusToolbox™
  2. Generate the .hex image
  3. Flash the image to the IF91x DVK
  4. View Wi-Fi scan results via UART

Note: This guide is current as of February 2026.

Prerequisites

Install the following:

Download this repository as zip file.

Create the Wi-Fi Scan Project

Launch IDE

  1. Start Eclipse for ModusToolbox™ 2025.8
  2. Click New Application

    image-20260211-191401.png
  3. Choose CYW955913EVK-01 as the kit name, then click Next.

    image-20260211-191330.png
  4. Click Browse for Application.

    image-20260211-201347.png
  5. Browse to the folder where you downloaded https://github.com/Infineon/mtb-example-threadx-le-wifi-onboarding from the prerequisite, then click Select Folder.

    image-20260211-201549.png
  6. Select the mtb-example-threadx-le-wifi-onboarding-master checkbox under Template Application, then click Create.

    image-20260211-201908.png

Confirm Project Location

By default, the following folders should be created:

mtb-example-threadx-le-wifi-onboarding-master
mtb_shared

They are typically located at:

C:\Users\<username>\mtw

You may also navigate using:

%USERPROFILE%\mtw

The project should appear in the left panel under Project Explorer.

image-20260211-202121.png

If Project Explorer is not visible:

Window → Show View → Project Explorer
image-20260211-202238.png

Build the Project

From the menu:

Project → Build All
image-20260211-202308.pngAfter a successful build, the generated .hex file will be located at:
C:\Users\<username>\mtw\mtb-example-threadx-le-wifi-onboarding-master\build\APP_CYW955913EVK-01\Debug\mtb-example-threadx-le-wifi-onboarding_download.hex

Prepare Flashing Tools

Download and extract [Veda IF91x] Firmware_Script_Log_TestCmd.7z from our website: https://connectivity-staging.s3.amazonaws.com/files/Veda IF91x_Firmware_Script_Log_TestCmd.7z

Copy the generated .hex file into:
<Extracted Folder>\Files

Identify UART Ports

Connect the IF91x DVK via USB.

Open device manager. You will see two COM ports.

image-20260211-195133.png

To identify them:

  1. Right-click each COM port → Properties
  2. Go to Details
  3. Select Hardware Ids

    image-20260211-194723.png

Look for:

InterfaceIdentifierPurpose
HCI UARTMI_01Used for flashing
WLAN UARTMI_03Used for Wi-Fi scan output

Example:

  • MI_01 → COM6 (HCI UART)
  • MI_03 → COM5 (WLAN UART)

Flash the Firmware

The below sequence puts the IF91x DVK into HCI download mode for flashing.

  • Press and hold the RECOVERY button (labeled c below)
  • While holding RECOVERY, press and hold the RESET button (labeled d below)
  • Continue holding both buttons for about 1 second
  • Release the RESET
  • Finally, release the RECOVERY
image-20260211-203013.pngOpen Command Prompt in the extracted Files directory.

Run:

ifx_flasher_cli.exe -b if91x <HCI_COM_PORT> -f mtb-example-threadx-le-wifi-onboarding_download.hex -ce

Example with the above setup:

ifx_flasher_cli.exe -b if91x COM6 -f mtb-example-threadx-le-wifi-onboarding_download.hex -ce

Expected output:

IFX Flasher CLI v1.0.0
2026-02-11 15:26:48,966 | INFO | Entering HCI download mode on board E664A836A33A412A
2026-02-11 15:26:49,175 | INFO | Loading minidriver...
2026-02-11 15:26:50,906 | INFO | Performing chip erase...
2026-02-11 15:26:53,686 | INFO | Chip erase finished
2026-02-11 15:26:53,686 | INFO | Changing baud to 3000000
2026-02-11 15:26:53,860 | INFO | Programming firmware... (512190 bytes)
2026-02-11 15:27:27,599 | INFO | Finished programming!

Run Application

Open UART Console

Open TeraTerm

  1. Select the WLAN UART COM port (MI_03, COM5 in this example)
  2. Press RESET on the board

The terminal should display initialization logs.

image-20260211-204250.png

Connect Using AIROC™ Bluetooth® Connect App

  • Open the AIROC™ Bluetooth® Connect app on your Android or iOS device
  • Scan and connect to the device named bleProv
image-20260211-205315.png

Enable Notifications

  • Select GATT DB
image-20260211-205432.png
  • Only one service should be listed — select it
image-20260211-205522.png
  • Locate the characteristic whose UUID ends with 66
image-20260211-205641.png
  • Click Notify to enable notifications
image-20260211-205706.png

Trigger Wi-Fi Scan

  • Locate the characteristic ending with 67
  • Write hex value: 02
image-20260211-205903.png

TeraTerm should now display the list of available Wi-Fi networks.

image-20260211-210144.png

Provide Wi-Fi Credentials

Send SSID

  • Select the characteristic ending with 63
  • Write the ASCII value of your Wi-Fi SSID
  • A pairing key prompt will appear
image-20260211-210242.png
  • Locate the key in the TeraTerm output and enter it in the mobile app when prompted
image-20260211-210452.png

Send Password

  • Select the characteristic ending with 64
  • Write the ASCII value of your Wi-Fi password.

Initiate Wi-Fi Connection

  • Select the characteristic ending with 67
  • Write hex value: 01

The device will attempt to connect to the specified Wi-Fi network.

Connection status and logs will be displayed in TeraTerm.

image-20260211-210703.png

Reference

For further details, see the attached document from Infineon.

https://connectivity-staging.s3.amazonaws.com/files/CYW55913_Software_Develop_Setup_20260123.pdf