Device Information Service (DIS)
This module implements the Device Information Service.
Overview
During initialization, the module adds the Device Information Service to the Bluetooth LE stack database. It then encodes the supplied information, and adds the corresponding characteristics.
The characteristic values follow an all-or-nothing model:
If the application supplies a
ble_dis_valuesinstance at initialization, the values fully define every characteristic. The Kconfig options are ignored and any member leftNULL(or empty for strings) omits that characteristic.If no run-time values are supplied, all characteristics are built from the
CONFIG_BLE_DIS_*Kconfig build-time defaults.
Configuration
Set the CONFIG_BLE_DIS Kconfig option to enable the service.
You can configure the service using the following Kconfig options that provide the build-time default values:
CONFIG_BLE_DIS_MANUFACTURER_NAME- Sets the manufacturer name.CONFIG_BLE_DIS_MODEL_NUMBER- Sets the model number.CONFIG_BLE_DIS_SERIAL_NUMBER- Sets the serial number.CONFIG_BLE_DIS_HW_REVISION- Sets the hardware revision.CONFIG_BLE_DIS_FW_REVISION- Sets the firmware revision.CONFIG_BLE_DIS_SW_REVISION- Sets the software revision.CONFIG_BLE_DIS_SYSTEM_ID- Includes the System ID characteristic in the Device Information Service.CONFIG_BLE_DIS_SYSTEM_ID_OUI- Sets the Organizationally Unique ID.CONFIG_BLE_DIS_SYSTEM_ID_MID- Sets the Manufacturer ID.CONFIG_BLE_DIS_PNP_ID- Includes the Plug and Play ID characteristic.CONFIG_BLE_DIS_PNP_VID_SRC- Sets the vendor ID source.CONFIG_BLE_DIS_PNP_VID- Sets the vendor ID.CONFIG_BLE_DIS_PNP_PID- Sets the product ID.CONFIG_BLE_DIS_PNP_VER- Sets the product version.CONFIG_BLE_DIS_REGULATORY_CERT- Includes the IEEE 11073-20601 Regulatory Certification characteristic.CONFIG_BLE_DIS_REGULATORY_CERT_LIST- Sets the regulatory certification list.
Initialization
To initialize the service, call the ble_dis_init() function.
See the ble_dis_config struct for configuration details.
Set the values field of ble_dis_config to a ble_dis_values instance to supply run-time values, or to NULL to use the Kconfig build-time defaults.
Usage
When enabled, the module adds the Device Information Service with the characteristic values supplied at run time. If no run-time values are supplied, the values specified by the Kconfig options are used.
Dependencies
This service has the following Bare Metal dependencies:
SoftDevice -
CONFIG_SOFTDEVICE
API documentation
include/bm/bluetooth/services/ble_dis.hsubsys/bluetooth/services/ble_dis/