O ESP32 foi criado pela **Espressif Systems**, uma empresa de semicondutores com sede em **Xangai, na China**.
* **Data de Lançamento:** O ESP32 foi anunciado oficialmente em **setembro de 2016**. Ele surgiu como um sucessor muito mais potente do famoso ESP8266 (lançado em 2014), que já tinha revolucionado o mercado de IoT.
* **Contexto de Criação:** A Espressif percebeu que, embora o ESP8266 fosse excelente para Wi-Fi simples, os desenvolvedores precisavam de mais poder de processamento, conectividade Bluetooth e recursos de segurança integrados para projetos mais profissionais.
### Fatos Curiosos sobre a Criadora
* **Foco em IoT:** A Espressif se especializou em criar chips que combinam processamento de baixo custo com conectividade sem fio de alta performance.
* **Código Aberto:** Um dos grandes motivos do sucesso do ESP32 (e da Espressif) é o suporte massivo à comunidade. Eles fornecem o **ESP-IDF** (Framework de Desenvolvimento de IoT) de forma aberta, o que permitiu que o chip fosse rapidamente adotado por desenvolvedores ao redor do mundo.
* **Nacionalidade:** Apesar de ser uma empresa chinesa, a Espressif possui equipes de engenharia em vários lugares do mundo, incluindo escritórios na República Tcheca, Índia e Brasil, o que ajuda na disseminação global do hardware.
Foi justamente essa combinação de preço baixo e documentação aberta que permitiu que o ESP32 saísse das fábricas de Xangai para se tornar o componente principal de projetos de automação e engenharia em qualquer lugar do planeta.
O ESP32 é um dos microcontroladores mais queridos por entusiastas de tecnologia, especialmente por quem gosta de levar o hardware ao limite. Ele não é apenas um "sucessor" do ESP8266; é uma verdadeira central de processamento em miniatura.
Aqui estão algumas das curiosidades mais interessantes sobre ele:
### 1. Dois Cérebro em um Único Chip
Diferente de muitos microcontroladores simples, a maioria das versões do ESP32 possui **Dual-Core**. Isso permite que você dedique um núcleo exclusivamente para tarefas pesadas (como cálculos matemáticos ou criptografia) enquanto o outro cuida da conectividade Wi-Fi e Bluetooth, evitando travamentos.
### 2. Sensor de Toque e Sensor Interno de Efeito Hall
Você sabia que ele consegue "sentir" magnetismo e toque sem componentes extras?
* **Capacitive Touch:** Ele tem pinos que detectam o toque humano diretamente.
* **Efeito Hall:** Ele possui um sensor interno que detecta variações em campos magnéticos. Se você aproximar um ímã do chip, ele consegue medir essa interferência.
### 3. Consumo de Energia
"Modo Hibernação"
O ESP32 é mestre em economizar energia. No modo **Deep Sleep**, ele consome cerca de 10\mu A a 15\mu A.
Para se ter uma ideia, ele pode "dormir" por anos em uma bateria comum e acordar apenas para enviar um dado rápido e voltar a descansar.
### 4. Segurança Robusta
Para quem se preocupa com segurança da informação, o ESP32 traz aceleração de hardware para criptografia (AES, SHA-2, RSA)
**Secure Boot**. Isso garante que o código rodando no chip não seja alterado por terceiros mal-intencionados.
### 5. O "Canivete Suíço" das Conexões
Além do Wi-Fi tradicional, ele suporta **Bluetooth Classic** e **Bluetooth Low Energy (BLE)** simultaneamente. Isso o torna ideal para criar gateways que conversam com sensores baratos de baixa energia e repassam os dados para a nuvem via internet.
### Outros Usos Criativos
Devido ao seu baixo custo e alta performance, o ESP32 é frequentemente usado para:
* **Emulação:** Rodar jogos antigos de Nintendinho (NES) ou GameBoy.
* **Rádio Web:** Processar streaming de áudio em tempo real.
* **Sistemas Operacionais:** Existem versões adaptadas de FreeRTOS e até implementações simplificadas de micro-Python.
A estrutura física do ESP32 (especificamente o modelo mais comum, o DevKit V1 de 30 pinos) é projetada para ser versátil. Embora o chip interno tenha mais conexões, a placa de desenvolvimento expõe 30 pinos para facilitar a prototipagem em protoboards.
A grande "mágica" do ESP32 é a **Matriz de Pinos (Pin Matrix)**: quase qualquer função interna pode ser direcionada para quase qualquer pino físico.
### Divisão Funcional dos 30 Pinos
Podemos agrupar os pinos em categorias principais para entender sua utilidade:
#### 1. Pinos de Energia (Power)
* **VIN (ou 5V):** Entrada de energia externa (geralmente 5V). Ele passa por um regulador para alimentar o chip com 3.3V.
* **3V3:** Saída do regulador interno de 3.3V. Pode ser usado para alimentar sensores externos.
* **GND (Ground):** O referencial terra do circuito (comum a todos os componentes).
#### 2. Pinos de Comunicação Serial (Protocolos)
Esses são essenciais para conectar o ESP32 a outros dispositivos:
* **UART (TX/RX):** Usados para comunicação serial com o computador ou outros microcontroladores.
* **I2C (SDA/SCL):** Padrão para conectar displays OLED, sensores de pressão e acelerômetros usando apenas dois fios.
* **SPI (MOSI, MISO, SCK, CS):** Protocolo de alta velocidade, muito usado para cartões SD e telas coloridas.
#### 3. Entradas e Saídas (GPIO)
* **Digital I/O:** Quase todos os pinos podem ser configurados como entrada ou saída digital (0 ou 1).
* **ADC (Conversor Analógico-Digital):** Pinos que leem voltagens variáveis (ex: um potenciômetro ou sensor de luz). O ESP32 tem uma resolução de 12 bits (2^{12} = 4096 níveis).
* **DAC (Conversor Digital-Analógico):** Dois pinos específicos que podem "criar" uma voltagem analógica real, útil para gerar ondas de som.
#### 4. Pinos de Funções Especiais
* **Touch Pads:** Pinos capacitivos que funcionam como botões de toque através de plástico ou vidro.
* **RTC GPIO:** Pinos que continuam ativos mesmo quando o chip está no modo "Deep Sleep" (hibernação profunda), usados para acordar o sistema.
* **EN (Enable/Reset):** Reinicia o chip quando conectado ao GND.
* **BOOT:** Usado para colocar o chip em modo de gravação de firmware.
### Tabela de Referência Rápida (Pinos Comuns)
| Categoria | Pinos Comuns (GPIO) | Observação |
| **Energia** | VIN, 3V3, GND | Sempre verifique a polaridade. |
| **I2C** | GPIO 21 (SDA), GPIO 22 (SCL) | Padrão na maioria das bibliotecas. |
| **Touch** | GPIO 4, 0, 2, 15, 13, 12, 14, 27, 33, 32 | Sensores de toque capacitivo. |
| **Apenas Entrada** | GPIO 34, 35, 36, 39 |
**Cuidado:** Estes pinos não podem ser saídas. |
### Um Detalhe Importante: "Strapping Pins"
Alguns pinos (como GPIO 0, 2, 5, 12 e 15) possuem funções críticas durante a inicialização (boot). Se você conectar um componente neles que force uma voltagem específica no momento em que liga a placa, o ESP32 pode não iniciar corretamente ou entrar em modo de erro.
Ele não é apenas um microcontrolador, mas um **SoC (System on a Chip)** completo.
Aqui estão as especificações técnicas detalhadas do modelo padrão (**ESP32-WROOM-32**):
### 1. Processamento e Memória
O "motor" dessa placa é o microprocessador **Xtensa® Dual-Core 32-bit LX6**.
* **Velocidade de Clock:** Ajustável de **80 MHz até 240 MHz**.
* **Desempenho:** Até 600 DMIPS (milhões de instruções por segundo).
* **Memória RAM Interna:** **520 KB SRAM**.
* **Memória Flash (Armazenamento):** Geralmente **4 MB** (externa via SPI, integrada no módulo), onde fica guardado o seu código e arquivos.
### 2. Conectividade Sem Fio
* **Wi-Fi:** 802.11 b/g/n (até 150 Mbps).
* **Bluetooth:** Dual-mode, suportando **Bluetooth v4.2 BR/EDR** (clássico) e **Bluetooth Low Energy (BLE)**.
* **Segurança Wi-Fi:** Suporte a WPA, WPA2, WPA3 e Enterprise.
### 3. Periféricos e Interfaces (I/O)
A versatilidade física que mencionamos antes vem destas capacidades internas:
* **Canais ADC (Analógico para Digital):** 18 canais com resolução de **12 bits**.
* **Canais DAC (Digital para Analógico):** 2 canais de **8 bits**.
* **Sensores Internos:** Sensor de temperatura e sensor de efeito Hall.
* **Interfaces Seriais:**
* 3x UART (Comunicação serial)
* 3x SPI
* 2x I2C
* Canal de áudio I2S
* **PWM:** 16 canais independentes (para controle de motores ou brilho de LEDs).
* **Controle de Toque:** 10 sensores capacitivos integrados.
### 4. Gestão de Energia
O ESP32 opera nativamente com **3.3V**. Seus modos de consumo são divididos para maximizar a vida útil da bateria:
* **Active Mode:** 160 ~ 260 mA (com Wi-Fi e Bluetooth ligados).
* **Modem-Sleep:** 3 mA ~ 20 mA (CPU ligada, rádio desligado).
* **Deep-Sleep:** **10 µA ~ 15 µA** (Apenas o RTC está vivo; ideal para telemetria).
### 5. Segurança de Hardware
Diferente de placas mais simples como o Arduino, o ESP32 foi feito com foco em aplicações industriais:
* **Criptografia Acelerada:** AES, SHA-2, RSA, ECC e RNG (Gerador de Números Aleatórios).
* **Flash Encryption:** Impede que o código seja lido diretamente da memória flash.
* **Secure Boot:** Garante que apenas código assinado e confiável seja executado.
### Resumo Técnico
| Recurso | Especificação |
| **Núcleos** | 2 (Dual-core) |
| **Tensão de Operação** | 2.2V a 3.6V |
| **GPIOs** | Até 34 (variando conforme a placa) |
| **Resolução ADC** | 12-bit |
| **Temperatura de Operação** | -40°C a +125°C |
Essa robustez técnica permite que ele execute desde scripts simples em MicroPython até tarefas complexas de análise de tráfego e mineração de dados em tempo real.