![](/media/cache/group/ESP01v0.jpg.50x50_q85.jpg)
ESP8266 web sockets
Dependencies: ESP8266Interface WebSocketClient mbed
Fork of ESP8266_Test by
This repository has been superceded
This project has moved to https://developer.mbed.org/teams/ESP8266/code/mbed-os-example-esp8266/
Introduction
This is a basic Hello World program for interfacing the ESP8266 chip with websockets. It will connect and send a message to this web socket server location: 192.168.1.20 : 8888.
You can find the python server code here.
ESP8266_WebSockets_HelloWorld
- Initiliaze ESP8266 with DHCP enabled
- Create a socketed connection with the above server
- It will send this message "n WebSocket Hello World over wifi", where n is the number of times it has sent.
- Websocket server echoes the string sent (backwards)
You can view the debug messages of this program by using a serial terminal set to 115200 baud.
Diff: main.cpp
- Revision:
- 8:af3b0b5438ad
- Parent:
- 7:d2c97b20d237
- Child:
- 9:91fe783e1dd4
diff -r d2c97b20d237 -r af3b0b5438ad main.cpp --- a/main.cpp Thu Apr 30 21:26:41 2015 +0000 +++ b/main.cpp Fri May 01 15:40:01 2015 +0000 @@ -1,35 +1,36 @@ #include "mbed.h" #include "ESP8266Interface.h" -#include "TCPSocketConnection.h" +#include "UDPSocket.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 RawSerial pc(USBTX, USBRX); // tx, rx - + int main() { pc.baud(115200); wifi.init(); //Use DHCP wifi.connect(); - pc.printf("IP Address is %s\n", wifi.getIPAddress()); + + UDPSocket sock; + sock.init(); - 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); - } + Endpoint echo_server; + echo_server.set_address(ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT); - char hello[] = "Hello World\n"; - socket.send_all(hello, sizeof(hello) - 1); + pc.printf("\r\nESP IP: %s\r\n",wifi.getIPAddress()); + + char out_buffer[] = "Hello World\n"; + sock.sendTo(echo_server, out_buffer, sizeof(out_buffer)); - char buf[256]; - int n = socket.receive(buf, 256); - buf[n] = '\0'; - pc.printf("%s", buf); + char in_buffer[256]; + int n = sock.receiveFrom(echo_server, in_buffer, sizeof(in_buffer)); + + in_buffer[n] = '\0'; + pc.printf("%s\n", in_buffer); - socket.close(); - wifi.disconnect(); + sock.close(); - while(true) {} -} - \ No newline at end of file + wifi.disconnect(); + while(1) {} +} \ No newline at end of file