Versions Compared

Key

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

Download Word Version


Image Removed
BLE RDK Voice Remote Profile Specification
RDK-SP-BLE-RVR-Service-D01-200515
Document Status: Draft
May 15, 2020
Document Status

...

Document Control Number:

PDF
name

RDK-SP-BLE-RVR-

...

Profile-D01-200515

...

Document Title:

...

BLE RDK Voice Remote Profile Specification

...

Versions:

...

D01 – May 15, 2020

...

Date:

...

May 15, 2020

...

Status:

...

Document Status: Draft

...

Distribution:

...

RDK members only

...

Tables
Table 1 - Typographical Conventions
Table 2 - Terms and Definitions
Table 3 - Abbreviations and Acronyms
Table 4: RDK Remote Control Device Service Requirements
Table 5: RDK Remote Control Device HID Service Requirements
Table 6: Typical Report Layout for Key Events
Table 7: Typical report map for keyboard/keypad reports
Table 8 - RDK Remote Control Device HID Information Characteristic Value
Table 9: RDK Remote Control Device Battery Service Requirements
Table 10: RDK Remote Control Device Information Service Requirements
Table 11: RDK Remote Control Device Immediate Alert Service Levels
Table 12: RDK Remote Control Device IR Service Requirements

...

The RDK Voice Remote Profile is a profile for providing remote control functionality over BLE in the RDK ecosystem. The RVR Profile includes services for voice, firmware update, IR support, HoGP, battery level, alerting and device information.

...

This document defines detailed requirements for the RDK Voice Service. It is intended to specify transmission of voice data from an RVS server to an RVS client.

...

Typeface

Usage

Boldface

Used to call attention to a piece of information. For example:
This specification does not include headend diagnostic screens.

Boldface & Uppercase

Used to emphasize information and for readability. For example:
ENTER, MUTE, INFO, VOL +/- and other buttons on the remote control.

Italics

Used to emphasize that the information being presented is for informational purposes only and is not a requirement even though it may contain conformance language. For example:
Note: The voice controller uses the Channel Check Request to verify that the voice target has disabled frequency agility.

Uppercase

Used to define and signify a requirement. For example:
MUST, SHOULD, and MAY.

...

Throughout this document, the words that are used to define the significance of particular requirements are capitalized. These words are:
"MUST"This word or the adjective "REQUIRED" means that the item is an absolute requirement of this specification document.
"MUST NOT"This phrase means that the item is an absolute prohibition of this specification document.
"SHOULD"This word or the adjective "RECOMMENDED" means that there may exist valid reasons in particular circumstances to ignore this item, but the full implications should be understood and the case carefully weighed before choosing a different course.
"SHOULD NOT"This phrase means that there may exist valid reasons in particular circumstances when the listed behavior is acceptable or even useful, but the full implications should be understood and the case carefully weighed before choosing a different course.
"MAY"This word or the adjective "OPTIONAL" means that this item is truly optional. One vendor may choose to include the item because a particular marketplace requires it or because it enhances the product, for example; another vendor may omit the same item.

...

Version

Date

Author

Remarks

D01

15 May 2020

Comcast

Initial Version

...

Reasonable effort is made to keep references up to date with respect to versions and release dates, however manufacturers are responsible for ensuring they have the most recent version of a reference specification (unless otherwise noted).
Where conflicts exist between requirements contained in this specification and normative references, the specification requirements govern.

...

Wiki Markup
\[BLUETOOTH\] Bluetooth Core Specification version 4.0 or later 
\\

...

Term

Definition

Adaptive Differential Pulse-Code Modulation

A compression algorithm that varies the size of the quantization step, allowing further reduction of the required bandwidth for a given signal-to-noise ratio.

Opus

 

...

Abbrv

Acronym

ADPCM

Adaptive Differential Pulse-Code Modulation

RVS

RDK Voice Service

RVR

RDK Voice Remote

...

The RDK over GATT profile defines the procedures and features to be used by RDK Bluetooth low energy RCU devices using GATT.
This profile defines the services and their mandated characteristics required to meet the RDK RCU specification.
The profile shall operate over an LE transport only

...

This profile requires the following services and profiles.

  • Generic Attribute Profile (GATT)
  • Battery Service.
  • Device Information Service
  • Immediate Alert Service
  • RDK Voice Service
  • RDK Infrared Service
  • RDK Firmware Upgrade Service
  • Scan Parameters Profile.

This specification can be used with Bluetooth Core Specification Version 4.0 or later.

...

