Amazon’s Echo Dot and its online Alexa speech recognition system for controlling the Internet of Things is pretty cool, and so it is taking the world by storm.  Therefore what we need is an open-source Thing that it can control to attach to the Internet; a Thing that people can make for themselves.  Specifically what we want is a hackable device that will turn on and off any mains load from a light to a garage door when you say, “Alexa, turn the lights on, please,” or “Alexa, open the door.”

Here it is.

EchoPi in use

It uses a Raspberry Pi Zero ($5) and some additional components to switch a mains socket on and off.  It connects to your home network using a USB WIFi dongle and runs a modified version of Todd Medema’s WeMo Python code (Alexa/Echo speaks WeMo out of the box).  Here’s a video of it working:

It has a 3D-printed box and a single-sided PCB to plug the Pi into that can be made in a FabLab/Hackerspace by milling (though it could be etched conventionally as well, of course).  All the mechanical and electronic designs and software are in our Github repo here.

Open case for EchoPi

It uses a modified USB charger (red in the picture below) to act both as its plug to go in the wall socket and as a 5 volt supply for the electronics.  The mains going through the circuit you build is optically isolated from everything else using a phototriac, minimising the dangers from mistakes and shorts.  The triac can switch mains loads up to 1 Amp.

CAD of the case

This is work in progress.  So you will see that the circuit includes a two-channel analogue to digital converter that can be used to get real-world signals into the Pi.  We are still developing the software for this.  We are also looking at interfacing it with the Pi-controlled home-heating system that I designed and implemented in our workshop and house ages ago.  (You can leave the A-to-D off the PCB if you just want the mains switch.)

Feel free to download the EchoPi and experiment!

STOP PRESS: EchoPi should also work with the Mycroft open-source alternative to Echo/Alexa as that supports WeMo. Google Home does too so that should work as well.


Leave a Reply

Your email address will not be published. Required fields are marked *