Versions Compared

Key

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

...

Release History

DateFeature Added
13-May-2021

Added support for smart screen notification and audio player support

  • Refactor ThunderInputManager to use with Smart screen
  • Handle audio playback states and send the notification to skill mapper
  • Smart screen overlay control based on audio & SDK states.
  • Full screen overlay instead of scaled window for smart screen.

Changes in Skill Mapping

  • Improvement in RDK service JSON to fix few issues.
  • Setting transparency to overlay when partial display is on 
  • Suspending active apps while moving to Home
31-Mar-2021

Alexa Smart Screen support added

  • Smart screen build support is available with a DISTRO feature
  • Voice chrome integration available
  • Smart screen integrated as UI Overlay
  • Control smart screen through skill mapper

AVS plugin integration with RDK services

  • Skill maps updated to make use of RDK service plugins
  • RDK Shell interfacing available for the JSON RPCs

Voice control support for new RDK UI

  • volume control functionalities routed through DisplaySettings plugin
  • Key navigations using RDK Shell
  • Supports new launch shortcuts for Bluetooth & Wi-FI settings
  • Application launch supported using Cobalt, ResidentApp and LightningApp plugins
01-Feb-2021

Added Video skill kit support & custom skill with the plugin

  • RDK Skill mapper supports custom skill invocation through plugin
  • Skill mapper module can now handle below Video Skill Kit directive
    • Speaker
    • App Launch
    • Channel Controller
    • Playback Controller
    • Keypad Controller
  • Communication with lambda service from RDK client through SQS
  • Build support for KWD
  • integration of AWS CPP SDK
30-Nov-2020

Support for AVS Thunder plugin:

  • Build support added for the AVS Plugin (Currently compatible with SDK 1.15)
  • Switch between AVS service and plugin using DISTRO alexa-plugin
  • Add support to build AVS SampleApp as library
01-Sep-2020

Fixes and skill addition:

  • Added skill mapping for Volume Up, Down, Mute, Unmute and show/hide video functionalities
16-Jul-2020

Initial commit :

  • Added meta-rdk-voice layer
  • Added skill mapper module with JSON RPC mapping and LED state control commands
  • systemd services for alexa service

...

Code Block
1. Initialize and download the code base
 - Example for RaspberryPi:
 (we can use rdkv.xml to build with external source method or rdkv-nosrc.xml to build without externalsrc)
 $ repo init -u https://code.rdkcentral.com/r/manifests -m rdkv-nosrc.xml -b rdk-next
 $ repo sync

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

3. Enable the below DISTRO feature to build AVS plugin
 $ vi meta-rdk-voice/conf/layer.conf
 - enable the below commented line
 #DISTRO_FEATURES_append = " alexa-plugin"

4. For the external source builds (such as some Broadcom platforms) add below line in manifest/auto.conf
 - In <Manifest>.xml
   <project name="components/generic/avs/alexa_skill_mapper" revision="rdk-next"/>
 - In auto.conf (where brcmexternalsrc is enabled)
   BRCMEXTERNALSRC_pn-wpe-alexaskillmapper += "rdk/components/generic/avs/alexa_skill_mapper"
   SRCPV_pn-wpe-alexaskillmapper = "${BRCMEXTERNAL-SRCPV-CMF}"
 $ repo sync

...

Code Block
4. 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"

...

Keyword detector (KWD) support enables the device to wake-up & listen to input after receiving the hot word  "Alexa". It is used with devices that has on-board Microphone-board Microphone

This option need to be enabled along with "alexa_ffv" DISTRO for MIC based voice input

Code Block
1. To use pryon lite KWD engine for devices with MIC input
 Note: Source code need to be obtained from amazon separately
2. Set the KWD support flag to "ON"
  $ vi meta-rdk-voice/recipes-wpe/wpeframework/include/avs.inc
    AVS_KWD_SUPPORT ?= "ON"
3. include the KWD detector recipe to build.
 - enable the commented line 
 #PREFERRED_PROVIDER_virtual/alexa-kwd-detector = "pryonlite"
4. Create a bbappend file in platform layer and provide artifact location
e.g. 
 $ vi meta-rdk-oem-<OEMNAME>/meta-<MACHINE>/recipes-avs/pryonlite/pryonlite_2.3.0.bbappend
   SRC_URI  = "file://pryon_lite_2.3.0-metrological-2019.12.23.2344.zip"

...

  1.  Go to the controller web UI by typing http://<Device-IP> in a browser
  2. Select the controller option from left pane menu
  3. toggle the AVS option to activate the plugin

For systemd service (old implementation)

  1. Login to the device with "ssh root@<Device-IP>
  2. start the alexa service by invoking "systemctl start alexa.service"

Customization

Mapping to amazon developer account

...

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

2. Edit the Configuration file
 $ cd /usr/share/WPEFramework/AVS
 $ vi 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<DESCRIPTION>"
    },

Front Panel LED Notifications

...

We can check the authorization code using below command:

  • In case of systemd implementation:

$ systemctl status alexa

  • In case of plugin implementation

$ tail -f /opt/logs/wpeframework.log

...

AVS Integration with custom skills

Current Limitations

IssueDescription
Bluetooth voice input

BT voice input support is not yet available with the firebolt/RDK services codebase.

This will be addressed in coming releases once the feature is ready.

Generic search engineGeneric search feature is dependent on operators backend support.

Roadmap

FeatureStatus
Upgrade Alexa SDKs to latest version: ADSDK (1.2123), Smart Screen (2.56)Planned in AprilJuly-2021 Sprint
Extending support to more OEM platformsTBDIn Progress
Context specific functionalitiesPlanned to support some apps initially
Multi room MusicOpen