Basic websocket demo esp8266

Dependencies:   ESP8266Interface HTTPClient-SSL WebSocketClient mbed-rtos mbed-dev

Fork of ESP8266_HTTP_HelloWorld by ESP8266

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);
        }
    }
}