I've been upgrading all my smart plugs to Matter compatible devices which are much easier to set up and manage in a single app. As a result I have a box of older devices each of which needs a different app.
This one opened up easily with some standard screws. The ESP8266 chip is on a little board that was easy to remove.
The two pins in the top right of the image above are serial TX and RX. The two pins on the bottom right are 3.3V and GND on the right edge.
On the back is an 8 Mbit memory chip giving 1MB of storage.
The pin marked 0 is GPIO 0 used to get to boot mode. G is ground.
I did a google image search of the front and found this helpful site describing the pins.
I used a USB serial board set to 3.3V and hooked Tx and Rx lines as well as +V and Ground.
This board also exposes GPIO4, 5 & 12 which could be handy.
To put the chip into boot mode you connect the GPIO 0 pin (simply labelled 0) to ground and plug in the power - in the form of the USB serial device.
ls /dev/tty.* to find the serial device. ESPTool was able to confirm the size of the flash memory.
esptool --port /dev/tty.usbserial-A50285BI flash-id
esptool v5.6.0
Connected to ESP8266 on /dev/tty.usbserial-A50285BI:
Chip type: ESP8266EX
Features: Wi-Fi, 160MHz
Crystal frequency: 26MHz
MAC: cc:50:e3:67:04:66
Stub flasher running.
Flash Memory Information:
=========================
Manufacturer: 85
Device: 6014
Detected flash size: 1MB
Hard resetting via RTS pin...
I downloaded the 1MB version of Micropython. And flashed it to the chip.
esptool --port /dev/tty.usbserial-A50285BI --baud 460800 write-flash --flash-size=detect 0 ESP8266_GENERIC-FLASH_1M-20260824-v1.29.0.bin
Unplugging, remove the link from GPIO 0 to ground and re-connect to USB serial.
I used putty to talk to the serial device at 115200 and up came the python REPL.
Not sure what I'll do with these microcontrollers but it's better than putting them in the bin. Mains smartplugs also have some other useful bits including a relay that might be worth harvesting.












