Este tutorial vai ajudar-te a resolver problemas de brownout com a tua ESP32-CAM placa. Os sintomas de um brownout são o funcionamento instável da placa ESP32-CAM com resets aleatórios, devido a uma alimentação instável ou insuficiente.
Como o ESP32-CAM é um módulo microcontrolador que integra Wi-Fi e uma câmara onboard, consome bastante energia e erros de brownout não são invulgares. O ESP32 tem um detector que vigia a baixa tensão e, se detetada, reinicia a placa e imprime a seguinte mensagem de erro no Monitor Serial:
Brownout detector was triggered
Este tutorial vai explicar o que é um brownout, por que acontece e como o resolver com soluções de hardware e software.
O que é um Brownout?
Um brownout ocorre quando a tensão de alimentação cai abaixo do limiar mínimo exigido pelo ESP32. Quando isso acontece, o microcontrolador ativa um detector de brownout para se reiniciar e evitar mau funcionamento.
Os sintomas de um brownout são o reset ou reinício da placa, a mensagem de erro “Brownout detector was triggered” ou falha na ligação Wi-Fi ou na inicialização da câmara.
Normalmente, os brownouts são causados por uma fonte de alimentação fraca ou instável, quedas de tensão devido a fios longos ou conexões pobres, e o consumo súbito de corrente da câmara ou do módulo Wi-Fi.
Requisitos de Energia do ESP32-CAM
O ESP32-CAM consome mais energia do que um ESP32 padrão devido ao módulo da câmara. Internamente opera a 3.3V, mas a placa tem um AMS1117-3.3 regulador de tensão que permite uma tensão de entrada até 15 V e suporta uma corrente até 1A.
Quando a câmara e/ou o Wi-Fi estão em uso, a placa pode consumir até 500mA e, se a fonte de alimentação não fornecer essa corrente e a tensão cair, ocorre um brownout.
Problemas Comuns que Levam a Brownouts
- Usar adaptadores USB-para-Serial que fornecem menos de 500mA
- Alimentar o ESP32-CAM pelo pino 3.3V em vez do pino 5V
- Usar fios longos ou finos que introduzem resistência e quedas de tensão
- Fornecer energia a partir de uma breadboard com conectores pobres
- Usar power-banks com função de desligamento automático
- Regulador de tensão AMS1117 defeituoso
Soluções
Usar uma Fonte de Energia Estável
- Usar um adaptador de energia regulado de 5V 2A
- Alimentar o ESP32-CAM pelo pino 5V, não pelo pino 3.3V
- Evitar alimentar diretamente a partir da porta USB do computador, a menos que uses um hub alimentado
Adicionar Condensadores
Podes compensar picos súbitos no consumo de energia adicionando um condensador de grande capacidade. Liga um condensador eletrolítico de 470µF ou superior entre 5V e GND como mostrado abaixo. Atenção à polaridade correta.

Também podes tentar adicionar um condensador cerâmico de 0.1µF para filtrar ruído de alta frequência se observares erros erráticos, por exemplo, uma ligação Wi-Fi instável.
Melhorar a Fiação
Usa fios curtos e grossos (ex.: 22 AWG ou mais grossos) e evita alimentar através de breadboards. Se alimentares por uma breadboard, podes usar cabos jumper duplos para garantir uma alimentação adequada.
Contornar o Regulador de Tensão
Se o regulador AMS1117 da placa estiver defeituoso, podes tentar alimentar a placa diretamente pelo pino de entrada 3.3V. Geralmente não é recomendado, mas pode ajudar neste caso. Claro que também podes soldar um substituto para o AMS1117 defeituoso.
Desativar o Detector de Brownout no Software
Podes desativar o detector de brownout com código para testes temporários:
#include "soc/soc.h" // Access system control
#include "soc/rtc_cntl_reg.h" // Access RTC control registers
void setup() {
WRITE_PERI_REG(RTC_CNTL_BROWN_OUT_REG, 0); // Disable brownout detector
// Other initialization code...
}
No entanto, isto não resolve realmente o problema. Em vez do erro de brownout, podes então experienciar outros erros erráticos muito mais difíceis de diagnosticar, como ligações Wi-Fi instáveis, falhas esporádicas da câmara, vídeo com ruído, e assim por diante.
Conclusão
Em conclusão, brownouts são resets do ESP32-CAM causados por uma alimentação instável ou insuficiente. O ESP32-CAM é mais propenso a brownouts comparado com outras placas ESP32 devido à adição do módulo da câmara que aumenta o consumo de energia. A melhor solução para evitar brownouts é garantir uma alimentação estável com pelo menos 1A a 5V.
Se estás a começar com o ESP32-CAM lê o nosso Programming the ESP32-CAM tutorial e se tiveres mais perguntas, não hesites em deixá-las na secção de comentários.
Boa Tinkering ; )

