I picked up 10 of these modules (including the ESP-01s units) on Aliexpress for the purpose of controlling domestic AC powered equipment .e.g lights, fan heaters and such like.
It is a compact little module that directly holds the esp-01s in an 8-pin female pin header. Features of note are
- The Relay is a Songle SRD-05VDC-SL-C rated at 240V 10A. Datasheet
- A 7002 mosfet for switching the relay via GPIO0. Datasheet
- The Relay is activated via GPIO0.
- GPIO2 is free for monitoring a sensor button, switch, thermostat etc..
- A reset button.
- The 5v power input is converted to a ESP8266 compatible output of 3.3v via a AMS1117 3.3v linear voltage regulator. Datasheet
The relay module’s design (albeit compact and aesthetically pleasing) does present a few problems detailed below –
- The CH_PD pin is not pulled up to VCC and is left floating and as such the esp-01s module will never activate.
- The GPIO0 pin is pulled down to GND via resister R2. This means that the esp-01s module will start up in Flashing mode.
- The AMS1117 3.3v linear regulator. The problem with these is that when they fail they fail big and go short circuit feeding the (in this case 5v) input voltage straight through to the output pins. I managed to short one out while messing with the esp-01s CH_PD pin and now have a steady 5v-5v regulator on the Relay module and a dead esp-01s module.
The Relay module can be rescued by replacing the AMS1117 3.3v regulator but the esp-01s has blinked it’s last LED.
I have also fried AMS1117 5V regulators on breadboard power supplies as discussed in Breadboard power supply module destructive failure.
A helpful Youtube video can be found below.
To summarise the points raised in the video…
- The fix for the GPIO0 problem is to simply remove the resister R2. This will stop it being pulled LOW on boot.
- Connect the CH_PD pin to VCC pin either on the esp-01s or on the relay module. This will enable the esp-01 on boot.