ESP8266 web sockets

Dependencies:   ESP8266Interface WebSocketClient mbed

Fork of ESP8266_Test by ESP8266

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

  1. Initiliaze ESP8266 with DHCP enabled
  2. Create a socketed connection with the above server
  3. It will send this message "n WebSocket Hello World over wifi", where n is the number of times it has sent.
  4. 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-05-01
Revision:
8:af3b0b5438ad
Parent:
7:d2c97b20d237
Child:
9:91fe783e1dd4

File content as of revision 8:af3b0b5438ad:

#include "mbed.h"
#include "ESP8266Interface.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();
    
    UDPSocket sock;
    sock.init();
    
    Endpoint echo_server;
    echo_server.set_address(ECHO_SERVER_ADDRESS, ECHO_SERVER_PORT);
    
    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 in_buffer[256];
    int n = sock.receiveFrom(echo_server, in_buffer, sizeof(in_buffer));
    
    in_buffer[n] = '\0';
    pc.printf("%s\n", in_buffer);
    
    sock.close();
    
    wifi.disconnect();
    while(1) {}
}