All capabilities indicated as mandatory for this profile shall be supported in the specified manner (process-mandatory). This also applies for all optional and conditional capabilities for which support is indicated.

...

The profile defines two roles: RDK Set Top Box (STB) and RDK Remote Control (RCU).

  • The RDK Remote Control shall be a GATT server.
  • The RDK Set Top Box shall be a GATT client.

...

There are no concurrency limitations or restrictions for the RDK Set Top Box or Remote Control Device roles imposed by this profile.

...

The RDK Remote Control Device shall use the GAP Peripheral role. The RDK Set Top Box shall use the GAP Central role.

...

This profile shall operate over an LE transport only.

...

  • HID Service.
  • Battery Service.
  • Device Information Service. Immediate Alert Service.
  • RDK Voice Service.
  • RDK Infrared Service.
  • RDK Firmware Upgrade Service.

Optional services may support multiple instances but are not considered as part of this profile.

...

The RDK Remote Control Device shall have one instance of the following services; HID Service, Device Information Service, Battery Service, Immediate Alert Service, RDK Voice Service, RDK Infrared Service and RDK Firmware Upgrade Service. Optionally the Scan Parameters Service may be implemented, but only a single instance.
The RDK Remote Control Device may support the functionalities defined by the Scan Server role of the Scan Parameters Profile.
Table 4 shows the requirements for the RDK Remote Control Device.

Service

Requirement

HID Service

Mandatory

Battery Service

Mandatory

Device Information Service

Mandatory

Immediate Alert Service

Mandatory

RDK Voice Service

Mandatory

RDK IR Service

Mandatory

RDK Firmware Upgrade Service

Mandatory

Scan Parameters Service

Optional

Table 4: RDK Remote Control Device Service Requirements

...

This sub-section defines additional RDK Remote Control Device requirements beyond this defined in the HID Service.
Table 5 shows the HID Service characteristic and descriptor requirements for the Remote Control Device.

Characteristic

Descriptor

Requirement

Protocol Mode

 

X

Boot Keyboard Input Report

 

X

Boot Keyboard Output Report

 

X

Boot Mouse Input Report

 

X

Report Map

 

M

 

External Reference

X

Report

 

M

 

Client Characteristic Configuration

M

 

Report Reference

M

HID Information

 

M

HID Control Point

 

M

Table 5: RDK Remote Control Device HID Service Requirements
Requirements marked with 'M' are mandatory, 'O' are optional, and 'X' are excluded (not permitted).

...

The HID Service shall not include any external services within its HID report map. All Report Reference characteristics will define Report characteristics within the HID Service.

...

All HID Service instances shall be instantiated as a Primary Service as part of this profile.

...

While in GAP Discoverable Mode for initial connection to an RDK STB, the RDK Remote Control Device should include the HID Service UUID defined in the Service UUIDs AD type field of the advertising data.

...

The RDK Remote Control Device should include it's Appearance in its Advertising Data or Scan Response Data.

...

The RDK Remote Control Device should not support Boot Protocol Mode.

...

The HID Report Map characteristic must contain a report in the General Descriptor Ctrls (0x01) usage page with usage type set to Keyboard (0x06). It is recommended that the report byte layout as specified in the HID Report matches a typical HID keyboard.
Table 6 shows a typical HID report data format allowing for up to 6 keys to be signaled at once.

...

Modifier

...

Reserved

...

Key 1

...

Key 2

...

Key 3

...

Key 4

...

Key 5

...

Key 6

...

Report Data

Description

0x05, 0x01,

Usage Page (Generic Desktop Ctrls)

0x09, 0x06,

Usage (Keyboard)

0xA1, 0x01,

Collection (Application)

0x85, 0x02,

Report ID (2)

0x05, 0x07,

Usage Page (Kbrd/Keypad)

0x19, 0xE0,

Usage Minimum (0xE0)

0x29, 0xE7,

Usage Maximum (0xE7)

0x15, 0x00,

Logical Minimum (0)

0x25, 0x01,

Logical Maximum (1)

0x75, 0x01,

Report Size (1)

0x95, 0x08,

Report Count (8)

0x81, 0x02,

Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)

0x81, 0x02,

Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)

0x95, 0x01

Report Count (1)

0x75, 0x08,

Report Size (8)

0x81, 0x01,

Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)

0x95, 0x06,

Report Count (6)

0x75, 0x08,

Report Size (8)

0x15, 0x00,

Logical Minimum (0)

0x26, 0xDD, 0x00,

Logical Maximum (221)

