HTTP Client with ESP8266 working example
Dependencies: ESP8266Interface HTTPClient-SSL WebSocketClient mbed-rtos mbed
Fork of ESP8266_WebSockets_HelloWorld 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 HTTP. It will execute a GET on httpbin.org/get, and a POST to httpbin.org/post.
ESP8266_HTTP_HelloWorld
- change ssid and passphrase to match your wifi connection
- Initialize ESP8266 with DHCP enabled
- Get mbed.org
- Print the information retrieved
- Post to httbin.org
- Print the information retrieved
You can view the information retrieved through a serial terminal set to 9600 baud.
Successful Execution
you should see something like the following on the terminal if the program successfully executes.
main.cpp
- Committer:
- mbedAustin
- Date:
- 2015-04-28
- Revision:
- 3:5175e53017e4
- Parent:
- 1:f61c1001ee60
- Child:
- 4:d02fdd139307
File content as of revision 3:5175e53017e4:
#include "mbed.h" #define DEBUG 1 #include "ESP8266Interface.h" #include "UDPSocket.h" #include "Endpoint.h" RawSerial pc(USBTX, USBRX); // tx, rx ESP8266Interface wifi(D1,D0,D10,"demossid","password",115200); // TX,RX,Reset,SSID,Password UDPSocket server; bool UDP_blocking = false; unsigned int UDP_timeout = 100; uint8_t macbytes[6] = {0}; char MAC[20] = "665544332211"; 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); wifi.sendCommand("AT+CWJAP?", NULL, NULL, 1000); check = wifi.is_connected(); pc.printf("\r\nwifi connected: %d,\r\n",check); char * ip = NULL; ip = wifi.getIPAddress(); pc.printf("\n\rIP = %s \n\r",ip); pc.printf("\r\nStarting while1 loop\r\n"); while(1) { if(pc.readable()) { char c = pc.getc(); //pc.putc(c); // echo character back to computer for sanity wifi.putc(c); } if(wifi.readable()) { char c = wifi.getc(); pc.putc(c); } } }