Basic websocket demo esp8266

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

Fork of ESP8266_HTTP_HelloWorld by ESP8266

Committer:
mbedAustin
Date:
Wed Apr 29 22:43:10 2015 +0000
Revision:
4:d02fdd139307
Parent:
3:5175e53017e4
Child:
6:9ca92d1d90dd
safety save

Who changed what in which revision?

UserRevisionLine numberNew contents of line
michaeljkoster 0:6a891da014a3 1 #include "mbed.h"
mbedAustin 3:5175e53017e4 2 #define DEBUG 1
michaeljkoster 0:6a891da014a3 3 #include "ESP8266Interface.h"
michaeljkoster 0:6a891da014a3 4 #include "UDPSocket.h"
michaeljkoster 0:6a891da014a3 5 #include "Endpoint.h"
michaeljkoster 0:6a891da014a3 6
mbedAustin 3:5175e53017e4 7 RawSerial pc(USBTX, USBRX); // tx, rx
mbedAustin 3:5175e53017e4 8 ESP8266Interface wifi(D1,D0,D10,"demossid","password",115200); // TX,RX,Reset,SSID,Password
michaeljkoster 0:6a891da014a3 9
michaeljkoster 0:6a891da014a3 10 UDPSocket server;
michaeljkoster 0:6a891da014a3 11 bool UDP_blocking = false;
michaeljkoster 0:6a891da014a3 12 unsigned int UDP_timeout = 100;
michaeljkoster 0:6a891da014a3 13
michaeljkoster 0:6a891da014a3 14
michaeljkoster 0:6a891da014a3 15 int main()
michaeljkoster 0:6a891da014a3 16 {
mbedAustin 3:5175e53017e4 17 pc.baud(115200);
mbedAustin 3:5175e53017e4 18 int check = 0;
mbedAustin 3:5175e53017e4 19 pc.printf("\n\rSystemCoreClock=: %d", SystemCoreClock / 1000000) ;
mbedAustin 3:5175e53017e4 20
mbedAustin 3:5175e53017e4 21 // Init ESP8266
mbedAustin 3:5175e53017e4 22 pc.printf("\r\nwifi.init: ");
mbedAustin 3:5175e53017e4 23 check = wifi.init(); // initialize the interface, reset the module
mbedAustin 3:5175e53017e4 24 pc.printf("%d",check);
mbedAustin 3:5175e53017e4 25
mbedAustin 3:5175e53017e4 26 // Initialize Socket
mbedAustin 3:5175e53017e4 27 pc.printf("\r\nwifi.connect: ");
mbedAustin 3:5175e53017e4 28 check = wifi.connect(); // join AP and get DHCP settings
mbedAustin 3:5175e53017e4 29 pc.printf("%d",check);
mbedAustin 3:5175e53017e4 30
mbedAustin 3:5175e53017e4 31 // printf("\r\nsocket init: ");
mbedAustin 3:5175e53017e4 32 // check = server.init();
mbedAustin 3:5175e53017e4 33 // printf("%d",check);
mbedAustin 3:5175e53017e4 34 //
mbedAustin 3:5175e53017e4 35 // printf("\r\nsocket bind: ");
mbedAustin 3:5175e53017e4 36 // check = server.bind(0);
mbedAustin 3:5175e53017e4 37 // printf("%d",check);
mbedAustin 3:5175e53017e4 38 //
mbedAustin 3:5175e53017e4 39 // printf("\r\nset blocking option");
mbedAustin 3:5175e53017e4 40 // server.set_blocking(UDP_blocking, UDP_timeout);
mbedAustin 3:5175e53017e4 41
mbedAustin 4:d02fdd139307 42 if(wifi.is_connected()) {
mbedAustin 4:d02fdd139307 43 pc.printf("\r\nConnected to Wifi!\r\n");
mbedAustin 4:d02fdd139307 44 } else {
mbedAustin 4:d02fdd139307 45 pc.printf("\r\nFailed to Connect to Wifi...\r\n");
mbedAustin 4:d02fdd139307 46 }
mbedAustin 3:5175e53017e4 47
mbedAustin 4:d02fdd139307 48 pc.printf("\n\rIP = %s \n\r",wifi.getIPAddress());
mbedAustin 4:d02fdd139307 49
mbedAustin 4:d02fdd139307 50 pc.printf("\r\n#####Starting Interactive Terminal:#####\r\n");
mbedAustin 3:5175e53017e4 51 while(1) {
mbedAustin 3:5175e53017e4 52 if(pc.readable()) {
mbedAustin 3:5175e53017e4 53 char c = pc.getc();
mbedAustin 3:5175e53017e4 54 wifi.putc(c);
mbedAustin 3:5175e53017e4 55 }
mbedAustin 3:5175e53017e4 56 if(wifi.readable()) {
mbedAustin 3:5175e53017e4 57 char c = wifi.getc();
mbedAustin 3:5175e53017e4 58 pc.putc(c);
mbedAustin 3:5175e53017e4 59 }
mbedAustin 3:5175e53017e4 60 }
michaeljkoster 0:6a891da014a3 61 }