I had a chance to review an Oittm Smart WiFi Plug recently. I also tried to see if I can use Tasker with it, but Wireshark returned encrypted data. No success, for now… While I was trying to get the IP of the smart plug – I discovered a newly added and very familiar to me hostname: espressif. You know what this means: ESP8266 inside a smart plug.
A hackable ESP8266 inside a smart plug
Since I don’t know how to bypass the encryption and I don’t want to use Alexa hacks to get it working with Tasker or Raspberry Pi, the only solution is to look inside. After all, ESP8266 inside the smart plug is pretty much the same concept as my WiFi light switch.
The review is up, no need to worry about the damage anymore, so let’s crack this baby open, shall we? Side note: there are no warranty seals, which makes the whole unit easily accessible. Just don’t do this when this thing is plugged into the mains.
Two screws later, the insides of the Oittm plug are available to me. Having a suspicion is one thing, but seeing the ESP8266 inside a smart plug another! I’m glad I was not mistaken.
I removed the PCB, to get a better look at the circuit. All important pins have been exposed for tinkering. This is a pure gold! Big contact points nicely labeled for me! I have TX and RX responsible for data transfer, we have the power pins as well.
Exposed pads:
- TX, RX – serial data transfer
- GND, 3.3V, 5V – power for the relay and ESP8266
- Relay – relay signal
- GPIO00, GPIO02 – boot and reset pins
- button – probably set as some GPIO interrupt
I’m not sure if I will be able to download the firmware ‘just in case’ from the ESP8266. It would be ideal to have the backup ready should I decided to go back to the ‘stock’. I will probably try to flash my custom MQTT enabled script so the ESP8266 inside a plug would become compatible with my custom software.
Conclusion
If you are interested in embedding a smart socket into your own DIY home automation system this could save you some troubles. After all, it’s easier to write a script than design a PCB and create an enclosure. I will keep you updated about my attempts to hack this thing.