Like many modern smart home gadgets, Belkin’s Wemo brand of smart plugs has a tendency to phone home every time you turn on a lamp. [Gigawatts] wasn’t having it, so they figured out how to flash the device with OpenWRT and replicated its original functionality with a web interface. Unfortunately this stopped working after awhile, and rather than trying to diagnose the issue, it seemed the time would be better spent simplifying the whole thing.
As [Gigawatts] explains, there are actually two separate boards inside the Wemo plug. One holds the relay to do the high-voltage switching, and the other provides the control. They are linked with a three wire connector, making it exceptionally simple to swap out the original controller for something different. The connector supplies 5 V and ground, all you’ve got to do is pull the third wire high to flick the switch.
While the ESP8266 probably would have been the first choice for many a Hackaday reader, [Gigawatts] actually went with the Moteino, a low-power Arduino compatible board with integrated RFM69 transceiver. With an LED to indicate status and a few lines of code tweaked, the Moteino got this once WiFi-only smart plug speaking a new language.
There’s some debate over how effective smart plugs are from an energy efficiency standpoint, but even if this reborn Wemo doesn’t help [Gigawatts] save much power, at least it won’t be blabbing about everything to a third-party.
Using an ESP8266 with Tasmota would simplify the software part.
This is the way.
And yet would have done OP no good, since his home automation system is based on 900 MHz.
Exactly. I’ve got some of both, but wanted to expand my RFM69 network for this project. Plus, the range on this radio is better that a typical ESP.
Why would OpenWRT stop working? Once installed and configured it should work as it’s set forever.
Hardware probably died. I have an ESP8266-based plug I reflashed a few years ago which eventually decided not to connect with my wifi router any more. Everything still works and reports being configured correctly but no more radio.
It sounds like maybe the SoC got toasted, on the IO page he mentions he was losing packets and it was behaving erratically. Considering it had been punching above its weight for some time by running a full OpenWRT build on it, was probably only a matter of time.
Author here. That is my guess as well. Either that or the WiFi trace antenna got damaged, because it seemed to be extremely sensitive to being moved or even just me standing between it and my AP. It’s also possible it’s config just got corrupted and I need to wipe it and start over. The board still boots up just fine, and I have no problems connecting to its serial terminal. Since all it needs is 5v to power it up, I’ll poke around with it later. Either way it was very unstable, unreliable and I had offspring asking when we would be able to light up the new Christmas tree 🎄 =]
Mostly, this was an excuse to gut the Wemo and add another node to my RFM69 Moteino network, so I could pair it with my other SwitchMotes. I do have several ESP’s on my network as well, but I’m trying to keep the sprawl of junky little WiFi clients off my network if possible. Plus I had a spare Moteino waiting for a project.
It’s always interesting to see how the manufacturer steps the 120VAC down to the 5V or 3.3V needed by the electronics in these super cost-sensitive devices, especially when they need enough current to do something like energize a relay. This one looks like it might use a SMPS (IC1) – non-isolated, of course.
All this IoT phoning home stuff seems to be to be a direct consequence of the fact we don’t have Mozilla’s FlyWeb or similar. I’m half tempted to start a change.org petition and write letters to all the big open tech vendors!
FlyWeb still would need to solve WAN access(Easy enough to do, just have user-selectable discovery servers or a DHT or something), but if it existed, it would make home IoT 1000% better.
A big reason they phone home is because they basically don’t have a choice. Local network and self hosted anything is too much hassle for the average consumer, because of the design of the internet itself.
At best, you can have a LAN API and local-only access, which will probably still require an app, which will wind up being proprietary because that’s what companies do.
We need to fix the issue at the source! SSL needs to be easy for a device to use, bluetooth pairing style, no domain name needed.
The issue with most web/ssl based approach is the memory footprint. It’s way to high for very low power devices and too expensive for low cost ones.
Incendiary take: if it’s not going to leave your LAN, it doesn’t need to be encrypted anyway. Or rather, it is, by WPA, and has an exceptionally small attack surface — folks nearby your house or who can hack in through your router.
“Defense in depth, etc.” Yes, but we’re talking about a light switch.
Am I wrong?
I totally agree with you Elliot. It’s only a light switch. Not like it is a router or switch. Who cares if someone turns off your llight?
Personally, I’m seriously consider just snooping the wemo network protocol, implementing it in local control, and then setting my firewall so the switches talk to my service when they think they’re calling home. No hardware change needed. (In fact I think my hub may already know how to do local control, in which case I can just set the firewall and I should be done.) One of many reasons for having a real gateway firewall between your lan and the wan.
Any recommendations on a good choice of firewall?
You can get something like a Fortigate 60 series…. On top of that I run Ubiquti AP’s and managed switches. The benefit being I can setup multiple wifi SSID’s (like a dedicated one for IoT) and create rules around that VLAN on the firewall (example – IoT can get out to internet, but can’t talk to local LAN, etc). Fortigate also has features (if you pay for them yearly as an option) to do things like block traffic from specific countries, categories, and so on and so forth. If you’ve got kids you can restrict access to porn and other things….
Cool, thanks. I’ll look into that.
Was considering moving to Ubiquiti anyway.