Simple Webserver example for wiznet W5500 (SPI Ethernet chip) mbed OS 5 - HTTP 1.1 and multi-threaded
Dependencies: W5500Interface easy-connect mbed-http
Fork of http-webserver-example by
mbed-os-example-http-server
This application demonstrates how to run an HTTP server on an mbed OS 5 device & WIZnet W5500 Ethernet components.
Request parsing is done through [nodejs/http-parser](https://github.com/nodejs/http-parser).
To build
- Open ``mbed_app.json`` and change the `network-interface` option to your connectivity method ([more info](https://github.com/ARMmbed/easy-connect)).
- Build the project in the online compiler or using mbed CLI.
- Flash the project to your development board.
- Attach a serial monitor to your board to see the debug messages.
Tested on
- NUCLEO_F411RE with W5500 Ethernet shield.
- For W5500, you need the following libraries.
Import libraryW5500Interface
W5500 driver for mbed OS 5
Import libraryeasy-connect
Modified version of easy-connect for W5500 Ethernet components
But every networking stack that supports the [mbed OS 5 NetworkInterface API](https://docs.mbed.com/docs/mbed-os-api-reference/en/latest/APIs/communication/network_sockets/) should work.
Test Result
mbed_app.json
- Committer:
- Jan Jongboom
- Date:
- 2017-07-31
- Revision:
- 0:41f820ea137a
- Child:
- 1:fe3df398bdf5
File content as of revision 0:41f820ea137a:
{ "config": { "network-interface": { "help": "options are ETHERNET, WIFI_ESP8266, WIFI_ODIN, WIFI_RTW, MESH_LOWPAN_ND, MESH_THREAD", "value": "WIFI_ESP8266" }, "mesh_radio_type": { "help": "options are ATMEL, MCR20, SPIRIT1, EFR32", "value": "ATMEL" }, "esp8266-tx": { "help": "Pin used as TX (connects to ESP8266 RX)", "value": "D1" }, "esp8266-rx": { "help": "Pin used as RX (connects to ESP8266 TX)", "value": "D0" }, "esp8266-debug": { "value": true }, "wifi-ssid": { "value": "\"SSID\"" }, "wifi-password": { "value": "\"Password\"" } }, "target_overrides": { "*": { "target.features_add": ["NANOSTACK", "LOWPAN_ROUTER", "COMMON_PAL"], "mbed-mesh-api.6lowpan-nd-channel-page": 0, "mbed-mesh-api.6lowpan-nd-channel": 12, "mbed-trace.enable": 0, "mbed-http.http-buffer-size": 2048 }, "HEXIWEAR": { "esp8266-tx": "PTD3", "esp8266-rx": "PTD2" }, "NUCLEO_F401RE": { "esp8266-tx": "D8", "esp8266-rx": "D2" }, "NUCLEO_F411RE": { "esp8266-tx": "D8", "esp8266-rx": "D2" } } }