Roll Your Own Amazon Echo on a Raspberry Pi

Speech recognition coupled with AI is the new hotness. Amazon’s Echo is a pretty compelling device, for a largish chunk of change. But if you’re interested in building something similar yourself, it’s just gotten a lot easier. Amazon has opened up a GitHub with instructions and code that will get you up and running with their Alexa Voice Service in short order.

If you read Hackaday as avidly as we do, you’ve already read that Amazon opened up their SDK (confusingly called a “Skills Kit”) and that folks have started working with it already. This newest development is Amazon’s “official” hello-world demo, for what that’s worth.

There are also open source alternatives, so if you just want to get something up and running without jumping through registration and licensing hoops, you’ve got that option as well.

Whichever way you slice it, there seems to be a real interest in having our machines listen to us. It’s probably time for an in-depth comparison of the various options. If you know of a voice recognition system that runs on something embeddable — a single-board computer or even a microcontroller — and you’d like to see us look into it, post up in the comments. We’ll see what we can do.

Thanks to [vvenesect] for the tip!

Banish Dangerous Shadows Under Kitchen Cabinets

[nebulous] has a lot of problems with his kitchen cabinets. Aside from a noted lack of micro-controllers, he was especially suspicious of the dark spaces under them. Anything could be hiding there.

The core of the project is a $10 Arduino-compatible esp8266 board from digistump. The board is powered by the five volt regulator of an L298N motor driver module hooked to a power-supply. All this controls a set-of LED strips adhered to the underside of the cabinets with the traditionally bad adhesive strips with which they come standard. We can predict an hour spent bent awkwardly cursing at them, a hot-glue gun in one hand, in [nebulous]’s future. The whole set-up is housed in a SparkFun cardboard box above the microwave. You can barely tell it’s not a commercial product.

We’re not certain if we like a future where even our cabinetry has an IP address. However, this is a good weekend project that could make all our cabinetry brighter, safer, and more connected.

Ridiculously Automated Dorm Room

Take three NRF24L0+ radios, two Arduino Nanos, and a Raspberry Pi. Add a bored student and a dorm room at Rice University. What you get is the RRAD: Rice Ridiculously Automated Dorm. [Jordan Poles] built a modular system inspired by BRAD (the Berkeley Ridiculously Automated Dorm).

RRAD has three types of nodes:

  • Actuation nodes – Allows external actuators like relays or solenoids
  • Sensory nodes – Reports data from sensors (light, temperature, motion)
  • Hub nodes – Hosts control panel, records data, provides external data interfaces

Continue reading “Ridiculously Automated Dorm Room”

Pimped out 70’s Home Intercom System, Now with More Pi

If you own a house that was built in the 1970’s, you might still have the remnants of a home intercom system on the walls of each room. They were consider the end-all-be-all of “home automation” back in the day. Now, they look dated and out of place (but still kind of retro-cool at the same time).  [Cpostier] decided that he wanted to keep his old intercom system, but give it an update with a Rasperry Pi and a 7 inch touch screen, and the results are totally groovy, man.

The original unit served two functions, as an intercom system, and also as a whole house music player.  [Cpostier] wasn’t interested in the intercom feature, and so he started with the traditional gutting of the 70’s dried up electronics. Each room received a new $7 speaker (from Amazon), and the main control panel was fitted with a Pi, TFT touch screen, and new amplifier. The Pi is running Kodi (formerly know as XBMC) and along with it being a great media player, it can also show weather data, or what ever else you would like.

Something magical happens when you blend new tech with old tech – we totally dig it.

Custom Siri Automation with HomeKit and ESP8266

Knowing where to start when adding a device to your home automation is always a tough thing. Most likely, you are already working on the device end of things (whatever you’re trying to automate) so it would be nice if the user end is already figured out. This is one such case. [Aditya Tannu] is using Siri to control ESP8266 connected devices by leveraging the functionality of Apple’s HomeKit protocols.

