Skip to content
This repository has been archived by the owner on Dec 20, 2023. It is now read-only.

Devices

René Kliment edited this page Mar 1, 2017 · 21 revisions

Cross Device support

device → device_platform ↓ Raspberry Pi Orange Pi / A20 or H3 boards C.H.I.P. Desktops NOTES
raspberrypi OK ~ ~ ~ can be run on any device with fakeRPiGPIO (for development only)
orangepi X OK under root X X
chip X X OK under root X
desktop ~ ~ ~ ~ only interactively
magicmirror OK ~ ~ ~ Should run on any device as it is only web based but is untested.
hyperion OK ~ ~ ~ Should run on any device as it only connects to external Hyperion service.
serial OK OK OK OK Should run on any device.
dummy OK OK OK OK

'~' Please check the NOTES column for explanation / details

Feature support

device_platform ↓ feature → long_press (trigger)
raspberrypi OK
orangepi OK
chip OK
desktop X
magicmirror X
hyperion X
serial OK
dummy X

For platform-specific features like push button, LEDs, etc. see the configuration file template.

Device Details

Raspberry Pi

Works fine by default!

HDMI Audio Users: Note: If you are having trouble with the sound cutting off the first few seconds, try running the following command:

vcgencmd force_audio hdmi 1

If it works you can add it to cron, with these steps

  1. crontab -e

  2. @reboot vcgencmd force_audio hdmi 1

  3. save, exit and reboot.

Orange Pi & other A20 / H3 based boards

Note: Please don't use system images from the vendor. Just DON'T. They are complete and utter crap and they might even cause overheating / damage to your boards. Use Armbian instead. It's awesome, it's as secure as possible, it's up-to-date and it's loaded with features!

You have these options:

  1. Use the orangepi platform.

This will allow you to use a push button and LEDs!

Unfortunately, you have to run AlexaPi under root for this. To do this, follow the instructions on the page Running as root. Then, change the platform in your configuration file.

Be sure to understand what the pin numbers mean before you break your board or spend hours trying to debug it. Check out the pinout of the Expansion port of Orange Pi PC or the Orange Pi Zero (check other pages for your board, it might be different!) and the simple formula for calculating the right pin number.

  1. Use the general sysfs gpio platform.

    Not yet available.

  2. Use the dummy platform.

    If you don't care about button triggering or LEDs, you can use this. You can then run AlexaPi securely under the alexapi user.

C.H.I.P. computer

Note: The on-board audio for this card is currently not working very well. The beginning of audio files are clipped off, and long audio files become scrambled. It is recommended to use an external audio card for the C.H.I.P. for now.

You have these options:

  1. Use the chip platform.

This will allow you to use a push button and LEDs!

Unfortunately, you have to run AlexaPi under root for this. To do this, follow the instructions on the page Running as root. Then, change the platform in your configuration file.

Be sure to understand what the pin numbers mean before you break your board or spend hours trying to debug it. Check out the pinout of the Expansion port of the C.H.I.P. computer.

  1. Use the general sysfs gpio platform.

    Not yet available.

  2. Use the dummy platform.

    If you don't care about button triggering or LEDs, you can use this. You can then run AlexaPi securely under the alexapi user.

Magic Mirror

This platform is used to integrate AlexaPi with the Magic Mirror.

The main Magic Mirror project (framework and default modules) can be found here: https://github.com/MichMich/MagicMirror

AlexaPi Integrates with a third party module to display visual feedback on the screen (listening, processing, speaking etc) via this module: https://github.com/dgonano/MMM-AlexaPi

During setup, choose the magicmirror platform. If both systems are installed on the same device with default address' & ports the configuration file does not need to be changed. It will setup a web server and start communicating.

Hyperion

This platform is used to integrate AlexaPi with the Hyperion Ambient Lightning Software.

For more information about Hyperion and setup instruction see the project page.

AlexaPi uses the default Hyperion JSON-API to change the visualization according to the current state.

During setup, choose the hyperion platform. If both systems are installed on the same device with default address & ports the configuration file does not need to be changed.

For further state, color and effect customizations see the platforms/hyperion section in the configuration file.

Serial

This allows using indication / triggers that communicate via a serial port. Examples of using this are

  • Arduino with LEDs and a button with our example code: https://github.com/alexa-pi/AlexaPi-Arduino just because you can, or because you have a device that doesn't have any low-level peripherals, like an OpenWRT/LEDE router with no GPIO exposed, but equipped with USB that you can use for an Arduino.
  • Teddy Ruxpin project (the config defaults are for this)

Desktop / development machine

The best option is probably the desktop platform as it will allow you to trigger Alexa with your keyboard.

If you don't care about that, you can use the dummy platform.

Another option, possibly only for developers is to install fakeRPiGPIO and use the raspberrypi platform. You won't be able to trigger Alexa other than by the trigger word, but you'll see output (function calls) from the fake library. This will allow you to partially test the logic in the raspberrypi platform without actually running this on a Pi.

Other boards / computers

If none of the above platforms is suitable for you, you can use the dummy platform. You will then have voice activation only with no indicators (other than process output). This is a good idea for getting AlexaPi to work on new unsupported systems - you make sure the AlexaPi itself works under the OS and then you bother yourself with the device platform itself.