test
Dependents: mbed-os-example-blinky-1stDevDemo
README.md@0:79ce2b184a43, 2018-05-23 (annotated)
- Committer:
- karen801
- Date:
- Wed May 23 14:37:10 2018 +0000
- Revision:
- 0:79ce2b184a43
Initial commit
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
karen801 | 0:79ce2b184a43 | 1 | # Prototype Driver for STM Wi-Fi Expansion Boards based on the SPWFxx Module for STM32 Nucleo # |
karen801 | 0:79ce2b184a43 | 2 | |
karen801 | 0:79ce2b184a43 | 3 | ## Currently supported expansion boards |
karen801 | 0:79ce2b184a43 | 4 | * [X-NUCLEO-IDW01M1](http://www.st.com/content/st_com/en/products/ecosystems/stm32-open-development-environment/stm32-nucleo-expansion-boards/stm32-ode-connect-hw/x-nucleo-idw01m1.html), by setting `mbed` configuration variable `idw0xx1.expansion-board` to value `IDW01M1` |
karen801 | 0:79ce2b184a43 | 5 | * [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), by setting `mbed` configuration variable `idw0xx1.expansion-board` to value `IDW04A1`. You might also need to define macro `IDW04A1_WIFI_HW_BUG_WA` _(see beyond)_. |
karen801 | 0:79ce2b184a43 | 6 | |
karen801 | 0:79ce2b184a43 | 7 | ## Configuration examples |
karen801 | 0:79ce2b184a43 | 8 | |
karen801 | 0:79ce2b184a43 | 9 | ### Generic concepts |
karen801 | 0:79ce2b184a43 | 10 | |
karen801 | 0:79ce2b184a43 | 11 | For the ones, which might be less familiar with the **"The mbed configuration system"** in general, here is a [link](https://docs.mbed.com/docs/mbed-os-handbook/en/latest/advanced/config_system/) which points to the latest version of the respective _mbed OS 5 handbook tutorial_. |
karen801 | 0:79ce2b184a43 | 12 | |
karen801 | 0:79ce2b184a43 | 13 | Furthermore, with respect to this driver, pls. refer to files [`mbed_app_idw01m1.json`](https://github.com/ARMmbed/wifi-x-nucleo-idw01m1/blob/master/mbed_app_idw01m1.json) and [`mbed_app_idw04a1.json`](https://github.com/ARMmbed/wifi-x-nucleo-idw01m1/blob/master/mbed_app_idw04a1.json) regarding additional reference for what is explained beyond. |
karen801 | 0:79ce2b184a43 | 14 | |
karen801 | 0:79ce2b184a43 | 15 | ### IDW01M1 |
karen801 | 0:79ce2b184a43 | 16 | |
karen801 | 0:79ce2b184a43 | 17 | Add the following lines to the `target_overrides`-section of your `mbed_app.json` file. |
karen801 | 0:79ce2b184a43 | 18 | |
karen801 | 0:79ce2b184a43 | 19 | ``` json |
karen801 | 0:79ce2b184a43 | 20 | "idw0xx1.expansion-board": "IDW01M1", |
karen801 | 0:79ce2b184a43 | 21 | "drivers.uart-serial-txbuf-size": 512, |
karen801 | 0:79ce2b184a43 | 22 | "drivers.uart-serial-rxbuf-size": 512 |
karen801 | 0:79ce2b184a43 | 23 | ``` |
karen801 | 0:79ce2b184a43 | 24 | |
karen801 | 0:79ce2b184a43 | 25 | `IDW01M1` is the default value in the [`mbed_lib.json`](https://github.com/ARMmbed/wifi-x-nucleo-idw01m1/blob/master/mbed_lib.json) file, so setting the expansion board is not mandatory for `IDW01M1`, while setting the TX & RX buffer sizes is highly recommended. |
karen801 | 0:79ce2b184a43 | 26 | |
karen801 | 0:79ce2b184a43 | 27 | ### IDW04A1 |
karen801 | 0:79ce2b184a43 | 28 | |
karen801 | 0:79ce2b184a43 | 29 | Add the following lines to the `target_overrides`-section of your `mbed_app.json` file. |
karen801 | 0:79ce2b184a43 | 30 | |
karen801 | 0:79ce2b184a43 | 31 | ``` json |
karen801 | 0:79ce2b184a43 | 32 | "idw0xx1.expansion-board": "IDW04A1", |
karen801 | 0:79ce2b184a43 | 33 | "drivers.uart-serial-txbuf-size": 512, |
karen801 | 0:79ce2b184a43 | 34 | "drivers.uart-serial-rxbuf-size": 512 |
karen801 | 0:79ce2b184a43 | 35 | ``` |
karen801 | 0:79ce2b184a43 | 36 | |
karen801 | 0:79ce2b184a43 | 37 | ### Further configuration macros |
karen801 | 0:79ce2b184a43 | 38 | |
karen801 | 0:79ce2b184a43 | 39 | All configuration options mentioned in this section are optional and when required have to be added to the `macros`-section of your `mbed_app.json` file, e.g.: |
karen801 | 0:79ce2b184a43 | 40 | |
karen801 | 0:79ce2b184a43 | 41 | ``` json |
karen801 | 0:79ce2b184a43 | 42 | "macros": [..., "IDW04A1_WIFI_HW_BUG_WA", "SPWFSAXX_RESET_PIN=D7"] |
karen801 | 0:79ce2b184a43 | 43 | ``` |
karen801 | 0:79ce2b184a43 | 44 | |
karen801 | 0:79ce2b184a43 | 45 | Beyond you can find the list of available configuration macros each with a short explanation: |
karen801 | 0:79ce2b184a43 | 46 | * `IDW04A1_WIFI_HW_BUG_WA`: activates the HW bug workaround for `IDW04A1` |
karen801 | 0:79ce2b184a43 | 47 | * `SPWFSAXX_WAKEUP_PIN`: defines module wakeup pin _(requires value)_ |
karen801 | 0:79ce2b184a43 | 48 | * `SPWFSAXX_RESET_PIN`: defines module reset pin _(requires value)_ |
karen801 | 0:79ce2b184a43 | 49 | * `SPWFSAXX_RTS_PIN`: defines RTS pin of the UART device used _(requires value)_ |
karen801 | 0:79ce2b184a43 | 50 | * `SPWFSAXX_CTS_PIN`: defines CTS pin of the UART device used _(requires value)_ |
karen801 | 0:79ce2b184a43 | 51 | |
karen801 | 0:79ce2b184a43 | 52 | **Note**: if the values of both `SPWFSAXX_RTS_PIN` and `SPWFSAXX_CTS_PIN` are different from `NC`, hardware flow control - if available on your development board - will be enabled on the used UART device (provided you are using `mbed-os` version greater than or equal to `v5.7.0`). |
karen801 | 0:79ce2b184a43 | 53 | |
karen801 | 0:79ce2b184a43 | 54 | |
karen801 | 0:79ce2b184a43 | 55 | ## Firmware upgrade |
karen801 | 0:79ce2b184a43 | 56 | |
karen801 | 0:79ce2b184a43 | 57 | Please make sure that you are using the latest firmware available for the expansion boards. For information on how to perform a FW upgrade you may refer to [X-CUBE-WIFI1](http://www.st.com/content/st_com/en/products/embedded-software/mcus-embedded-software/stm32-embedded-software/stm32cube-embedded-software-expansion/x-cube-wifi1.html), especially to document **"X-NUCLEO-IDW0xx1- FW upgrading over UART_v1.2.pdf"** which is contained within folder **"Documentation"** of the X-CUBE-WIFI1 software archive you need to download. |
karen801 | 0:79ce2b184a43 | 58 | |
karen801 | 0:79ce2b184a43 | 59 | The actual firmware `.bin` or `.hex` files can be found under |
karen801 | 0:79ce2b184a43 | 60 | - [STSW-WIFI001](http://www.st.com/content/st_com/en/products/embedded-software/wireless-connectivity-software/stsw-wifi001.html) _for what concerns expansion board_ X-NUCLEO-IDW01M1 _and under_ |
karen801 | 0:79ce2b184a43 | 61 | - [STSW-WIFI004](http://www.st.com/content/st_com/en/products/embedded-software/wireless-connectivity-software/stsw-wifi004.html) _when considering_ X-NUCLEO-IDW04A1. |