Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Alexa related recipes are bundled inside meta-rdk-voice/recipes-alexa avs and contains below build targets

RecipeFunctionalityCurrent status
wpe-openblasRecipe required in case of Wake-word-engine mode is selected.Locally hostedCMF Hosted
wpe-alexa.bbMain recipe for downloading the AVS SDK and its compilation, linking it with RDK skill mapping module.Locally CMF hosted


Code Block
1. copy recipes-alexa to meta-cmf-raspberrypi or to a similar OEM layer
2. Add above 2 recipes to the appropriate package-group
3. bitbake rdk-generic-wpe-thunder (or the image where alexa is packaged)

Customization

Mapping the developer account

 Initialize and download the code base
 - Example for RaspberryPi:
 $ repo init -u https://code.rdkcentral.com/r/manifests -m rdkv-nosrc.xml -b thunder-next
 $ repo sync

2. Download the meta-rdk-voice layer in project root
 $ git clone https://code.rdkcentral.com/r/components/generic/rdk-oe/meta-rdk-voice

3. Add to BBLAYERS
 $ vi meta-rdk/conf/bblayers.conf.sample
 BBLAYERS += "${@'${RDKROOT}/meta-rdk-voice' if os.path.isfile('${RDKROOT}/meta-rdk-voice/conf/layer.conf') else ''}"

4. Optionally if wanted to use MIC based implementation (Ignore if using BLE voice remote)
 $ vi meta-rdk-voice/conf/layer.conf
 - enable the below commented line
 #DISTRO_FEATURES_append = " alexa_ffv"

5.Build the image target
 - Example for RaspberryPi
 $ source meta-cmf-raspberrypi/setup-environment
 ### select meta-cmf-raspberrypi/conf/machine/raspberrypi-rdk-hybrid-thunder.conf ###
 $ bitbake rdk-generic-hybrid-thunder-image

Customization

Mapping to amazon developer account

Please refer the wiki link AVS Developer Account and Skill Creation Guidelines for RDK for creating a developer account.

Modify below section to Modify below section and map with relevant developer account.

Code Block
1. Login to the device
 $ ssh root@<RDKV-Client-IP>

2. Edit the Configuration file
 $ cd /home/root
 $ vi Alexa_SDK/Integration/AlexaClientSDKConfig.json
     "deviceInfo":{
        // Unique device serial number. e.g. 123456
        "deviceSerialNumber":"<SERIAL_NO>",
        // The Client ID of the Product from developer.amazon.com
        "clientId":"<CLIENT_ID>",
        // Product ID from developer.amazon.com
        "productId":"<PRODUCT_ID>",
        // The name of the device manufacturer.
        "manufacturerName": "<MANUFACTURER_NAME>",
        // The description of the device which should contain the manufacturer name or how the device is connected.
        "description": "<DESCRIPTION"
    },

...

https://github.com/rdkcentral/ThunderNanoServices/tree/master/IOConnector

Code Block
$ cd /home/root
$ vi Alexa_SDK/Integration/AlexaCurl.json
Set below GPIO to appropriate value
   "PinOne":"115",
   "PinTwo":"122",
   "PinThree":"115"

...