Project

General

Profile

Wiki » History » Version 15

Frédéric Blanc, 2021-05-29 16:43

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 14 Frédéric Blanc
ESP BLE Mesh
26
27
https://esp32.com/viewtopic.php?f=13&t=7875
28
29 6 Frédéric Blanc
h3. ADC
30
31 4 Frédéric Blanc
!{width: 50%}esp32_adc001.png!
32 5 Frédéric Blanc
Features
33
• Two SAR ADCs, with simultaneous sampling and conversion
34
• Up to five SAR ADC controllers for different purposes (e.g. high performance, low power or PWDET /PKDET).
35
• Up to 18 analog input pads
36
• One channel for internal voltage vdd33, two for pa_pkdet (available on selected controllers)
37
• Low-noise amplifier for small analog signals (available on one controller)
38
• 12-bit, 11-bit, 10-bit, 9-bit configurable resolution
39
• DMA support (available on one controller)
40
• Multiple channel-scanning modes (available on two controllers)
41
• Operation during deep sleep (available on one controller)
42
• Controlled by a ULP coprocessor (available on two controllers)
43 9 Frédéric Blanc
44 11 Frédéric Blanc
h2. Software
45
46 15 Frédéric Blanc
h3. FLASH
47
48
!clipboard-202105291643-cjva3.png!
49
flash module ESP32-WROOM-32
50
51 11 Frédéric Blanc
h3. Filesystem
52
53 12 Frédéric Blanc
*File system object (SPIFFS)*
54
55 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.
56
57
https://arduino-esp8266.readthedocs.io/en/2.4.2/filesystem.html
58
59 13 Frédéric Blanc
h3. OTA Updates
60
61
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.
62
63
https://arduino-esp8266.readthedocs.io/en/2.4.2/ota_updates/readme.html
64
65 10 Frédéric Blanc
h2. Example
66 9 Frédéric Blanc
67
WebSockets for awesome on the ESP8266
68
https://www.youtube.com/watch?v=8ISbmQTbjDI
69
https://github.com/cnlohr/colorchord