Test Program for the ESP8266 Library, uses AT Thinker Firmware

Dependencies:   ESP8266Interface

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/

This is a test program for the ESP8266Interface Library.

Committer:
mbedAustin
Date:
Tue Apr 28 20:18:04 2015 +0000
Revision:
3:5175e53017e4
Parent:
1:f61c1001ee60
Child:
4:d02fdd139307
IP Function Works

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 uint8_t macbytes[6] = {0};
michaeljkoster 1:f61c1001ee60 15 char MAC[20] = "665544332211";
michaeljkoster 0:6a891da014a3 16
michaeljkoster 0:6a891da014a3 17 int main()
michaeljkoster 0:6a891da014a3 18 {
mbedAustin 3:5175e53017e4 19 pc.baud(115200);
mbedAustin 3:5175e53017e4 20 int check = 0;
mbedAustin 3:5175e53017e4 21 pc.printf("\n\rSystemCoreClock=: %d", SystemCoreClock / 1000000) ;
mbedAustin 3:5175e53017e4 22
mbedAustin 3:5175e53017e4 23 // Init ESP8266
mbedAustin 3:5175e53017e4 24 pc.printf("\r\nwifi.init: ");
mbedAustin 3:5175e53017e4 25 check = wifi.init(); // initialize the interface, reset the module
mbedAustin 3:5175e53017e4 26 pc.printf("%d",check);
mbedAustin 3:5175e53017e4 27
mbedAustin 3:5175e53017e4 28 // Initialize Socket
mbedAustin 3:5175e53017e4 29 pc.printf("\r\nwifi.connect: ");
mbedAustin 3:5175e53017e4 30 check = wifi.connect(); // join AP and get DHCP settings
mbedAustin 3:5175e53017e4 31 pc.printf("%d",check);
mbedAustin 3:5175e53017e4 32
mbedAustin 3:5175e53017e4 33 // printf("\r\nsocket init: ");
mbedAustin 3:5175e53017e4 34 // check = server.init();
mbedAustin 3:5175e53017e4 35 // printf("%d",check);
mbedAustin 3:5175e53017e4 36 //
mbedAustin 3:5175e53017e4 37 // printf("\r\nsocket bind: ");
mbedAustin 3:5175e53017e4 38 // check = server.bind(0);
mbedAustin 3:5175e53017e4 39 // printf("%d",check);
mbedAustin 3:5175e53017e4 40 //
mbedAustin 3:5175e53017e4 41 // printf("\r\nset blocking option");
mbedAustin 3:5175e53017e4 42 // server.set_blocking(UDP_blocking, UDP_timeout);
mbedAustin 3:5175e53017e4 43 wifi.sendCommand("AT+CWJAP?", NULL, NULL, 1000);
mbedAustin 3:5175e53017e4 44
mbedAustin 3:5175e53017e4 45 check = wifi.is_connected();
mbedAustin 3:5175e53017e4 46 pc.printf("\r\nwifi connected: %d,\r\n",check);
mbedAustin 3:5175e53017e4 47
mbedAustin 3:5175e53017e4 48 char * ip = NULL;
mbedAustin 3:5175e53017e4 49 ip = wifi.getIPAddress();
mbedAustin 3:5175e53017e4 50 pc.printf("\n\rIP = %s \n\r",ip);
mbedAustin 3:5175e53017e4 51
mbedAustin 3:5175e53017e4 52 pc.printf("\r\nStarting while1 loop\r\n");
mbedAustin 3:5175e53017e4 53 while(1) {
mbedAustin 3:5175e53017e4 54 if(pc.readable()) {
mbedAustin 3:5175e53017e4 55 char c = pc.getc();
mbedAustin 3:5175e53017e4 56 //pc.putc(c); // echo character back to computer for sanity
mbedAustin 3:5175e53017e4 57 wifi.putc(c);
mbedAustin 3:5175e53017e4 58 }
mbedAustin 3:5175e53017e4 59 if(wifi.readable()) {
mbedAustin 3:5175e53017e4 60 char c = wifi.getc();
mbedAustin 3:5175e53017e4 61 pc.putc(c);
mbedAustin 3:5175e53017e4 62 }
mbedAustin 3:5175e53017e4 63 }
michaeljkoster 0:6a891da014a3 64 }