A quick example of a simple WiFi application using the WiFi and network-socket APIs that is provided as a part of mbed-os.
The program brings up the WiFi and the underlying network interface, and uses it to scans available networks, connects to a network, prints interface and connection details and performs simple HTTP operation.
Supported hardware:
- UBLOX Odin board built-in WiFi module
- REALTEK_RTL8195AM built-in WiFi module
- NUCLEO_F401RE with X-NUCLEO-IDW01M1 WiFi expansion board using pins D8 D2
- NUCLEO_F429ZI with ESP8266-01 module using pins D1 D0
- NUCLEO_L476RG with ESP8266-01 module using pins D8 D2
- Other mbed targets with ESP8266 module or X-NUCLEO-IDW01M1 expansion board
Not that the mbed target board the WiFi shield gets connected to shouldn't have any other network interface e.g. Ethernet.
ESP8266 is a fallback option and will be used if the build is for unsupported platform.
Revision 86:92e4be20dc8b, committed 2018-11-26
- Comitter:
- mbed_official
- Date:
- Mon Nov 26 14:00:04 2018 +0000
- Parent:
- 85:ff7c061e1875
- Child:
- 87:dda31ae09824
- Commit message:
- Updated config files and fixed README.md minor displaying issues
.
Commit copied from https://github.com/ARMmbed/mbed-os-example-wifi
Changed in this revision
--- a/README.md Thu Nov 22 11:00:04 2018 +0000 +++ b/README.md Mon Nov 26 14:00:04 2018 +0000 @@ -59,10 +59,9 @@ ``` 1. Configure the Wi-Fi shield and settings. - Edit ```mbed_app.json``` to include the correct Wi-Fi shield, SSID and password: - ``` +```json { "config": { "wifi-ssid": { @@ -81,8 +80,7 @@ } } } - - ``` +``` For build-in WiFi, you do not need to set any `provide-default` values. Those are required if you use external WiFi shield.
--- a/mbed_app_esp8266.json Thu Nov 22 11:00:04 2018 +0000 +++ b/mbed_app_esp8266.json Mon Nov 26 14:00:04 2018 +0000 @@ -7,14 +7,6 @@ "wifi-password": { "help": "WiFi Password", "value": "\"PASSWORD\"" - }, - "wifi-tx": { - "help": "TX pin for serial connection to external device", - "value": "D1" - }, - "wifi-rx": { - "help": "RX pin for serial connection to external device", - "value": "D0" } }, "target_overrides": {
--- a/mbed_app_idw01m1.json Thu Nov 22 11:00:04 2018 +0000 +++ b/mbed_app_idw01m1.json Mon Nov 26 14:00:04 2018 +0000 @@ -7,14 +7,6 @@ "wifi-password": { "help": "WiFi Password", "value": "\"PASSWORD\"" - }, - "wifi-tx": { - "help": "TX pin for serial connection to external device", - "value": "PA_9" - }, - "wifi-rx": { - "help": "RX pin for serial connection to external device", - "value": "PA_10" } }, "target_overrides": { @@ -22,6 +14,8 @@ "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 },
--- a/mbed_app_idw04a1.json Thu Nov 22 11:00:04 2018 +0000 +++ b/mbed_app_idw04a1.json Mon Nov 26 14:00:04 2018 +0000 @@ -11,20 +11,15 @@ "wifi-password": { "help": "WiFi Password", "value": "\"PASSWORD\"" - }, - "wifi-tx": { - "help": "TX pin for serial connection to external device", - "value": "D8" - }, - "wifi-rx": { - "help": "RX pin for serial connection to external device", - "value": "D2" } }, "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 },