ST


A world leader in providing the semiconductor solutions that make a positive contribution to people’s lives, both today and in the future.

You are viewing an older revision! See the latest version

How to make wifi tests

WIFI ST boards

STM32 boards with this ISM43362 built-in module

- DISCO_L475VG_IOT01A : https://os.mbed.com/platforms/ST-Discovery-L475E-IOT01A/

- DISCO_F413ZH : https://os.mbed.com/platforms/ST-Discovery-F413H/

WIFI driver code

https://github.com/ARMmbed/wifi-ism43362

Add this wifi driver in your mbed-os directory :

cd mbed-os
git clone https://github.com/ARMmbed/wifi-ism43362.git

There is no git label, use the master branch.

Configuration for both ST boards are provided by this driver.

For information, file is : https://github.com/ARMmbed/wifi-ism43362/blob/master/mbed_lib.json

mbed-os tests

Wifi tests

Several mbed-os tests are using WiFi connection :

  • tests-netsocket-dns
  • tests-netsocket-tcp
  • tests-netsocket-tls
  • tests-netsocket-udp
  • tests-network-interface
  • tests-network-wifi

Test setup

For netsocket tests, you need to configure 1 access point :

  • Internet access
  • SSID name : "wifi-secure-ssid" (SSID can be private)
  • WPA2 password : "wifi-password"

For network-wifi test, you need to configure 2 access points:

  • no need to Internet access
  • SSID name : "wifi-secure-ssid" (SSID has to be broadcasted)
  • WPA2 password : "wifi-password"
  • guest SSID name : "wifi-unsecure-ssid" (SSID has to be broadcasted)
  • channel and the BSSID of secure AP : "wifi-ch-secure", "ap-mac-secure"
  • channel and the BSSID of unsecure AP : "wifi-ch-unsecure", "ap-mac-unsecure"

Test configuration

Now update your mbed_app.json file with :

{
    "config": {
        "echo-server-addr" : {
            "help" : "IP address of echo server",
            "value" : "\"echo.mbedcloudtesting.com\""
        },
        "echo-server-port" : {
            "help" : "Port of echo server",
            "value" : "7"
        },
        "echo-server-discard-port" : {
            "help" : "Discard port of echo server",
            "value" : "9"
        },
        "echo-server-port-tls" : {
            "help" : "Echo port of echo server",
            "value" : "2007"
        },
        "echo-server-discard-port-tls" : {
            "help" : "Discard port of echo server",
            "value" : "2009"
        },
        "wifi-secure-ssid": {
            "help": "WiFi SSID for WPA2 secured network",
            "value": "\"TOREPLACE\""
        },
        "wifi-unsecure-ssid": {
            "help": "WiFi SSID for unsecure network",
            "value": "\"TOREPLACE\""
        },
        "wifi-password": {
            "help": "WiFi Password",
            "value": "\"TOREPLACE\""
        },
        "wifi-secure-protocol": {
            "help": "WiFi security protocol, valid values are WEP, WPA, WPA2, WPA/WPA2",
            "value": "\"WPA2\""
        },
        "wifi-ch-secure": {
            "help": "Channel number of secure SSID",
            "value": 1
        },
        "wifi-ch-unsecure": {
            "help": "Channel number of unsecure SSID",
            "value": 2
        },
        "ap-mac-secure": {
            "help": "BSSID of secure AP in form of AA:BB:CC:DD:EE:FF",
            "value": "\"TOREPLACE\""
        },
        "ap-mac-unsecure": {
            "help": "BSSID of unsecure AP in form of \"AA:BB:CC:DD:EE:FF\"",
            "value": "\"TOREPLACE\""
        },
        "max-scan-size": {
            "help": "How many networks may appear in Wifi scan result",
            "value": 10
        }
   },
    "target_overrides": {
        "DISCO_F413ZH": {
            "target.network-default-interface-type": "WIFI",
            "nsapi.default-wifi-ssid": "\"TOREPLACE\"",
            "nsapi.default-wifi-password": "\"TOREPLACE\"",
            "nsapi.default-wifi-security": "WPA2",
            "ism43362.provide-default": true
        },
        "DISCO_L475VG_IOT01A": {
            "target.network-default-interface-type": "WIFI",
            "nsapi.default-wifi-ssid": "\"TOREPLACE\"",
            "nsapi.default-wifi-password": "\"TOREPLACE\"",
            "nsapi.default-wifi-security": "WPA2",
            "ism43362.provide-default": true
        }
    }
}

You need to update it to indicate your local settings (network SSID, password, ...)

Test execution

mbed test -m DISCO_F413ZH -t ARM -v -n tests-net*
mbed test -m DISCO_F413ZH -t ARM -v -n tests-network*
mbed test -m DISCO_F413ZH -t ARM -v -n tests-network-wifi
mbed test -m DISCO_L475VG_IOT01A -t GCC_ARM -v -n tests-netsocket*
mbed test -m DISCO_L475VG_IOT01A -t GCC_ARM -v -n tests-netsocket-tcp

WIFI example applications

mbed-os-example-wifi

https://github.com/ARMmbed/mbed-os-example-wifi

mbed import mbed-os-example-wifi
cd mbed-os-example-wifi
mbed add wifi-ism43362

<edit mbed_app.json file>
            "value": "\"SSID\""
            "value": "\"PASSWORD\""

mbed compile -t GCC_ARM -m DISCO_L475VG_IOT01A --flash

Pelion Device Ready example

https://github.com/ARMmbed/pelion-ready-example

WIFI firmware update

Only Wifi module from DISCO_L475VG_IOT01A can be updated (HW limitation for DISCO_F413ZH).

Blue LED should be ON now.

  • Start STMFlashLoader Demo.exe

- select the correct COM port (keep Baud Rate 115200 / Parity Even / Echo Disabled / Timeout 30s) => Next

- "Target is readable" => Next

- Select "STM32F2_1024K" => Next

- Download to device: select ISM43362_M3G_L44_SPI_C3.5.2.5.STM.bin / Global Erase / Verify after download => Next


All wikipages