HomeKit is a framework from Apple that uses Siri as the voice activation on the user end of the system. Just like Amazon’s voice-control automation, this is ripe for exploration. [Aditya] is building upon the HAP-NodeJS package which implements a HomeKit Accessory Server using anything that will run Node.

Once the server is up and running (in this case, on a raspberry Pi) each connected device simply needs to communicate via MQTT. The Arduino IDE is used to program an ESP8266, and there are plenty of MQTT sketches out there that may be used for this purpose. The most recent example build from [Aditya] is a retrofit for a fiber optic lamp. He added an ESP8266 board and replaced the stock LEDs with WS2812 modules. The current version, demonstrated below, has on/off and color control for the device.

Continue reading “Custom Siri Automation with HomeKit and ESP8266”

Let Alexa Control Your Life; Guide to Voice-Enable Everything

Let’s face it, automation doesn’t feel quite as futuristic unless you can just say what you want out loud and have the machines flawlessly obey. That is totally possible now — and on the cheap. Well, cheap as far as money goes. It can be an expensive learning curve to get it all working. This will help. [Lindo St. Angel] has put together a guide to navigate voice control of hardware using Amazon’s Alexa SDK.

We previously reported that Amazon’s AI had escaped its hardware prison in the form of the Alexa Skills Kit. Yes, calling it the Alexa SDK above is wrong it’s actually the ASK but nobody knows what that acronym is while most recognize the gist of an SDK. It gives you the hooks and the documentation necessary to leverage the functionality in your own applications. The core functionality of Alexa is voice recognition. Even so, it’s still a tall hill to climb.

[Lindo] has broken down the problem into a very manageable example. The Amazon Voice Service (part of ASK) is used for voice recognition and control. Amazon’s Lambda service connects the ASK to your piece of hardware; in this case he’s using a Raspberry Pi as the server. The final step is to connect your hardware to the Pi. [Lindo] is interfacing a keypad-based home automation system with the Pi but the sky’s the limit at this point.

With all the authentication and connectivity laid bare, this is a lot more approachable. The question is no longer can you connect everything to voice control. The question becomes should you give control of everything over to one single online service?

RFM69 to MQTT Gateway on the Super-Cheap

[Martin] is working on a RFM69-to-MQTT bridge device. If you’re at all interested in DIY home automation, this is going to be worth following. Why? When your home automation network gets big enough, you’re going to have to think seriously about how the different parts talk to each other. There are a number of ways to handle this messaging problem, but MQTT is certainly a contender.

MQTT is a “lightweight” publish-subscribe framework that’s aimed at machine-to-machine data sharing, and runs on top of a normal TCP/IP network. IBM has been a mover behind MQTT since the beginning, and now Amazon is using it too.

But most MQTT servers need a TCP/IP network, which pretty much means WiFi, and this can be a killer for remote sensors that you’d like to run on battery power, or with limited processing power. For these use cases, a low-power, simple sub-gigahertz radio module is a better choice than WiFi. But then how to do you get your low-power radios to speak to your MQTT devices?

That’s the point of [Martin]’s MQTT bridge. Previously he had built a sub-gig radio add-on for a Raspberry Pi, and let the Pi handle the networking. But it looks like there’s enough processing power in a lowly ESP8266 to handle the MQTT side of things (over WiFi, naturally). Which means that you could now connect your 868 MHz radio devices to MQTT for less than the cost of two pumpkin spice, double-pump lattes.

On the firmware side, [Martin] has enlisted the help of [Felix], who developed the Arduino-plus-RFM69 project, the Moteino. [Felix] has apparently ported his RFM69 library to the ESP8266. We’re dying to see this working.

For now, we’ve got some suggestive screenshots which hint at some LAN-exposed configuration screens. We’re especially interested in the RFM + MQTT debug console window, which should really help in figuring out what’s gone wrong in a system that spans two radio protocols.

The bottom line of all of this? Super-cheap, power-efficient RFM69-based radio nodes can talk with your sophisticated MQTT network. Keep your eyes on this project.