diff --git a/Jenkinsfile b/Jenkinsfile index f38eca6..a7f1861 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -23,7 +23,6 @@ def raas = [ // List of targets with supported RF shields to compile def targets = [ - "UBLOX_EVK_ODIN_W2": ["internal"], "K64F": ["esp8266-driver"], "DISCO_L475VG_IOT01A": ["wifi-ism43362"] ] @@ -31,8 +30,7 @@ def targets = [ // Map toolchains to compilers def toolchains = [ ARM: "armcc", - GCC_ARM: "arm-none-eabi-gcc", - IAR: "IAR-linux" + GCC_ARM: "arm-none-eabi-gcc" ] // Supported RF shields @@ -118,10 +116,6 @@ def buildStep(target, compilerLabel, toolchain, radioShield) { } execute("mbed new .") - if ("${radioShield}" == "wifi-ism43362") { - execute ("mbed add wifi-ism43362") - } - execute ("mbed compile --build out/${target}_${toolchain}_${radioShield}/ -m ${target} -t ${toolchain} -c --app-config ${config_file}") } stash name: "${target}_${toolchain}_${radioShield}", includes: '**/mbed-os-example-wifi.bin' diff --git a/README.md b/README.md index 3b943af..1d7f6ac 100644 --- a/README.md +++ b/README.md @@ -15,31 +15,10 @@ For more information about Wi-Fi APIs, please visit the [Mbed OS Wi-Fi](https:// ### Supported hardware ### * All Mbed OS boards with build-in Wi-Fi module: - * [u-blox ODIN-W2](https://os.mbed.com/platforms/ublox-EVK-ODIN-W2/) - * [Realtek RTL8195AM](https://os.mbed.com/platforms/REALTEK-RTL8195AM/) * [ST DISCO IOT board](https://os.mbed.com/platforms/ST-Discovery-L475E-IOT01A/) with integrated [ISM43362 WiFi Inventek module](https://github.com/ARMmbed/wifi-ism43362). * [ST DISCO_F413ZH board](https://os.mbed.com/platforms/ST-Discovery-F413H/) with integrated [ISM43362 WiFi Inventek module](https://github.com/ARMmbed/wifi-ism43362). - * [Advantech WISE-150](https://os.mbed.com/modules/advantech-wise-1530/) - * USI WM-BN-BM-22 - * MxChip EMW3166 * Boards with external WiFi shields. - * [NUCLEO-F401RE](https://os.mbed.com/platforms/ST-Nucleo-F401RE/) with [X-NUCLEO-IDW04A1](http://www.st.com/content/st_com/en/products/ecosystems/stm32-open-development-environment/stm32-nucleo-expansion-boards/stm32-ode-connect-hw/x-nucleo-idw04a1.html) Wi-Fi expansion board using pins D8 and D2 _(of the Arduino connector)_. - * [NUCLEO-F401RE](https://os.mbed.com/platforms/ST-Nucleo-F401RE/) with [X-NUCLEO-IDW01M1](https://os.mbed.com/components/X-NUCLEO-IDW01M1/) Wi-Fi expansion board using pins PA_9 and PA_10 _(of the Morpho connector)_. * [NUCLEO-F429ZI](https://os.mbed.com/platforms/ST-Nucleo-F429ZI/) with ESP8266-01 module using pins D1 and D0. - * Other Mbed targets with an ESP8266 module, [X-NUCLEO-IDW04A1](http://www.st.com/content/st_com/en/products/ecosystems/stm32-open-development-environment/stm32-nucleo-expansion-boards/stm32-ode-connect-hw/x-nucleo-idw04a1.html) or [X-NUCLEO-IDW01M1](https://os.mbed.com/components/X-NUCLEO-IDW01M1/) expansion board. - -#### Adding connectivity driver - -If the target does not have internal WiFi driver, or Mbed OS does not supply one, you need to add driver to your application and configure it to provide default WiFi interface. - -``` -mbed add -``` - -For example adding ISM43362 driver `mbed add wifi-ism43362` or X-Nucleo-IDW01M1 driver `mbed add wifi-x-nucleo-idw01m1` -The ESP8266 driver is already suplied by Mbed OS. - -Then pin names need to be configured as instructed in the drivers README file. ## Getting started ## @@ -50,6 +29,8 @@ Then pin names need to be configured as instructed in the drivers README file. cd mbed-os-example-wifi ``` + Or if you fetched the example with `git clone`, run `mbed deploy` inside the cloned repository. + 1. Configure the Wi-Fi shield and settings. Edit ```mbed_app.json``` to include the correct Wi-Fi shield, SSID and password: @@ -77,13 +58,13 @@ Then pin names need to be configured as instructed in the drivers README file. For build-in WiFi, you do not need to set any `provide-default` values. Those are required if you use external WiFi shield. - Sample ```mbed_app.json``` files are provided for ESP8266 (```mbed_app_esp8266.json```), X-NUCLEO-IDW04A1 (```mbed_app_idw04a1.json```) and X-NUCLEO-IDW01M1 (```mbed_app_idw01m1```). + A sample ```mbed_app.json``` file is provided for ESP8266 (```mbed_app_esp8266.json```). 1. Compile and generate binary. For example, for `GCC`: ``` - mbed compile -t GCC_ARM -m UBLOX_EVK_ODIN_W2 + mbed compile -t GCC_ARM -m DISCO_L475VG_IOT01A ``` 1. Open a serial console session with the target platform using the following parameters: diff --git a/drivers/COMPONENT_wifi_ism43362.lib b/drivers/COMPONENT_wifi_ism43362.lib new file mode 100644 index 0000000..1abfaca --- /dev/null +++ b/drivers/COMPONENT_wifi_ism43362.lib @@ -0,0 +1 @@ +https://github.com/ARMmbed/wifi-ism43362/#9e1851a7fe5e2ffb07533aacc7114df2e73f7784 diff --git a/mbed_app.json b/mbed_app.json index 9d1b6d1..6bdb95b 100644 --- a/mbed_app.json +++ b/mbed_app.json @@ -14,9 +14,11 @@ "platform.stdio-convert-newlines": true }, "DISCO_L475VG_IOT01A": { + "target.components_add": ["wifi_ism43362"], "ism43362.provide-default": true }, "DISCO_F413ZH": { + "target.components_add": ["wifi_ism43362"], "ism43362.provide-default": true } } diff --git a/mbed_app_idw01m1.json b/mbed_app_idw01m1.json deleted file mode 100644 index 8f6b0f8..0000000 --- a/mbed_app_idw01m1.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "config": { - "wifi-ssid": { - "help": "WiFi SSID", - "value": "\"SSID\"" - }, - "wifi-password": { - "help": "WiFi Password", - "value": "\"PASSWORD\"" - } - }, - "target_overrides": { - "*": { - "platform.stdio-convert-newlines": true, - "idw0xx1.expansion-board": "IDW01M1", - "idw0xx1.provide-default": true, - "idw0xx1.tx": "PA_9", - "idw0xx1.rx": "PA_10", - "drivers.uart-serial-txbuf-size": 730, - "drivers.uart-serial-rxbuf-size": 730 - } - } -} diff --git a/mbed_app_idw04a1.json b/mbed_app_idw04a1.json deleted file mode 100644 index b9189dc..0000000 --- a/mbed_app_idw04a1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "config": { - "wifi-shield": { - "help": "Options are internal, WIFI_ESP8266, WIFI_IDW0XX1", - "value": "WIFI_IDW0XX1" - }, - "wifi-ssid": { - "help": "WiFi SSID", - "value": "\"SSID\"" - }, - "wifi-password": { - "help": "WiFi Password", - "value": "\"PASSWORD\"" - } - }, - "target_overrides": { - "*": { - "platform.stdio-convert-newlines": true, - "idw0xx1.expansion-board": "IDW04A1", - "idw0xx1.provide-default": true, - "idw0xx1.tx": "PA_9", - "idw0xx1.rx": "PA_10", - "drivers.uart-serial-txbuf-size": 750, - "drivers.uart-serial-rxbuf-size": 750 - } - }, - "macros": ["IDW04A1_WIFI_HW_BUG_WA"] -}