Over a million developers have joined DZone.

I Built My Own Amazon Echo With a Raspberry Pi: Alexaberry

Geoffrey Bourne couldn't decide what to make with his Raspberry Pi 3, so he made an Echo instead!

· IoT Zone

Access the survey results 'State of Industrial Internet Application Development' to learn about latest challenges, trends and opportunities with Industrial IoT, brought to you in partnership with GE Digital.

Image title

I recently bought my first Raspberry Pi (the Raspberry Pi 3 to be specific) and I was looking for a project to work on. There are hundreds of different cool project you can build on Instructables. A few I was considering were:

However, one project really sang to me: build your own Amazon Echo (Alexa) with a Raspberry Pi. I have Alexa and she is fantastic! I love calling out a song to play, asking the time, or setting a timer. My 3-years old daughter non-stops says, “Alexa, play Stressed Out!”…a song by Twenty One Pilots. I wanted to hook up “Alexaberry” to my bathroom radio and play iHeart Radio through hands-free voice commands.

I won’t go over how to build an Alexaberry since the fantastic step-by-step GitHub code and instructions or the Youtube video are available. I have to say, it was a lot of fun doing this low-complexity level project (if you know Linux, possibly high if you don’t know). You’re essentially setting up a Node.js server that connects with Amazon’s Echo API and a Java client that connect with the Node.js server. Give voice commands through the Java Client and Alexa will respond. I was able to ask the time, be told some Star Wars jokes, and play iHeart Radio stations. (My family was wondering why I was to excited when the music started playing.) One thing the API doesn’t allow you to do is play Amazon Prime music. I guess they don’t want you doing something nefarious. Also, I highly suggest checking out the FAQ if you run into issues. I had a certificate issue the FAQ helped resolve.

The project ended up being a good introduction to the Raspberry Pi with a serious draw-back I didn’t realize up front. Essentially, the Java Client is not always listening like the Amazon Echo. You need to activate the listening to take a command. No hands-free voice commands. This means you need to either have a monitor and input device (mouse/keyboard) or be creative with the big red button…


Overall, it was a great project and a lot of fun. I'm glad I did it; I learned a lot about the Raspberry Pi, and am inspired to start my next project… a Retro Arcade.

The IoT Zone is brought to you in partnership with GE Digital.  Discover how IoT developers are using Predix to disrupt traditional industrial development models.

Topics:
raspberry pi ,programming ,iot app development ,amazon echo

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}