2
0
Эх сурвалжийг харах

added power and preset buttons

Matthias Lienhard 4 жил өмнө
parent
commit
347a795b5f

+ 2 - 1
components/services/audio_controls.c

@@ -56,9 +56,10 @@ static const actrls_config_map_t actrls_config_map[] =
 
 // BEWARE: the actions below need to stay aligned with the corresponding enum to properly support json parsing
 #define EP(x) [x] = #x  /* ENUM PRINT */
-static const char * actrls_action_s[ ] = { EP(ACTRLS_VOLUP),EP(ACTRLS_VOLDOWN),EP(ACTRLS_TOGGLE),EP(ACTRLS_PLAY),
+static const char * actrls_action_s[ ] = { EP(ACTRLS_POWER),EP(ACTRLS_VOLUP),EP(ACTRLS_VOLDOWN),EP(ACTRLS_TOGGLE),EP(ACTRLS_PLAY),
 									EP(ACTRLS_PAUSE),EP(ACTRLS_STOP),EP(ACTRLS_REW),EP(ACTRLS_FWD),EP(ACTRLS_PREV),EP(ACTRLS_NEXT),
 									EP(BCTRLS_UP),EP(BCTRLS_DOWN),EP(BCTRLS_LEFT),EP(BCTRLS_RIGHT), 
+									EP(BCTRLS_PS1),EP(BCTRLS_PS2),EP(BCTRLS_PS3),EP(BCTRLS_PS4),EP(BCTRLS_PS5),EP(BCTRLS_PS6),
 									EP(KNOB_LEFT),EP(KNOB_RIGHT),EP(KNOB_PUSH),
 									""} ;
 									

+ 2 - 1
components/services/audio_controls.h

@@ -11,9 +11,10 @@
 #include "buttons.h"
 
 // BEWARE: this is the index of the array of action below (change actrls_action_s as well!)
-typedef enum { 	ACTRLS_NONE = -1, ACTRLS_VOLUP, ACTRLS_VOLDOWN, ACTRLS_TOGGLE, ACTRLS_PLAY, 
+typedef enum { 	ACTRLS_NONE = -1, ACTRLS_POWER,ACTRLS_VOLUP, ACTRLS_VOLDOWN, ACTRLS_TOGGLE, ACTRLS_PLAY, 
 				ACTRLS_PAUSE, ACTRLS_STOP, ACTRLS_REW, ACTRLS_FWD, ACTRLS_PREV, ACTRLS_NEXT, 
 				BCTRLS_UP, BCTRLS_DOWN, BCTRLS_LEFT, BCTRLS_RIGHT, 
+				BCTRLS_PS1,BCTRLS_PS2,BCTRLS_PS3,BCTRLS_PS4,BCTRLS_PS5,BCTRLS_PS6,
 				KNOB_LEFT, KNOB_RIGHT, KNOB_PUSH,
 				ACTRLS_REMAP, ACTRLS_MAX 
 		} actrls_action_e;

+ 58 - 0
components/squeezelite/controls.c

@@ -97,6 +97,13 @@ static void sendIR(u16_t addr, u16_t cmd) {
 	UNLOCK_P;
 }
 
+static void lms_power(bool pressed) {
+	if (raw_mode) {
+		sendBUTN(BUTN_POWER_FRONT, pressed);
+	} else {
+		cli_send_cmd("button power");
+	}	
+}
 static void lms_volume_up(bool pressed) {
 	if (raw_mode) {
 		sendBUTN(BUTN_VOLUP_FRONT, pressed);
@@ -205,6 +212,55 @@ static void lms_right(bool pressed) {
 	}	
 }
 
+static void lms_pre1(bool pressed) {
+	if (raw_mode) {
+		sendBUTN(BUTN_PRESET_1, pressed);
+	} else {
+		cli_send_cmd("button preset_1.single");
+	}	
+}
+
+static void lms_pre2(bool pressed) {
+	if (raw_mode) {
+		sendBUTN(BUTN_PRESET_2, pressed);
+	} else {
+		cli_send_cmd("button preset_2.single");
+	}	
+}
+
+static void lms_pre3(bool pressed) {
+	if (raw_mode) {
+		sendBUTN(BUTN_PRESET_3, pressed);
+	} else {
+		cli_send_cmd("button preset_3.single");
+	}	
+}
+
+static void lms_pre4(bool pressed) {
+	if (raw_mode) {
+		sendBUTN(BUTN_PRESET_4, pressed);
+	} else {
+		cli_send_cmd("button preset_4.single");
+	}	
+}
+
+static void lms_pre5(bool pressed) {
+	if (raw_mode) {
+		sendBUTN(BUTN_PRESET_5, pressed);
+	} else {
+		cli_send_cmd("button preset_5.single");
+	}	
+}
+
+static void lms_pre6(bool pressed) {
+	if (raw_mode) {
+		sendBUTN(BUTN_PRESET_6, pressed);
+	} else {
+		cli_send_cmd("button preset_6.single");
+	}	
+}
+
+
 static void lms_knob_left(bool pressed) {
 	if (raw_mode) {
 		sendBUTN(BUTN_KNOB_LEFT, pressed);
@@ -230,6 +286,7 @@ static void lms_knob_push(bool pressed) {
 }
 
 const actrls_t LMS_controls = {
+	lms_power,
 	lms_volume_up, lms_volume_down,	// volume up, volume down
 	lms_toggle, lms_play,	// toggle, play
 	lms_pause, lms_stop,	// pause, stop
@@ -237,6 +294,7 @@ const actrls_t LMS_controls = {
 	lms_prev, lms_next,		// prev, next
 	lms_up, lms_down,
 	lms_left, lms_right, 
+	lms_pre1, lms_pre2, lms_pre3, lms_pre4, lms_pre5, lms_pre6,
 	lms_knob_left, lms_knob_right, lms_knob_push,
 };
 

+ 38 - 13
sdkconfig

@@ -13,6 +13,7 @@ CONFIG_SDK_TOOLPREFIX="xtensa-esp32-elf-"
 CONFIG_APP_COMPILE_TIME_DATE=y
 # CONFIG_APP_EXCLUDE_PROJECT_VER_VAR is not set
 # CONFIG_APP_EXCLUDE_PROJECT_NAME_VAR is not set
+CONFIG_APP_RETRIEVE_LEN_ELF_SHA=16
 # CONFIG_BOOTLOADER_LOG_LEVEL_NONE is not set
 # CONFIG_BOOTLOADER_LOG_LEVEL_ERROR is not set
 # CONFIG_BOOTLOADER_LOG_LEVEL_WARN is not set
@@ -75,14 +76,24 @@ CONFIG_LOGGING_SLIMPROTO="info"
 CONFIG_LOGGING_STREAM="info"
 CONFIG_LOGGING_DECODE="info"
 CONFIG_LOGGING_OUTPUT="info"
+CONFIG_MUTE_GPIO_LEVEL=0
+CONFIG_DAC_CONFIG=""
+CONFIG_SPDIF_CONFIG=""
+CONFIG_SPI_CONFIG=""
+CONFIG_DISPLAY_CONFIG=""
+CONFIG_DAC_CONTROLSET=""
 # CONFIG_SQUEEZEAMP is not set
 # CONFIG_A1S is not set
+# CONFIG_TWATCH2020 is not set
 CONFIG_BASIC_I2C_BT=y
 CONFIG_I2S_NUM=0
 CONFIG_I2S_BCK_IO=33
 CONFIG_I2S_WS_IO=25
 CONFIG_I2S_DO_IO=32
 CONFIG_I2S_DI_IO=-1
+CONFIG_I2C_SDA=-1
+CONFIG_I2C_SCL=-1
+CONFIG_MUTE_GPIO=-1
 CONFIG_SDIF_NUM=0
 CONFIG_SPDIF_BCK_IO=-1
 CONFIG_SPDIF_WS_IO=-1
@@ -97,9 +108,7 @@ CONFIG_BT_SINK_PIN=1234
 CONFIG_AIRPLAY_SINK=y
 CONFIG_AIRPLAY_NAME="ESP32-AirPlay"
 CONFIG_AIRPLAY_PORT="5000"
-CONFIG_DISPLAY_CONFIG=""
 CONFIG_I2C_CONFIG=""
-CONFIG_SPI_CONFIG=""
 CONFIG_SET_GPIO=""
 CONFIG_ROTARY_ENCODER=""
 CONFIG_LED_GREEN_GPIO=-1
@@ -145,6 +154,9 @@ CONFIG_BTDM_CTRL_BR_EDR_MAX_SYNC_CONN=0
 # CONFIG_BTDM_CTRL_BR_EDR_SCO_DATA_PATH_HCI is not set
 CONFIG_BTDM_CTRL_BR_EDR_SCO_DATA_PATH_PCM=y
 CONFIG_BTDM_CTRL_BR_EDR_SCO_DATA_PATH_EFF=1
+# CONFIG_BTDM_CTRL_AUTO_LATENCY_EFF is not set
+CONFIG_BTDM_CTRL_LEGACY_AUTH_VENDOR_EVT=y
+CONFIG_BTDM_CTRL_LEGACY_AUTH_VENDOR_EVT_EFF=y
 CONFIG_BTDM_CTRL_BLE_MAX_CONN_EFF=0
 CONFIG_BTDM_CTRL_BR_EDR_MAX_ACL_CONN_EFF=2
 CONFIG_BTDM_CTRL_BR_EDR_MAX_SYNC_CONN_EFF=0
@@ -196,6 +208,7 @@ CONFIG_EFUSE_CODE_SCHEME_COMPAT_3_4=y
 # CONFIG_EFUSE_CODE_SCHEME_COMPAT_REPEAT is not set
 CONFIG_EFUSE_MAX_BLK_LEN=192
 # CONFIG_ESP_TLS_SERVER is not set
+CONFIG_ESP32_ECO3_CACHE_LOCK_FIX=y
 CONFIG_ESP32_REV_MIN_0=y
 # CONFIG_ESP32_REV_MIN_1 is not set
 # CONFIG_ESP32_REV_MIN_2 is not set
@@ -219,6 +232,9 @@ CONFIG_SPIRAM_SIZE=-1
 CONFIG_SPIRAM_SPEED_80M=y
 CONFIG_SPIRAM_MEMTEST=y
 CONFIG_SPIRAM_CACHE_WORKAROUND=y
+CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_MEMW=y
+# CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_DUPLDST is not set
+# CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_NOPS is not set
 CONFIG_SPIRAM_BANKSWITCH_ENABLE=y
 CONFIG_SPIRAM_BANKSWITCH_RESERVE=8
 CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=256
@@ -234,6 +250,7 @@ CONFIG_D0WD_PSRAM_CS_IO=16
 CONFIG_D2WD_PSRAM_CLK_IO=9
 CONFIG_D2WD_PSRAM_CS_IO=10
 CONFIG_PICO_PSRAM_CS_IO=10
+# CONFIG_SPIRAM_2T_MODE is not set
 # CONFIG_ESP32_MEMMAP_TRACEMEM is not set
 # CONFIG_ESP32_MEMMAP_TRACEMEM_TWOBANKS is not set
 # CONFIG_ESP32_TRAX is not set
@@ -269,6 +286,7 @@ CONFIG_ESP32_RTC_CLK_SRC_INT_RC=y
 # CONFIG_ESP32_RTC_CLK_SRC_EXT_OSC is not set
 # CONFIG_ESP32_RTC_CLK_SRC_INT_8MD256 is not set
 CONFIG_ESP32_RTC_CLK_CAL_CYCLES=1024
+CONFIG_ESP32_RTC_XTAL_CAL_RETRY=1
 CONFIG_ESP32_DEEP_SLEEP_WAKEUP_DELAY=2000
 CONFIG_ESP32_XTAL_FREQ_40=y
 # CONFIG_ESP32_XTAL_FREQ_26 is not set
@@ -317,10 +335,6 @@ CONFIG_HTTPD_PURGE_BUF_LEN=32
 CONFIG_OTA_ALLOW_HTTP=y
 # CONFIG_ESP_HTTPS_SERVER_ENABLE is not set
 CONFIG_ESP32_WIFI_SW_COEXIST_ENABLE=y
-# CONFIG_ESP32_WIFI_SW_COEXIST_PREFERENCE_WIFI is not set
-# CONFIG_ESP32_WIFI_SW_COEXIST_PREFERENCE_BT is not set
-CONFIG_ESP32_WIFI_SW_COEXIST_PREFERENCE_BALANCE=y
-CONFIG_ESP32_WIFI_SW_COEXIST_PREFERENCE_VALUE=2
 CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=12
 CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=40
 CONFIG_ESP32_WIFI_STATIC_TX_BUFFER=y
@@ -337,11 +351,11 @@ CONFIG_ESP32_WIFI_MGMT_SBUF_NUM=32
 # CONFIG_ESP32_WIFI_DEBUG_LOG_ENABLE is not set
 # CONFIG_ESP32_WIFI_IRAM_OPT is not set
 # CONFIG_ESP32_WIFI_RX_IRAM_OPT is not set
+CONFIG_ESP32_WIFI_ENABLE_WPA3_SAE=y
 CONFIG_ESP32_PHY_CALIBRATION_AND_DATA_STORAGE=y
 # CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION is not set
 CONFIG_ESP32_PHY_MAX_WIFI_TX_POWER=20
 CONFIG_ESP32_PHY_MAX_TX_POWER=20
-# CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH is not set
 CONFIG_ESP32_ENABLE_COREDUMP_TO_UART=y
 # CONFIG_ESP32_ENABLE_COREDUMP_TO_NONE is not set
 CONFIG_ESP32_ENABLE_COREDUMP=y
@@ -446,11 +460,14 @@ CONFIG_LWIP_LOCAL_HOSTNAME="squeezelite-esp32"
 CONFIG_LWIP_TIMERS_ONDEMAND=y
 CONFIG_LWIP_MAX_SOCKETS=16
 # CONFIG_LWIP_USE_ONLY_LWIP_SELECT is not set
+# CONFIG_LWIP_SO_LINGER is not set
 CONFIG_LWIP_SO_REUSE=y
 CONFIG_LWIP_SO_REUSE_RXTOALL=y
 # CONFIG_LWIP_SO_RCVBUF is not set
-# CONFIG_LWIP_IP_FRAG is not set
-# CONFIG_LWIP_IP_REASSEMBLY is not set
+CONFIG_LWIP_IP4_FRAG=y
+CONFIG_LWIP_IP6_FRAG=y
+# CONFIG_LWIP_IP4_REASSEMBLY is not set
+# CONFIG_LWIP_IP6_REASSEMBLY is not set
 # CONFIG_LWIP_STATS is not set
 # CONFIG_LWIP_ETHARP_TRUST_IP_MAC is not set
 CONFIG_LWIP_ESP_GRATUITOUS_ARP=y
@@ -461,8 +478,10 @@ CONFIG_LWIP_DHCP_RESTORE_LAST_IP=y
 CONFIG_LWIP_DHCPS_LEASE_UNIT=60
 CONFIG_LWIP_DHCPS_MAX_STATION_NUM=8
 # CONFIG_LWIP_AUTOIP is not set
+# CONFIG_LWIP_IPV6_AUTOCONFIG is not set
 CONFIG_LWIP_NETIF_LOOPBACK=y
 CONFIG_LWIP_LOOPBACK_MAX_PBUFS=8
+CONFIG_LWIP_TCP_ISN_HOOK=y
 CONFIG_LWIP_MAX_ACTIVE_TCP=16
 CONFIG_LWIP_MAX_LISTENING_TCP=16
 CONFIG_LWIP_TCP_MAXRTX=12
@@ -478,6 +497,7 @@ CONFIG_LWIP_TCP_OVERSIZE_MSS=y
 # CONFIG_LWIP_TCP_OVERSIZE_QUARTER_MSS is not set
 # CONFIG_LWIP_TCP_OVERSIZE_DISABLE is not set
 # CONFIG_LWIP_WND_SCALE is not set
+CONFIG_LWIP_TCP_RTO_TIME=3000
 CONFIG_LWIP_MAX_UDP_PCBS=16
 CONFIG_LWIP_UDP_RECVMBOX_SIZE=32
 CONFIG_LWIP_TCPIP_TASK_STACK_SIZE=3072
@@ -486,6 +506,8 @@ CONFIG_LWIP_TCPIP_TASK_AFFINITY_NO_AFFINITY=y
 # CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU1 is not set
 CONFIG_LWIP_TCPIP_TASK_AFFINITY=0x7FFFFFFF
 # CONFIG_LWIP_PPP_SUPPORT is not set
+CONFIG_LWIP_IPV6_MEMP_NUM_ND6_QUEUE=3
+CONFIG_LWIP_IPV6_ND6_NUM_NEIGHBORS=5
 # CONFIG_LWIP_MULTICAST_PING is not set
 # CONFIG_LWIP_BROADCAST_PING is not set
 CONFIG_LWIP_MAX_RAW_PCBS=16
@@ -593,6 +615,10 @@ CONFIG_SPI_FLASH_DANGEROUS_WRITE_ABORTS=y
 # CONFIG_SPI_FLASH_DANGEROUS_WRITE_FAILS is not set
 # CONFIG_SPI_FLASH_DANGEROUS_WRITE_ALLOWED is not set
 # CONFIG_SPI_FLASH_USE_LEGACY_IMPL is not set
+# CONFIG_SPI_FLASH_BYPASS_BLOCK_ERASE is not set
+CONFIG_SPI_FLASH_YIELD_DURING_ERASE=y
+CONFIG_SPI_FLASH_ERASE_YIELD_DURATION_MS=20
+CONFIG_SPI_FLASH_ERASE_YIELD_TICKS=1
 CONFIG_SPI_FLASH_SUPPORT_ISSI_CHIP=y
 CONFIG_SPI_FLASH_SUPPORT_GD_CHIP=y
 CONFIG_SPIFFS_MAX_PARTITIONS=3
@@ -633,7 +659,9 @@ CONFIG_WL_SECTOR_SIZE=512
 CONFIG_WL_SECTOR_MODE_SAFE=y
 CONFIG_WL_SECTOR_MODE=1
 CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16
+CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30
 CONFIG_WPA_MBEDTLS_CRYPTO=y
+# CONFIG_WPA_WPS_WARS is not set
 # CONFIG_DSP_ANSI is not set
 CONFIG_DSP_OPTIMIZED=y
 CONFIG_DSP_OPTIMIZATION=1
@@ -698,6 +726,7 @@ CONFIG_BTDM_CONTROLLER_HCI_MODE_VHCI=y
 # CONFIG_BTDM_CONTROLLER_HCI_MODE_UART_H4 is not set
 CONFIG_BTDM_CONTROLLER_MODEM_SLEEP=y
 CONFIG_BLUEDROID_ENABLED=y
+# CONFIG_NIMBLE_ENABLED is not set
 CONFIG_BTC_TASK_STACK_SIZE=3072
 CONFIG_BLUEDROID_PINNED_TO_CORE_0=y
 # CONFIG_BLUEDROID_PINNED_TO_CORE_1 is not set
@@ -760,10 +789,6 @@ CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU1=y
 CONFIG_POST_EVENTS_FROM_ISR=y
 CONFIG_POST_EVENTS_FROM_IRAM_ISR=y
 CONFIG_SW_COEXIST_ENABLE=y
-# CONFIG_SW_COEXIST_PREFERENCE_WIFI is not set
-# CONFIG_SW_COEXIST_PREFERENCE_BT is not set
-CONFIG_SW_COEXIST_PREFERENCE_BALANCE=y
-CONFIG_SW_COEXIST_PREFERENCE_VALUE=2
 CONFIG_MB_MASTER_TIMEOUT_MS_RESPOND=150
 CONFIG_MB_MASTER_DELAY_MS_CONVERT=200
 CONFIG_MB_QUEUE_LENGTH=20