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.

Committer:
mbed_official
Date:
Fri Dec 09 11:15:04 2016 +0000
Revision:
6:9944c5308062
Parent:
0:857719181846
Child:
10:5b5beb106156
Details on connecting ESP2866
.
Commit copied from https://github.com/ARMmbed/mbed-os-example-wifi

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 0:857719181846 1 # mbed-os-example-wifi #
mbed_official 0:857719181846 2
mbed_official 0:857719181846 3 WiFi example for mbed OS
mbed_official 0:857719181846 4
mbed_official 0:857719181846 5 ## Getting started with the WiFi API ##
mbed_official 0:857719181846 6
mbed_official 0:857719181846 7 This is a quick example of a simple WiFi application using the WiFi and network-socket APIs that is provided as a part of [mbed-os](github.com/armmbed/mbed-os).
mbed_official 0:857719181846 8
mbed_official 0:857719181846 9 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.
mbed_official 0:857719181846 10
mbed_official 0:857719181846 11 ### Supported hardware ###
mbed_official 0:857719181846 12
mbed_official 0:857719181846 13 * [UBLOX Odin board](https://developer.mbed.org/platforms/ublox-EVK-ODIN-W2/) (`UBLOX_EVK_ODIN_W2` target when using mbed CLI)
mbed_official 0:857719181846 14 * Other mbed target with ESP2866 module (Board it's connected to shouldn't have other network interface eg. Ethernet)
mbed_official 0:857719181846 15
mbed_official 0:857719181846 16 ESP2866 is a fallback option and will be used if the build is for unsupported platform.
mbed_official 0:857719181846 17
mbed_official 6:9944c5308062 18 #### Connecting the ESP2866 ####
mbed_official 6:9944c5308062 19
mbed_official 6:9944c5308062 20 ESP module needs to be connected to RX and TX UART pins (+ power and ground) on your target board. That can be achieved using Grove shield or connected directly using jumper wires, please note that not all Arduino form factor boards have UART compatible with the Grove shiled.
mbed_official 6:9944c5308062 21
mbed_official 6:9944c5308062 22 For Grove shield TX has to be connected to D1 and RX to D0.
mbed_official 6:9944c5308062 23
mbed_official 6:9944c5308062 24 Make sure that UART module you're connecting ESP to is different than the debug UART connected to your USB port.
mbed_official 6:9944c5308062 25
mbed_official 0:857719181846 26 ## Getting started
mbed_official 0:857719181846 27
mbed_official 0:857719181846 28 1. Import the example
mbed_official 0:857719181846 29
mbed_official 0:857719181846 30 ```
mbed_official 0:857719181846 31 mbed import mbed-os-example-wifi
mbed_official 0:857719181846 32 cd mbed-os-example-wifi
mbed_official 0:857719181846 33 ```
mbed_official 0:857719181846 34 2. Configure the WiFi credentials
mbed_official 0:857719181846 35
mbed_official 0:857719181846 36 Edit ```mbed_app.json``` to include correct SSID and Password:
mbed_official 0:857719181846 37
mbed_official 0:857719181846 38 ```
mbed_official 0:857719181846 39 "config": {
mbed_official 0:857719181846 40 "wifi-ssid": {
mbed_official 0:857719181846 41 "help": "WiFi SSID",
mbed_official 0:857719181846 42 "value": "\"SSID\""
mbed_official 0:857719181846 43 },
mbed_official 0:857719181846 44 "wifi-password": {
mbed_official 0:857719181846 45 "help": "WiFi Password",
mbed_official 0:857719181846 46 "value": "\"Password\""
mbed_official 0:857719181846 47 }
mbed_official 0:857719181846 48 },
mbed_official 0:857719181846 49 ```
mbed_official 0:857719181846 50
mbed_official 0:857719181846 51 3. Compile and generate binary
mbed_official 0:857719181846 52
mbed_official 0:857719181846 53 For example, for `GCC`:
mbed_official 0:857719181846 54
mbed_official 0:857719181846 55 ```
mbed_official 0:857719181846 56 mbed compile -t GCC_ARM -m UBLOX_EVK_ODIN_W2
mbed_official 0:857719181846 57 ```
mbed_official 0:857719181846 58
mbed_official 0:857719181846 59 ## Documentation ##
mbed_official 0:857719181846 60
mbed_official 0:857719181846 61 More information on the network-socket API can be found in the [mbed handbook](https://docs.mbed.com/docs/mbed-os-api-reference/en/5.2/APIs/communication/network_sockets/).