IT Pro is supported by its audience. When you purchase through links on our site, we may earn an affiliate commission. Learn more

How to put Alexa on Raspberry Pi

Here's how you can build a home-brew Amazon Echo

There are a variety of ways that ingenious hacker types have got Amazon's Alexa to play nice with the Raspberry Pi, but we're going for the simplest method here, which is to install AlexaPi, a ready-built Python client.

First up, you'll need a Pi (ideally a Pi 3 or Zero W for ease of Wi-Fi connectivity), with a minimum 8GB MicroSD/SD card. You'll need to have Raspbian installed and either a keyboard, monitor and mouse or SSH/remote access enabled, and of course a power supply.

You'll also need a USB microphone and a speaker to plug into the headphone jack. The microphones can be picked up cheaply from the usual internet retailers, and the speaker can be improvised from any powered speaker that accepts a 3.5mm line in, which includes anything from a cheap Bluetooth speaker to a kitchen radio or a full spec Hi-Fi system.

Alternatively, you can buy this kit, designed by Google and sold through resellers like The Pi Hut, which includes a speaker and microphone, as well as all the various cables and connectors needed to hook it all up together.

It also includes a cardboard housing and an activation button, allowing you to basically build your own push-button AI assistant. The kit's designed to allow you to build projects with the Google Assistant, but there's no reason you can't also use it to create something with Alexa.

First you'll need to set up an Amazon Developer account, which is a free (albeit click-intensive) process.

Set up an Amazon Developer account

Once you've set up your Amazon Developer Account, log in. Click on the Alexa Tab, then click 'Register a Product Type', and 'Device'. Name your device type and display name, hit next, then on the Security Profile screen, click "Create new profile."

Under the General tab, next to "Security Profile Name" name your profile and fill in the description. Keep these three short and memorable, or note them down, as you'll need them for the final setup. Click Next.

Now note down the Product ID, Client ID, and Client Secret that is auto-generated - you'll need these to set up the Pi.

Next, hit the Web Settings tab > Edit (next to the profile dropdown), and in Allowed Origins, click, "Add Another" and type in: http://localhost:5050.

Click "Add Another," again, then type in http://your.raspberrypi.ip.address:5050 but replace 'your.raspberrypi.ip.address' with your Raspberry Pi's IP address (bold for emphasis).

Then repeat the steps with Allowed Return URLs, ie: click "Add Another" and type in: http://localhost:5050/code, then "Add Another" and add in http://your.raspberrypi.ip.address:5050/code. Hit Next when you're done.

Finally, the Device Details tab. Pick a category, write a description, pick an expected timeline, and enter 0 on the form next to how many devices you will deploy this on. Leave Amazon Music checked as "No", as it won't run on the Pi.

Whew. With that complete, you're ready to step back into the room and get the Pi up and running with Alexa.

Download and install Git

The next step is to install Git, followed by the actual repositories that will power your homebrew Echo. Kick off with the usual safety-first update with the standard command: sudo apt-get install update

Next, install Git, which is the code management tool that you'll need to unpack and run the AlexaPi software, followed by the software itself. Download Git with the command sudo apt-get install git, then type in cd /opt and press Enter to change the directory.

Finally, type in sudo git clone to download the AlexaPi repos.

Set up AlexaPi

Now that you've downloaded the AlexaPi software, it's time to set it up. Type in sudo ./AlexaPi/src/scripts/ and press Enter.

Another series of questions is your reward - skip through the operating system and device prompts by hitting enter if you're using the Pi, then consider adding AirPlay support. If you've got an iOS device then being able to stream to your AlexaPi is exceedingly handy, but the software download will take a few minutes if selected.

Once that's downloaded (or dismissed), you'll be asked to enter your Amazon developer information from the earlier setup stages above, including Device Type ID and Security Profile Description, as well as the long Profile ID, Client ID, Client Secret numbers.

Finally, authorise your device. This is a one-time setup, so don't worry, you won't need to do this again. On a standard desktop, laptop or tablet, fire up a browser and type in http://your.raspberrypi.ip.address:5050 replacing your.raspberryi.ip.address with your Raspberry Pi's IP address from earlier. This will prompt you to login to your Amazon Developer account, which will in turn display an authorization token.

Running AlexaPi

With that, you're done - the the Alexa voice service is now installed on your Raspberry Pi. The final step is to simply start the service by rebooting the Pi or using the command:

sudo systemctl start AlexaPi.service

All being well, you'll now be able to speak Alexa commands into the mic, and hear responses back through the speaker. If not, first try typing: sudo systemctl status AlexaPi.service to check the status.

If the status log has dbus and pulseaudio errors (which can happen with the stock version of Raspbian) then you'll need to set up system-wide PulseAudio, or use a workaround.

You're now in a brave new world of voice-enabled Pi interaction - enjoy!

(Thanks to the folk who built and maintain AlexaPi)

Featured Resources

IT best practices for accelerating the journey to carbon neutrality

Considerations and pragmatic solutions for IT executives driving sustainable IT

Free Download

The Total Economic Impact™ of IBM Spectrum Virtualize

Cost savings and business benefits enabled by storage built with IBMSpectrum Virtualize

Free download

Using application migration and modernisation to supercharge business agility and resiliency

Modernisation can propel your digital transformation to the next generation

Free Download

The strategic CFO

Why finance transformation propels business value

Free Download


Raspberry Pi: Top projects to try yourself

Raspberry Pi: Top projects to try yourself

10 Mar 2023
Return of the Mac

Return of the Mac

27 Dec 2022
Complaining about Windows Update? You should try upgrading a Raspberry Pi

Complaining about Windows Update? You should try upgrading a Raspberry Pi

5 Nov 2022
Raspberry Pi launches next-gen Pico W microcontroller with networking support

Raspberry Pi launches next-gen Pico W microcontroller with networking support

1 Jul 2022

Most Popular

The big PSTN switch off: What’s happening between now and 2025?

The big PSTN switch off: What’s happening between now and 2025?

13 Mar 2023
Why – and how – IP can be the hero in your digital transformation success story

Why – and how – IP can be the hero in your digital transformation success story

6 Mar 2023
HMRC lost nearly 50% more devices in 2022

HMRC lost nearly 50% more devices in 2022

17 Mar 2023