Zephyr API Documentation  3.7.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
vcp.h File Reference

Bluetooth Volume Control Profile (VCP) APIs. More...

Go to the source code of this file.

Data Structures

struct  bt_vcp_vol_rend_register_param
 Register structure for Volume Control Service. More...
 
struct  bt_vcp_included
 Volume Control Service included services. More...
 
struct  bt_vcp_vol_rend_cb
 Struct to hold the Volume Renderer callbacks. More...
 
struct  bt_vcp_vol_ctlr_cb
 Struct to hold the Volume Controller callbacks. More...
 

Macros

#define BT_VCP_VOL_REND_VOCS_CNT   0
 Defines the maximum number of Volume Offset Control service instances for the Volume Control Profile Volume Renderer.
 
#define BT_VCP_VOL_REND_AICS_CNT   0
 Defines the maximum number of Audio Input Control service instances for the Volume Control Profile Volume Renderer.
 
Volume Control Service Error codes
#define BT_VCP_ERR_INVALID_COUNTER   0x80
 The Change_Counter operand value does not match the Change_Counter field value of the Volume State characteristic.
 
#define BT_VCP_ERR_OP_NOT_SUPPORTED   0x81
 An invalid opcode has been used in a control point procedure.
 
Volume Control Service Mute Values
#define BT_VCP_STATE_UNMUTED   0x00
 The volume state is unmuted.
 
#define BT_VCP_STATE_MUTED   0x01
 The volume state is muted.
 

Functions

int bt_vcp_vol_rend_included_get (struct bt_vcp_included *included)
 Get Volume Control Service included services.
 
int bt_vcp_vol_rend_register (struct bt_vcp_vol_rend_register_param *param)
 Register the Volume Control Service.
 
int bt_vcp_vol_rend_set_step (uint8_t volume_step)
 Set the Volume Control Service volume step size.
 
int bt_vcp_vol_rend_get_state (void)
 Get the Volume Control Service volume state.
 
int bt_vcp_vol_rend_get_flags (void)
 Get the Volume Control Service flags.
 
int bt_vcp_vol_rend_vol_down (void)
 Turn the volume down by one step on the server.
 
int bt_vcp_vol_rend_vol_up (void)
 Turn the volume up by one step on the server.
 
int bt_vcp_vol_rend_unmute_vol_down (void)
 Turn the volume down and unmute the server.
 
int bt_vcp_vol_rend_unmute_vol_up (void)
 Turn the volume up and unmute the server.
 
int bt_vcp_vol_rend_set_vol (uint8_t volume)
 Set the volume on the server.
 
int bt_vcp_vol_rend_unmute (void)
 Unmute the server.
 
int bt_vcp_vol_rend_mute (void)
 Mute the server.
 
int bt_vcp_vol_ctlr_cb_register (struct bt_vcp_vol_ctlr_cb *cb)
 Registers the callbacks used by the Volume Controller.
 
int bt_vcp_vol_ctlr_cb_unregister (struct bt_vcp_vol_ctlr_cb *cb)
 Unregisters the callbacks used by the Volume Controller.
 
int bt_vcp_vol_ctlr_discover (struct bt_conn *conn, struct bt_vcp_vol_ctlr **vol_ctlr)
 Discover Volume Control Service and included services.
 
struct bt_vcp_vol_ctlr * bt_vcp_vol_ctlr_get_by_conn (const struct bt_conn *conn)
 Get the volume controller from a connection pointer.
 
int bt_vcp_vol_ctlr_conn_get (const struct bt_vcp_vol_ctlr *vol_ctlr, struct bt_conn **conn)
 Get the connection pointer of a client instance.
 
int bt_vcp_vol_ctlr_included_get (struct bt_vcp_vol_ctlr *vol_ctlr, struct bt_vcp_included *included)
 Get Volume Control Service included services.
 
int bt_vcp_vol_ctlr_read_state (struct bt_vcp_vol_ctlr *vol_ctlr)
 Read the volume state of a remote Volume Renderer.
 
int bt_vcp_vol_ctlr_read_flags (struct bt_vcp_vol_ctlr *vol_ctlr)
 Read the volume flags of a remote Volume Renderer.
 
int bt_vcp_vol_ctlr_vol_down (struct bt_vcp_vol_ctlr *vol_ctlr)
 Turn the volume down one step on a remote Volume Renderer.
 
int bt_vcp_vol_ctlr_vol_up (struct bt_vcp_vol_ctlr *vol_ctlr)
 Turn the volume up one step on a remote Volume Renderer.
 
int bt_vcp_vol_ctlr_unmute_vol_down (struct bt_vcp_vol_ctlr *vol_ctlr)
 Turn the volume down one step and unmute on a remote Volume Renderer.
 
int bt_vcp_vol_ctlr_unmute_vol_up (struct bt_vcp_vol_ctlr *vol_ctlr)
 Turn the volume up one step and unmute on a remote Volume Renderer.
 
int bt_vcp_vol_ctlr_set_vol (struct bt_vcp_vol_ctlr *vol_ctlr, uint8_t volume)
 Set the absolute volume on a remote Volume Renderer.
 
int bt_vcp_vol_ctlr_unmute (struct bt_vcp_vol_ctlr *vol_ctlr)
 Unmute a remote Volume Renderer.
 
int bt_vcp_vol_ctlr_mute (struct bt_vcp_vol_ctlr *vol_ctlr)
 Mute a remote Volume Renderer.
 

Detailed Description

Bluetooth Volume Control Profile (VCP) APIs.