3. Espressif
The ESP8266 is made by a privately Chinese company called EspressifSystems,a semiconductor
company that just came out of nowhere and shook up the whole industry.
In 2014, the Espressif Systems company launched the ESP8266, starting with ESP-01, a small board at
a very low cost.
ESP-01 came with a simple serial interface based on AT commands used in modems. Because of its
simplicity and price became very popular within makers community using Arduino to extend WiFi
connectivity to Arduino Uno.
In 2015, Espressif released the API to be able to program their ESP8266 microcontroller.
3
ESP-01
4. Espressif
Also in 2015, a company-independent group of people develop a LUA parser based on ESP8266 and
their own board, known as NodeMCU.
Ivan Grokhotkov, adapt the API so it can be programmed with Arduino IDE by developing the
esptool.
The API with libraries and tools is maintained by the community in GitHub:
4
https://github.com/esp8266/Arduino
NodeMCU
(1st generation)
5. Espressif
The ESP32 came out at the end of 2015 and overcomes ESP8266 limitations.
It is much faster. It has two cores and 520Kb RAM shared by the cores.
WiFi encryption carried out by dedicated hardware. This extends the possibility to use it for industrial
and commercial uses.
Available API to program ESP32 with Arduino IDE in GitHub.
5
ESP32-WROOM-32
https://github.com/espressif/arduino-esp32
6. ESP-01
With up to 4 GPIO available (considering TX and RX).
WiFi 802.11b/g/n
Includes 1Mb Flash (program memory)
AT-command interface: WiFi management, such station mode, access point, SSID, password,
etc…
Can be used as a web-server, remotely control a device, etc.
We can upload our own firmware, but this procedure is complex and requires a programmer.
6
ESP-01 programmer
ESP-01 pinout
7. NodeMCU
1st generation came with a ESP-12 and 4Mb Flash memory.
2nd generation came with ESP-12E (improved version).
Currently the 3rd generation is being used. 1st and 2nd generations were considerably wider.
Actually, officially there’s no 3rd generation. It is, simply a different version developed by
Lolin/Wemos.
Similar alternatives: Wemos D1 R2, Wemos D1 mini, SparkFun ESP8266 Thing, Adafruit
HUZZAH ESP8266 breakout, etc...
7
NodeMCU
(2nd generation)
NodeMCU
(3rd generation)
Wemos D1 R2 Wemos D1 mini SparkFun ESP8266 Adafruit HUZZAH
8. ESP8266 vs ESP32
8
Features ESP8266 ESP32
WiFi 802.11b/g/n 802.11b/g/n
Bluetooth - Bluetooth 4.2 & BLE
Clock 80Mhz 160Mhz
GPIO 17 36
PWM 8 channels 16 channels
ADC 1x10-bit 18x12-bit
SPI/I2C/UART 2/1/2 4/2/2
Other features - CAN, Ethernet, Touch, Temp, Hall effect
12. Wemos D1 R2 with Shield
12
Powerpins:3.3V, VUSB,VI
Gnd:Groundpins
GPIO:D0-D8
AnalogpinA0
Wemos D1 R2
Arduino Uno Sensor
Shield v5
13. Wemos D1 R32 with Shield
13
Powerpins:3.3V, VUSB,VI
Gnd:Groundpins
GPIO:D0-D8
AnalogpinA0
Wemos D1 R32
Arduino Uno Sensor
Shield v5
14. Setting up Arduino IDE
14
https://dl.espressif.com/dl/package_esp32_index.json
Arduino IDE Preferences In Tools access to the Boards Manager
Install the board esp32 by Espressif Systems and
Esp8266 by ESP8266 Community
Select Wemos LOLIN32 or NodeMCU 1.0 (ESP-12E
Module)
1 2
3
http://arduino.esp8266.com/stable/package_esp8266com_index.json