0x05, 0x07,

Usage Page (Kbrd/Keypad)

0x19, 0x00,

Usage Minimum (0x00)

0x29, 0xDD,

Usage Maximum (0xDD)

0x81, 0x00,

Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position)

0xC0

End Collection

...

The HID Information Characteristic value shall contain the field values defined in table 3.5.

HID Attribute

Size

Value

Details

bcdHID

2 octets

0x0110

Base USB HID specification

bCountryCode

1 octet

0x00

Unused

Flags

1 octet

0x02

Disable RemoteWake,
Enable NormallyConnectable

...

This sub-section defines additional RDK Remote Control Device requirements beyond those defined in the Battery Service.
Table 9 shows the Battery Service characteristic and descriptor requirements for the RDK Remote Control Device.

Characteristic

Descriptor

Requirement

Battery Level

 

M

 

Client Characteristic Configuration

M

 

Characteristic Presentation Format

X

...

There shall be a single instance of the Battery Service instantiated as a Primary Service.

...

The RDK Remote Control Device shall implement the notification property of the Battery Level characteristic

...

This sub-section defines additional RDK Remote Control Device requirements beyond those defined in the Device Information Service.
Table 10 shows the Device Information Service characteristic and descriptor requirements for the RDK Remote Control Device.

Characterirstic

Descriptor

Requirement

Manufacturer Name String

 

M

Model Number String

 

M

Serial Number String

 

M

Hardware Revision String

 

M

Firmware Revision String

 

M

Software Revision String

 

M

System ID

 

O

IEEE Regulatory Certification Data List

 

X

PnP ID

 

M

...

There shall be a single instance of the Device Information Service instantiated as a Primary Service as part of this profile.

...

The PnP ID characteristic is mandatory and should contain a unique vendor and product ID.

...

The Manufacturer Name, Model Number, Serial Number, Hardware Revision, Firmware Revision and Software Revision String characteristics are all mandatory, they shall only contain characters in the ASCII character range. The strings shall not exceed 32 characters and shall not contain control or formatting (i.e. newline, form feed, backspace, etc) characters.

...

This sub-section defines additional RDK Remote Control Device requirements beyond those defined in the Immediate Alert Service.

...

There shall be a single instance of the Immediate Alert Service instantiated as a Primary Service as part of this profile.

...

The RDK Remote Control Device shall support all three possible alert levels as defined in table 3.8, No Alert shall be the default state.

Alert Level

Requirement

No Alert

M

Mild Alert

M

High Alert

M

...

The RDK Remote Control Device shall signal a mild or high alert for a maximum of 30 seconds.

...

A Mild or High Alert shall be cancelled if the user presses any button on the device, in such cases no IR or HID report shall be issued for the button press.

...

This sub-section defines additional RDK Remote Control Device requirements beyond those defined in the RDK Voice Service.

...

There shall be a single instance of the RDK Voice Service instantiated as a Primary Service as part of this profile.

...

IR Signal Reference

Requirement

Standby/Power Key

O

Input Selection Key

O

Volume Up Key

O

Volume Down Key

O

Mute Key

O

OK/Select Key

O

Up Key

O

Down Key

O

Left Key

O

Right Key

O

...

There shall be a single instance of the RDK IR Service instantiated as a Primary Service as part of this profile.

...

This sub-section defines additional RDK Remote Control Device requirements beyond those defined in the RDK Firmware Upgrade Service.

...

There shall be a single instance of the RDK Firmware Upgrade Service instantiated as a Primary Service as part of this profile.

...

This section descriptor the connection establishment and connection termination procedures used by an RDK STB and RCU Device in certain scenarios.
TBD.

...

This section describes the security considerations for a RDK Remote Control Device.The RDK Remote Control Device shall use LE Security Mode 1 and either Security Level 2 or 3.
All supported characteristics specified by the HID Service shall be set to Security Mode 1 and either Security Level 2 or 3.
RDK RCU Devices shall bond and use LE Security Mode 1, Security Level 2 or 3, both of which require an encrypted link. Encryption is used to verify that a bond still exists and is valid.
The RDK RCU Device should use the SM Slave Security Request, as defined in Bluetooth Core Specification Version 4.0 Volume 3, Part H, Section 2.4.6, procedure to inform the RDK STB Host of its security requirements.
All supported characteristics specified by the Device Information Service, Scan Parameters Service, Battery Service, RDK Voice Service and RDK Infrared Service should be set to the same LE Security Mode and the same Security Level as the characteristics in the HID Service.

.pdf