Simple HTTP GET and POST with ESP8266.
Dependencies: ESP8266Interface HTTPClient-SSL WebSocketClient mbed-rtos mbed
Fork of ESP8266_HTTP_HelloWorld by
Revision 12:978788c2156c, committed 2015-06-03
- Comitter:
- sarahmarshy
- Date:
- Wed Jun 03 18:47:14 2015 +0000
- Parent:
- 11:8acce2b8af6e
- Child:
- 13:5f2bb0dc134b
- Commit message:
- Web sockets for ESP8266!
Changed in this revision
--- a/ESP8266Interface.lib Fri May 01 18:29:45 2015 +0000 +++ b/ESP8266Interface.lib Wed Jun 03 18:47:14 2015 +0000 @@ -1,1 +1,1 @@ -http://developer.mbed.org/teams/ESP8266/code/ESP8266Interface/#22d30e936e4c +http://developer.mbed.org/teams/ESP8266/code/ESP8266Interface/#c180905b5b79
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/WebSocketClient.lib Wed Jun 03 18:47:14 2015 +0000 @@ -0,0 +1,1 @@ +http://developer.mbed.org/users/samux/code/WebSocketClient/#4567996414a5
--- a/main.cpp Fri May 01 18:29:45 2015 +0000 +++ b/main.cpp Wed Jun 03 18:47:14 2015 +0000 @@ -1,34 +1,44 @@ #include "mbed.h" #include "ESP8266Interface.h" #include "TCPSocketConnection.h" - -const char* ECHO_SERVER_ADDRESS = "192.168.2.4"; -const int ECHO_SERVER_PORT = 8080; -ESP8266Interface wifi(D1,D0,D10,"demossid","password",115200); // TX,RX,Reset,SSID,Password +#include "TCPSocketServer.h" +#include "Websocket.h" + + + +ESP8266Interface wifi(D1,D0,D10,"demossid","password",115200); // TX,RX,Reset,SSID,Password,Baud RawSerial pc(USBTX, USBRX); // tx, rx int main() { pc.baud(115200); - wifi.init(); //Use DHCP - wifi.connect(); + wifi.init(); //Reset + wifi.connect(); //Use DHCP pc.printf("IP Address is %s\n", wifi.getIPAddress()); - TCPSocketConnection socket; - while (socket.connect(ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT) < 0) { - pc.printf("Unable to connect to (%s) on port (%d)\n", ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT); - wait(1); - } + Websocket ws("ws://192.168.1.20:8888/ws"); - char hello[] = "Hello World\n"; - socket.send_all(hello, sizeof(hello) - 1); - - char buf[256]; - int n = socket.receive(buf, 256); - buf[n] = '\0'; - pc.printf("%s", buf); - - socket.close(); - wifi.disconnect(); + //Check for successful socket connection + if(!ws.connect()) + ws.close(); + else{ + char str[100]; + + for(int i=0; i<0x7fffffff; ++i) { + // string with a message + sprintf(str, "%d WebSocket Hello World over Ethernet", i); + ws.send(str); + + // clear the buffer and wait a sec... + memset(str, 0, 100); + wait(0.5f); + + // websocket server should echo whatever we sent it + if (ws.read(str)) { + pc.printf("rcv'd: %s\n", str); + } + } + } + ws.close(); while(true) {} }
--- a/mbed.bld Fri May 01 18:29:45 2015 +0000 +++ b/mbed.bld Wed Jun 03 18:47:14 2015 +0000 @@ -1,1 +1,1 @@ -http://mbed.org/users/mbed_official/code/mbed/builds/433970e64889 \ No newline at end of file +http://mbed.org/users/mbed_official/code/mbed/builds/cbbeb26dbd92 \ No newline at end of file