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:

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:
77:b74ac6641a3e
Parent:
71:a0fbcc153b55
--- a/mbed_app.json	Tue Aug 28 11:15:03 2018 +0100
+++ b/mbed_app.json	Fri Aug 31 12:15:03 2018 +0100
@@ -1,9 +1,5 @@
 {
     "config": {
-        "wifi-shield": {
-            "help": "Options are internal, WIFI_ESP8266, WIFI_ISM43362, WIFI_IDW0XX1",
-            "value": "internal"
-        },
         "wifi-ssid": {
             "help": "WiFi SSID",
             "value": "\"SSID\""
@@ -11,33 +7,11 @@
         "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": {
         "*": {
             "platform.stdio-convert-newlines": true
-        },
-        "DISCO_F413ZH": {
-            "wifi-shield": "WIFI_ISM43362"
-        },
-        "DISCO_L475VG_IOT01A": {
-            "wifi-shield": "WIFI_ISM43362"
-        },
-        "NUCLEO_L476RG": {
-            "wifi-tx": "D8",
-            "wifi-rx": "D2"
-        },
-        "NUCLEO_F401RE": {
-            "wifi-tx": "D8",
-            "wifi-rx": "D2"
         }
     }
 }