![](/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.
main.cpp
- Committer:
- mbedAustin
- Date:
- 2015-04-30
- Revision:
- 6:9ca92d1d90dd
- Parent:
- 4:d02fdd139307
- Child:
- 7:d2c97b20d237
File content as of revision 6:9ca92d1d90dd:
#include "mbed.h" #define DEBUG 1 #include "ESP8266Interface.h" //#include "UDPSocket.h" #include "TCPSocketConnection.h" #include "Endpoint.h" RawSerial pc(USBTX, USBRX); // tx, rx ESP8266Interface wifi(D1,D0,D10,"demossid","password",115200); // TX,RX,Reset,SSID,Password TCPSocketConnection tcp; //bool UDP_blocking = false; //unsigned int UDP_timeout = 100; int main() { pc.baud(115200); int check = 0; pc.printf("\n\rSystemCoreClock=: %d", SystemCoreClock / 1000000) ; // Init ESP8266 pc.printf("\r\nwifi.init: "); check = wifi.init(); // initialize the interface, reset the module pc.printf("%d",check); // Initialize Socket pc.printf("\r\nwifi.connect: "); check = wifi.connect(); // join AP and get DHCP settings pc.printf("%d",check); // printf("\r\nsocket init: "); // check = server.init(); // printf("%d",check); // // printf("\r\nsocket bind: "); // check = server.bind(0); // printf("%d",check); // // printf("\r\nset blocking option"); // server.set_blocking(UDP_blocking, UDP_timeout); check = tcp.connect("192.168.2.4",8080); printf("\r\tcp.connect() result is: %d \r\n",check); char testString[] = "Hello There!!"; // check = tcp.send((char *)testString, sizeof(testString)); // printf("\r\tcp.send() result is : %d",check); // if(wifi.is_connected()) { // pc.printf("\r\nConnected to Wifi!\r\n"); // } else { // pc.printf("\r\nFailed to Connect to Wifi...\r\n"); // } //pc.printf("\n\rIP = %s \n\r",wifi.getIPAddress()); char receiveString[30] = {0}; while(1) { check = tcp.send((char *)testString, sizeof(testString)); check = tcp.receive(receiveString,sizeof(receiveString)); for(int x =0; x<check; x++) { pc.putc(receiveString[x]); } } pc.printf("\r\n#####Starting Interactive Terminal:#####\r\n"); while(1) { if(pc.readable()) { char c = pc.getc(); wifi.putc(c); } if(wifi.readable()) { char c = wifi.getc(); pc.putc(c); } } }