ESP8266 : Introduction - JohnHau/mis GitHub Wiki

What is the ESP8266? ESP8266 is a wifi SOC (system on a chip) produced by Espressif Systems . It is an highly integrated chip designed to provide full internet connectivity in a small package.

http://fabacademy.org/archives/2015/doc/networking-esp8266.html

What is it good for? ESP8266 can be used as an external Wifi module, using the standard AT Command set Firmware by connecting it to any microcontroller using the serial UART, or directly serve as a Wifi-enabled micro controller, by programming a new firmware using the provided SDK.

The GPIO pins allow Analog and Digital IO, plus PWM, SPI, I2C, etc.

This board has been around for almost a year now, and has been used mostly in IoT contexts, where we want to add connectivity for example to an Arduino project. A wide adoption has been facilitated by the very modest price, ranging from 2.50 to 10 USD depending on the features offered by the manufacturers.

Some example projects:

Temperature logging and Web UI Retro Web Browser Internet Enabled Smoke alarm Technical Features 802.11 b / g / n Wi-Fi Direct (P2P), soft-AP Built-in TCP / IP protocol stack Built-in TR switch, balun, LNA, power amplifier and matching network Built-in PLL, voltage regulator and power management components 802.11b mode + 19.5dBm output power Built-in temperature sensor Support antenna diversity off leakage current is less than 10uA Built-in low-power 32-bit CPU: can double as an application processor SDIO 2.0, SPI, UART STBC, 1×1 MIMO, 2×1 MIMO A-MPDU, A-MSDU aggregation and the 0.4 Within wake 2ms, connect and transfer data packets standby power consumption of less than 1.0mW (DTIM3) Variants ESP8266-based boards are available from several vendors and with different breakout boards. Most of the boards differ in the number of pins made available, the amount of Flash memory for storing program and data, and the shielding on the SOC for certified boards.

Some boards also support an external uFL antenna connector as well as the buil-in on-chip antenna.

The most common variants are:

image

image

image

Using the ESP8266 with Arduino Several Libraries have been developed to use ESP8266 as a module for Arduinos.

Also there is a port of the Arduino IDE for programming the ESP Directly, see below.

Using the ESP8266 via Serial port You can interact with the ESP8266 sending AT Commands via the provided TX and RX pins by using another microcontroller.

Pay attention to the voltage of your signal lines, as the ESP8266 only works with 3.3v and pins are not 5V tolerant.

I.e. if you want to attach it to an Arduino clone you must use a logic level converter such as this .

An alternative to the logic level converter is to build a voltage divider circuit for each signal line.

Programming the ESP8266 Directly In order to program the ESP directly you need to install a toolchain and firmware upload utility.

The ESP8266 Wiki explains the process in detail.

You should use the ESP Open SDK to build your toolchain.

Espressif also provides an SDK containing the AT Firmware and the proprietary libraries.

Finally a ready to use VirtualBox virtual machine is available here

As an alternative you might want to program the ESP using the Arduino libraries. A port of the Arduino IDE 1.6.x is available here .

Documentation English Datasheet Resources NURDSpace ESP8266 Community Wiki Vendor Wiki Peter Scargill Blog