Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
451 changes: 451 additions & 0 deletions include/bluetooth/audio/aics.h

Large diffs are not rendered by default.

64 changes: 63 additions & 1 deletion include/bluetooth/uuid.h
Original file line number Diff line number Diff line change
Expand Up @@ -410,6 +410,15 @@ struct bt_uuid_128 {
*/
#define BT_UUID_MESH_PROXY \
BT_UUID_DECLARE_16(BT_UUID_MESH_PROXY_VAL)
/** @def BT_UUID_AICS_VAL
* @brief Audio Input Control Service value
*/
#define BT_UUID_AICS_VAL 0x1843
/** @def BT_UUID_AICS
* @brief Audio Input Control Service
*/
#define BT_UUID_AICS \
BT_UUID_DECLARE_16(BT_UUID_AICS_VAL)
/** @def BT_UUID_VOCS_VAL
* @brief Volume Offset Control Service value
*/
Expand Down Expand Up @@ -1313,6 +1322,60 @@ struct bt_uuid_128 {
#define BT_UUID_GATT_SERVER_FEATURES \
BT_UUID_DECLARE_16(BT_UUID_GATT_SERVER_FEATURES_VAL)

/** @def BT_UUID_AICS_STATE_VAL
* @brief Audio Input Control Service State value
*/
#define BT_UUID_AICS_STATE_VAL 0x2B77
/** @def BT_UUID_AICS_STATE
* @brief Audio Input Control Service State
*/
#define BT_UUID_AICS_STATE \
BT_UUID_DECLARE_16(BT_UUID_AICS_STATE_VAL)
/** @def BT_UUID_AICS_GAIN_SETTINGS_VAL
* @brief Audio Input Control Service Gain Settings Properties value
*/
#define BT_UUID_AICS_GAIN_SETTINGS_VAL 0x2B78
/** @def BT_UUID_AICS_GAIN_SETTINGS
* @brief Audio Input Control Service Gain Settings Properties
*/
#define BT_UUID_AICS_GAIN_SETTINGS \
BT_UUID_DECLARE_16(BT_UUID_AICS_GAIN_SETTINGS_VAL)
/** @def BT_UUID_AICS_INPUT_TYPE_VAL
* @brief Audio Input Control Service Input Type value
*/
#define BT_UUID_AICS_INPUT_TYPE_VAL 0x2B79
/** @def BT_UUID_AICS_INPUT_TYPE
* @brief Audio Input Control Service Input Type
*/
#define BT_UUID_AICS_INPUT_TYPE \
BT_UUID_DECLARE_16(BT_UUID_AICS_INPUT_TYPE_VAL)
/** @def BT_UUID_AICS_INPUT_STATUS_VAL
* @brief Audio Input Control Service Input Status value
*/
#define BT_UUID_AICS_INPUT_STATUS_VAL 0x2B7A
/** @def BT_UUID_AICS_INPUT_STATUS
* @brief Audio Input Control Service Input Status
*/
#define BT_UUID_AICS_INPUT_STATUS \
BT_UUID_DECLARE_16(BT_UUID_AICS_INPUT_STATUS_VAL)
/** @def BT_UUID_AICS_CONTROL_VAL
* @brief Audio Input Control Service Control Point value
*/
#define BT_UUID_AICS_CONTROL_VAL 0x2B7B
/** @def BT_UUID_AICS_CONTROL
* @brief Audio Input Control Service Control Point
*/
#define BT_UUID_AICS_CONTROL \
BT_UUID_DECLARE_16(BT_UUID_AICS_CONTROL_VAL)
/** @def BT_UUID_AICS_DESCRIPTION_VAL
* @brief Audio Input Control Service Input Description value
*/
#define BT_UUID_AICS_DESCRIPTION_VAL 0x2B7C
/** @def BT_UUID_AICS_DESCRIPTION
* @brief Audio Input Control Service Input Description
*/
#define BT_UUID_AICS_DESCRIPTION \
BT_UUID_DECLARE_16(BT_UUID_AICS_DESCRIPTION_VAL)
/** @def BT_UUID_VOCS_STATE_VAL
* @brief Volume Offset State value
*/
Expand Down Expand Up @@ -1349,7 +1412,6 @@ struct bt_uuid_128 {
*/
#define BT_UUID_VOCS_DESCRIPTION \
BT_UUID_DECLARE_16(BT_UUID_VOCS_DESCRIPTION_VAL)

/*
* Protocol UUIDs
*/
Expand Down
5 changes: 5 additions & 0 deletions subsys/bluetooth/audio/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,8 @@ if (CONFIG_BT_VOCS OR CONFIG_BT_VOCS_CLIENT)
zephyr_library_sources(vocs.c)
endif()
zephyr_library_sources_ifdef(CONFIG_BT_VOCS_CLIENT vocs_client.c)

if (CONFIG_BT_AICS OR CONFIG_BT_AICS_CLIENT)
zephyr_library_sources(aics.c)
endif()
zephyr_library_sources_ifdef(CONFIG_BT_AICS_CLIENT aics_client.c)
2 changes: 1 addition & 1 deletion subsys/bluetooth/audio/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ config BT_AUDIO_DEBUG
Use this option to enable debug logs for the Bluetooth
Audio functionality.


source "subsys/bluetooth/audio/Kconfig.vocs"
source "subsys/bluetooth/audio/Kconfig.aics"

endif # BT_AUDIO
76 changes: 76 additions & 0 deletions subsys/bluetooth/audio/Kconfig.aics
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# Bluetooth Audio - Audio Input Control Service options
#
# Copyright (c) 2020 Bose Corporation
# Copyright (c) 2020 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: Apache-2.0
#

if BT_AUDIO

##################### Audio Input Control Service #####################

config BT_AICS_MAX_INSTANCE_COUNT
int "Audio Input Control Service max instance count"
default 0
range 0 15
help
This option sets the maximum number of instances of Audio Input
Control Services.

config BT_AICS
bool # hidden
default y if BT_AICS_MAX_INSTANCE_COUNT > 0
help
This hidden option enables support for Audio Input Control Service.

if BT_AICS

config BT_AICS_MAX_INPUT_DESCRIPTION_SIZE
int "Audio Input Control Service max input description size"
default 32
range 0 512
help
This option sets the maximum input description size in octets.
############# DEBUG #############

config BT_DEBUG_AICS
bool "Audio Input Control Service debug"
depends on BT_AUDIO_DEBUG
help
Use this option to enable Audio Input Control Service debug logs for
the Bluetooth Audio functionality.

endif # BT_AICS

##################### Audio Input Control Service Client #####################

config BT_AICS_CLIENT_MAX_INSTANCE_COUNT
int "Audio Input Control Service client max instance count"
default 0
range 0 15
help
This option sets the maximum number of instances of Audio Input
Control Services.

config BT_AICS_CLIENT
bool # hidden
default y if BT_AICS_CLIENT_MAX_INSTANCE_COUNT > 0
help
This hidden option enables support for Audio Input Control Service.


if BT_AICS_CLIENT

############# DEBUG #############

config BT_DEBUG_AICS_CLIENT
bool "Audio Input Control Service client debug"
depends on BT_AUDIO_DEBUG
help
Use this option to enable Audio Input Control Service client debug
logs for the Bluetooth Audio functionality.

endif # BT_AICS_CLIENT

endif # BT_AUDIO
Loading