mirror of
https://github.com/sle118/squeezelite-esp32.git
synced 2026-01-29 22:00:54 +03:00
bluetooth fixup wip
This commit is contained in:
@@ -12,3 +12,4 @@ include(squeezelite.cmake)
|
|||||||
set(PROJECT_VER $ENV{PROJECT_VER})
|
set(PROJECT_VER $ENV{PROJECT_VER})
|
||||||
|
|
||||||
#target_compile_definitions(__idf_squeezelite-ota PRIVATE -DLOG_LOCAL_LEVEL=ESP_LOG_VERBOSE)
|
#target_compile_definitions(__idf_squeezelite-ota PRIVATE -DLOG_LOCAL_LEVEL=ESP_LOG_VERBOSE)
|
||||||
|
target_compile_definitions(__idf_driver_bt PRIVATE -DLOG_LOCAL_LEVEL=ESP_LOG_VERBOSE)
|
||||||
@@ -50,7 +50,6 @@ static const char * art_a2dp_connecting[]= {"\n",
|
|||||||
static void bt_app_av_state_connecting(uint16_t event, void *param);
|
static void bt_app_av_state_connecting(uint16_t event, void *param);
|
||||||
|
|
||||||
|
|
||||||
#define A2DP_TIMER_INIT connecting_timeout = esp_timer_get_time() +(CONFIG_A2DP_CONNECT_TIMEOUT_MS * 1000)
|
|
||||||
#define IS_A2DP_TIMER_OVER esp_timer_get_time() >= connecting_timeout
|
#define IS_A2DP_TIMER_OVER esp_timer_get_time() >= connecting_timeout
|
||||||
|
|
||||||
static void filter_inquiry_scan_result(esp_bt_gap_cb_param_t *param);
|
static void filter_inquiry_scan_result(esp_bt_gap_cb_param_t *param);
|
||||||
@@ -542,7 +541,15 @@ static void bt_av_hdl_stack_evt(uint16_t event, void *p_param)
|
|||||||
/* create and start heart beat timer */
|
/* create and start heart beat timer */
|
||||||
do {
|
do {
|
||||||
int tmr_id = 0;
|
int tmr_id = 0;
|
||||||
s_tmr = xTimerCreate("connTmr", (CONFIG_A2DP_CONTROL_DELAY_MS / portTICK_RATE_MS),
|
uint16_t ctr_delay_ms=CONFIG_A2DP_CONTROL_DELAY_MS;
|
||||||
|
char * value = config_alloc_get_default(NVS_TYPE_STR, "a2dp_ctrld", STR(CONFIG_A2DP_CONNECT_TIMEOUT_MS), 0);
|
||||||
|
if(value!=NULL){
|
||||||
|
ESP_LOGI(TAG, "A2DP ctrl delay: %s", value);
|
||||||
|
ctr_delay_ms=atoi(value);
|
||||||
|
}
|
||||||
|
FREE_AND_NULL(value);
|
||||||
|
|
||||||
|
s_tmr = xTimerCreate("connTmr", ( ctr_delay_ms/ portTICK_RATE_MS),
|
||||||
pdTRUE, (void *)tmr_id, a2d_app_heart_beat);
|
pdTRUE, (void *)tmr_id, a2d_app_heart_beat);
|
||||||
xTimerStart(s_tmr, portMAX_DELAY);
|
xTimerStart(s_tmr, portMAX_DELAY);
|
||||||
} while (0);
|
} while (0);
|
||||||
@@ -672,8 +679,16 @@ static void bt_app_av_state_unconnected(uint16_t event, void *param)
|
|||||||
ESP_LOGI(TAG,"%s",art_a2dp_connecting[l]);
|
ESP_LOGI(TAG,"%s",art_a2dp_connecting[l]);
|
||||||
}
|
}
|
||||||
ESP_LOGI(TAG,"Device: %s", s_peer_bdname);
|
ESP_LOGI(TAG,"Device: %s", s_peer_bdname);
|
||||||
|
int64_t connecting_timeout_offset=CONFIG_A2DP_CONNECT_TIMEOUT_MS;
|
||||||
if(esp_a2d_source_connect(s_peer_bda)==ESP_OK) {
|
if(esp_a2d_source_connect(s_peer_bda)==ESP_OK) {
|
||||||
A2DP_TIMER_INIT;
|
char * value = config_alloc_get_default(NVS_TYPE_STR, "a2dp_ctmt", STR(CONFIG_A2DP_CONNECT_TIMEOUT_MS), 0);
|
||||||
|
if(value!=NULL){
|
||||||
|
ESP_LOGI(TAG, "A2DP pairing timeout: %s", value);
|
||||||
|
connecting_timeout_offset=atoi(value);
|
||||||
|
}
|
||||||
|
FREE_AND_NULL(value);
|
||||||
|
|
||||||
|
connecting_timeout = esp_timer_get_time() +(connecting_timeout_offset * 1000);
|
||||||
s_a2d_state = APP_AV_STATE_CONNECTING;
|
s_a2d_state = APP_AV_STATE_CONNECTING;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|||||||
@@ -293,6 +293,13 @@ void register_default_nvs(){
|
|||||||
ESP_LOGD(TAG,"Registering default value for key %s, value %s", "a2dp_sink_name", CONFIG_A2DP_SINK_NAME);
|
ESP_LOGD(TAG,"Registering default value for key %s, value %s", "a2dp_sink_name", CONFIG_A2DP_SINK_NAME);
|
||||||
config_set_default(NVS_TYPE_STR, "a2dp_sink_name", CONFIG_A2DP_SINK_NAME, 0);
|
config_set_default(NVS_TYPE_STR, "a2dp_sink_name", CONFIG_A2DP_SINK_NAME, 0);
|
||||||
ESP_LOGD(TAG,"Registering default value for key %s, value %s", "bt_sink_pin", STR(CONFIG_BT_SINK_PIN));
|
ESP_LOGD(TAG,"Registering default value for key %s, value %s", "bt_sink_pin", STR(CONFIG_BT_SINK_PIN));
|
||||||
|
config_set_default(NVS_TYPE_STR, "a2dp_ctmt", STR(CONFIG_A2DP_CONNECT_TIMEOUT_MS), 0);
|
||||||
|
ESP_LOGD(TAG,"Registering default value for key %s, value %s", "bt_sink_pin", STR(CONFIG_A2DP_CONNECT_TIMEOUT_MS));
|
||||||
|
config_set_default(NVS_TYPE_STR, "a2dp_ctrld", STR(CONFIG_A2DP_CONTROL_DELAY_MS), 0);
|
||||||
|
ESP_LOGD(TAG,"Registering default value for key %s, value %s", "bt_sink_pin", STR(CONFIG_A2DP_CONTROL_DELAY_MS));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
config_set_default(NVS_TYPE_STR, "bt_sink_pin", STR(CONFIG_BT_SINK_PIN), 0);
|
config_set_default(NVS_TYPE_STR, "bt_sink_pin", STR(CONFIG_BT_SINK_PIN), 0);
|
||||||
ESP_LOGD(TAG,"Registering default value for key %s, value %s", "release_url", SQUEEZELITE_ESP32_RELEASE_URL);
|
ESP_LOGD(TAG,"Registering default value for key %s, value %s", "release_url", SQUEEZELITE_ESP32_RELEASE_URL);
|
||||||
config_set_default(NVS_TYPE_STR, "release_url", SQUEEZELITE_ESP32_RELEASE_URL, 0);
|
config_set_default(NVS_TYPE_STR, "release_url", SQUEEZELITE_ESP32_RELEASE_URL, 0);
|
||||||
@@ -355,6 +362,8 @@ void register_default_nvs(){
|
|||||||
|
|
||||||
ESP_LOGD(TAG,"Registering default value for key %s", "dac_config");
|
ESP_LOGD(TAG,"Registering default value for key %s", "dac_config");
|
||||||
config_set_default(NVS_TYPE_STR, "dac_config", "", 0);
|
config_set_default(NVS_TYPE_STR, "dac_config", "", 0);
|
||||||
|
//todo: add dac_config for known targets
|
||||||
|
|
||||||
|
|
||||||
ESP_LOGD(TAG,"Registering default value for key %s", "bat_config");
|
ESP_LOGD(TAG,"Registering default value for key %s", "bat_config");
|
||||||
config_set_default(NVS_TYPE_STR, "bat_config", "", 0);
|
config_set_default(NVS_TYPE_STR, "bat_config", "", 0);
|
||||||
|
|||||||
Reference in New Issue
Block a user