Arduino A2DP
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
BluetoothA2DPCommon Class Referenceabstract

Common Bluetooth A2DP functions. More...

#include <BluetoothA2DPCommon.h>

Inheritance diagram for BluetoothA2DPCommon:
BluetoothA2DPSink BluetoothA2DPSource

Public Member Functions

virtual ~BluetoothA2DPCommon ()=default
 Destructor.
 
void set_auto_reconnect (bool active)
 activate / deactivate the automatic reconnection to the last address (per default this is on)
 
virtual void disconnect ()
 Closes the connection.
 
virtual void end (bool releaseMemory=false)
 Closes the connection and stops A2DP.
 
virtual bool is_connected ()=0
 Checks if A2DP is connected.
 
virtual void set_volume (uint8_t volume)=0
 Changes the volume (use the range 0-100)
 
virtual int get_volume ()=0
 Determines the volume.
 
virtual void set_volume_control (VolumeControl *ptr)
 you can define a custom VolumeControl implementation
 
virtual esp_a2d_audio_state_t get_audio_state ()
 Determine the actual audio state.
 
virtual esp_a2d_connection_state_t get_connection_state ()
 Determine the connection state.
 
virtual void set_on_connection_state_changed (void(*callBack)(esp_a2d_connection_state_t state, void *), void *obj=nullptr)
 Set the callback that is called when the connection state is changed.
 
virtual void set_on_audio_state_changed (void(*callBack)(esp_a2d_audio_state_t state, void *), void *obj=nullptr)
 Set the callback that is called when the audio state is changed.
 
virtual void debounce (void(*cb)(void), int ms)
 Prevents that the same method is executed multiple times within the indicated time limit.
 
void log_free_heap ()
 Logs the free heap.
 
const char * to_str (esp_a2d_connection_state_t state)
 converts esp_a2d_connection_state_t to a string
 
const char * to_str (esp_a2d_audio_state_t state)
 converts a esp_a2d_audio_state_t to a string
 
const char * to_str (esp_bd_addr_t bda)
 converts a esp_bd_addr_t to a string - the string is 18 characters long!
 
void set_task_priority (UBaseType_t priority)
 defines the task priority (the default value is configMAX_PRIORITIES - 3)
 

Protected Member Functions

virtual const char * last_bda_nvs_name ()=0
 
virtual void get_last_connection ()
 
virtual void set_last_connection (esp_bd_addr_t bda)
 
virtual void clean_last_connection ()
 
virtual void connect_to_last_device ()
 
virtual bool has_last_connection ()
 
virtual void set_scan_mode_connectable (bool connectable)
 
virtual VolumeControlvolume_control ()
 provides access to the VolumeControl object
 

Protected Attributes

bool auto_reconnect =true
 
uint32_t debounce_ms = 0
 
DefaultVolumeControl default_volume_control
 
VolumeControlvolume_control_ptr = nullptr
 
esp_bd_addr_t last_connection = {0,0,0,0,0,0}
 
bool is_start_disabled = false
 
void(* connection_state_callback )(esp_a2d_connection_state_t state, void *obj) = nullptr
 
void(* audio_state_callback )(esp_a2d_audio_state_t state, void *obj) = nullptr
 
void * connection_state_obj = nullptr
 
void * audio_state_obj = nullptr
 
const char * m_a2d_conn_state_str [4] = {"Disconnected", "Connecting", "Connected", "Disconnecting"}
 
const char * m_a2d_audio_state_str [3] = {"Suspended", "Stopped", "Started"}
 
esp_a2d_audio_state_t audio_state = ESP_A2D_AUDIO_STATE_STOPPED
 
esp_a2d_connection_state_t connection_state = ESP_A2D_CONNECTION_STATE_DISCONNECTED
 
UBaseType_t task_priority = configMAX_PRIORITIES - 3
 

Detailed Description

Common Bluetooth A2DP functions.

Author
Phil Schatzmann

The documentation for this class was generated from the following files: