Project

General

Profile

Wiki » History » Version 13

Frédéric Blanc, 2018-09-20 14:27

1 1 Frédéric Blanc
h1. Wiki
2
3 6 Frédéric Blanc
h2. Overview 
4
5
ESP32 is a series of low-cost, low-power system on a chip microcontrollers with integrated Wi-Fi (802.11 b/g/n) and dual-mode Bluetooth(v4.2 BR/EDR and BLE). The ESP32 series employs a Tensilica Xtensa LX6 microprocessor in both dual-core and single-core variations and includes in-built antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power-management modules. ESP32 is created and developed by Espressif Systems, a Shanghai-based Chinese company, and is manufactured by TSMC using their 40 nm process. It is a successor to the ESP8266 microcontroller. 
6
7
https://www.espressif.com/en/products/hardware/esp32/overview
8
9
h2. Hardware
10
11 8 Frédéric Blanc
h3. Core
12
13
*CPU*: Xtensa dual-core (or single-core) 32-bit LX6 microprocessor, operating at 160 or 240 MHz and performing at up to 600 DMIPS
14
*Memory*: 520KiB SRAM
15
*Power* management: 5uA deep sleep current
16
17 6 Frédéric Blanc
h3. Wi-Fi
18
19 7 Frédéric Blanc
Wi-Fi: 802.11 b/g/n
20
21 6 Frédéric Blanc
h3. Bluetooth
22 7 Frédéric Blanc
23
Bluetooth v4.2 BR/EDR and BLE
24 6 Frédéric Blanc
25
h3. ADC
26
27 4 Frédéric Blanc
!{width: 50%}esp32_adc001.png!
28 5 Frédéric Blanc
Features
29
• Two SAR ADCs, with simultaneous sampling and conversion
30
• Up to five SAR ADC controllers for different purposes (e.g. high performance, low power or PWDET /PKDET).
31
• Up to 18 analog input pads
32
• One channel for internal voltage vdd33, two for pa_pkdet (available on selected controllers)
33
• Low-noise amplifier for small analog signals (available on one controller)
34
• 12-bit, 11-bit, 10-bit, 9-bit configurable resolution
35
• DMA support (available on one controller)
36
• Multiple channel-scanning modes (available on two controllers)
37
• Operation during deep sleep (available on one controller)
38
• Controlled by a ULP coprocessor (available on two controllers)
39 9 Frédéric Blanc
40 11 Frédéric Blanc
h2. Software
41
42
h3. Filesystem
43
44 12 Frédéric Blanc
*File system object (SPIFFS)*
45
46 11 Frédéric Blanc
The filesystem implementation for ESP8266 had to accomodate the constraints of the chip, among which its limited RAM. SPIFFS was selected because it is designed for small systems, but that comes at the cost of some simplifications and limitations.
47
48
https://arduino-esp8266.readthedocs.io/en/2.4.2/filesystem.html
49
50 13 Frédéric Blanc
h3. OTA Updates
51
52
OTA (Over the Air) update is the process of loading the firmware to ESP module using Wi-Fi connection rather than a serial port. Such functionality became extremely useful in case of limited or no physical access to the module.
53
54
https://arduino-esp8266.readthedocs.io/en/2.4.2/ota_updates/readme.html
55
56 10 Frédéric Blanc
h2. Example
57 9 Frédéric Blanc
58
WebSockets for awesome on the ESP8266
59
https://www.youtube.com/watch?v=8ISbmQTbjDI
60
https://github.com/cnlohr/colorchord