I was using an ESP32 NodeMCU board like this:
It had 3 SW-450 sensors (connected to the 3.3V pin).
To power it, I was using my old Chromecast charger
Power Source MST3K-EU Chromecast:
Input 100 - 240v ~ 0.2A
Output 5.1V === 850mA
It worked really well for weeks but since I needed 5V volts for another project I changed it for an ESP32 with a CH9102X chip that I had.
It work ok for a couple of days but then all of a sudden I would not connect anymore, I even could not flash it again, since I read that CH9102X chips are not that stable, I assumed I did something wrong on the second flash process since I can see the “power light” tuning on, and I see the serial port on my laptop.
So, I left it there for later and changed it to this one that I also had.
After flashing, and connecting the sensors, the board would sometimes boot, and connect (I could see the logs), but after a while the wifi connection would drop (the router said the device itself disconnected). Sometimes it would not boot at all.
Every time I took the device to my laptop and see the logs, it would keep the connection. So I thought that maybe there was a problem with the used pins (32, 34, 35). So I took all the setup to my laptop to maybe change them, and to my surprise, while connected to my laptop, the device will boot and stay online.
So this pointed me that maybe the problem was the power, and I was Right, I change the charger to my Samsungs tablet charger for a test and It worked continuously
EP-TA50EWE
Input 100 - 240v ~ 0.3A
Output 5.1V === 1.55mA, 7.8W
So this brings me to the question, How much power does an ESP32 Board need by itself on average? Does 850mA is not enough?
This is my yaml file btw:
esphome:
name: vibration-detector
friendly_name: Vibration Detector
esp32:
board: esp32dev
framework:
type: arduino
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "redacted"
ota:
password: "redacted"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# power_save_mode: NONE
reboot_timeout: 10min
# fast_connect: true
manual_ip:
static_ip: 192.168.178.65
gateway: 192.168.178.1
subnet: 255.255.255.0
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "redacted"
password: "redacted"
captive_portal:
# Sensors that the ESPhome unit is capable of reporting
sensor:
- platform: wifi_signal
name: "WiFi Signal"
update_interval: 60s
- platform: uptime
name: "Uptime"
update_interval: 30s
binary_sensor:
# Green
- platform: gpio
name: "Izquierda (34) Green 🟩"
pin:
number: GPIO34
mode: INPUT
device_class: vibration
filters:
- delayed_on: 10ms
- delayed_off: 3s #3s
# Red
- platform: gpio
name: "Derecha (35) Red 🟥"
pin:
number: GPIO35
mode: INPUT
device_class: vibration
filters:
- delayed_on: 10ms
- delayed_off: 3s #3s
# Yellow
- platform: gpio
name: "Arriba (32) Yellow 🟨"
pin:
number: GPIO32
mode: INPUT
device_class: vibration
filters:
- delayed_on: 10ms
- delayed_off: 3s #3s
I know that each SW-450 needs 15mA to work, which makes it 45mA in total for them.
There is a possibility that the charger is faulty, but that would not explain why it worked without problems with the first board.
Just for fun, because I do not understand this really well, I did some readings using a board like this:
This is the Chromecast 850mA:
This is the Samsung Charger
And this connected to my laptop:
Of course those are just snapshots but at least on the Samsung one I see that it can go up until 0.134A
Regards!