Browse Source

Fixed RX AFSK + TX. Still issues.

curiousmuch 4 years ago
parent
commit
c0977ee8ed
5 changed files with 124 additions and 952 deletions
  1. 2 2
      main/board.c
  2. 8 15
      main/cc1200.c
  3. 4 3
      main/cc1200_protocol.h
  4. 110 60
      main/main.c
  5. 0 872
      sdkconfig\\

+ 2 - 2
main/board.c

@@ -12,12 +12,12 @@
 #include "board.h"
 
 // Debugging IO Functions
-void enable_debug_IO(uint32_t io_num)
+inline void IRAM_ATTR enable_debug_IO(uint32_t io_num)
 {
 	gpio_set_level(io_num, 1);
 }
 
-void disable_debug_IO(uint32_t io_num)
+inline void IRAM_ATTR disable_debug_IO(uint32_t io_num)
 {
 	gpio_set_level(io_num, 0);
 }

+ 8 - 15
main/cc1200.c

@@ -583,35 +583,28 @@ void IRAM_ATTR cc1200_radio_APRSTXPacket(uint8_t  *f, uint16_t f_len, uint8_t tx
 	gpio_uninstall_isr_service();
 }
 
-extern SemaphoreHandle_t xRadioRXSemaphore;
+extern SemaphoreHandle_t xRadioRXISRSemaphore;
+extern TaskHandle_t xRadioRXTaskHandle;
 int8_t EXTERNAL_DATA;
 
 static void IRAM_ATTR cc1200_aprs_rx_isr(void* arg)
 {
-
 	//uint8_t data = 0;
     //cc1200_spi_read_byte(CC120X_CFM_RX_DATA_OUT, &data);
-	static BaseType_t xHigherPriorityTaskWoken = pdFALSE;
 
+    //GPIO.out_w1ts = (1 << DEBUG_0);
+
+	static BaseType_t xHigherPriorityTaskWoken = pdFALSE;
 
-	//gpio_set_intr_type(CC1120_GPIO2, GPIO_INTR_DISABLE);
+    //vTaskNotifyGiveFromISR( xRadioRXTaskHandle, &xHigherPriorityTaskWoken );
 
-	cc1200_spi_read_byte(CC120X_CFM_RX_DATA_OUT, (uint8_t *)&EXTERNAL_DATA);
-	xSemaphoreGiveFromISR(xRadioRXSemaphore, &xHigherPriorityTaskWoken);
+    xSemaphoreGiveFromISR(xRadioRXISRSemaphore, &xHigherPriorityTaskWoken);
 	if (xHigherPriorityTaskWoken == pdTRUE)
 	{
 		portYIELD_FROM_ISR( );
 	}
 
-
-
-	//toggle = toggle ^ 1;
-	//	gpio_set_level(DEBUG_0, toggle);
-	//xRingbufferSendFromISR(cfm_buf_handle, &data, sizeof(data), NULL);
-	//ets_write_char_uart(data);
-    //new_sample = 1;
-
-
+	//GPIO.out_w1tc = (1 << DEBUG_0);
 }
 
 void IRAM_ATTR cc1200_radio_start_APRSRX(void)

+ 4 - 3
main/cc1200_protocol.h

@@ -64,9 +64,10 @@ static const cc1200_reg_settings_t APRS_RX_SETTINGS[]=
   {CC120X_CHAN_BW,           0x9C},
   {CC120X_MDMCFG1, 			 0x00},	// Random guess
   {CC120X_MDMCFG0,           0x05},
-  {CC120X_SYMBOL_RATE2,      0x63}, //0x75},
-  {CC120X_SYMBOL_RATE1,      0xA9}, //0xA0},
-  {CC120X_SYMBOL_RATE0,      0x2A}, //0x7B},
+  // 6 kHz
+  {CC120X_SYMBOL_RATE2,      0x63},
+  {CC120X_SYMBOL_RATE1,      0xA9},
+  {CC120X_SYMBOL_RATE0,      0x2A},
   {CC120X_AGC_REF,           0x30},
   {CC120X_AGC_CS_THR,        0xEC},
   {CC120X_AGC_CFG1,          0x51},

+ 110 - 60
main/main.c

@@ -30,23 +30,34 @@
 
 #include "math.h"
 
+#include "driver/timer.h"
+
+
+//#include "esp_dsp.h"
+
 uint8_t APRS_TEST_PACKET[] = { 0x82, 0x98, 0x98, 0x40, 0x40, 0x40, 0xe0, 0x96, 0x84, 0x66, 0xaa, 0x96, 0xac, 0xe0, 0xae, 0x92,
 									 0x88, 0x8a, 0x62, 0x40, 0x62, 0xae, 0x92, 0x88, 0x8a, 0x64, 0x40, 0x65, 0x03, 0xf0, 0x3a, 0x4b,
 									 0x42, 0x33, 0x55, 0x4b, 0x56, 0x2d, 0x32, 0x20, 0x3a, 0x48, 0x69, 0x21, 0x20, 0x54, 0x68, 0x69, 0x73,
 									 0x20, 0x69, 0x73, 0x20, 0x61, 0x20, 0x54, 0x65, 0x73, 0x74, 0x7b, 0x31, 0xad, 0xa1 };
 
 RingbufHandle_t radio_tx_buf;
+SemaphoreHandle_t xRadioRXISRSemaphore;
 SemaphoreHandle_t xRadioRXSemaphore;
+SemaphoreHandle_t xRadioTXSemaphore;
+TaskHandle_t xRadioRXTaskHandle;
+
 //RingbufHandle_t radio_rx_buf;
 
 extern int8_t EXTERNAL_DATA;
 
-#define WINDOW_SIZE 11
+#define WINDOW_SIZE 7
 #define SAMPLEFREQUENCY 6000
 
 int window[WINDOW_SIZE];
+int lpf_window[WINDOW_SIZE];
 
-double goertzelFilter(int samples[], double freq, int N) {
+double goertzelFilter(int samples[], double freq, int N)
+{
     double s_prev = 0.0;
     double s_prev2 = 0.0;
     double coeff,normalizedfreq,power,s;
@@ -97,98 +108,137 @@ int window_get_size(void)
 	return WINDOW_SIZE;
 }
 
-void Radio_Task(void *pvParameters)
+// The TX Task should have the highest
+void TX_Task(void *pvParameters)
 {
 	size_t p_size;
 
-	// Setup Radio
-	xRadioRXSemaphore = xSemaphoreCreateBinary();
-	cc1200_radio_init(APRS_RX_SETTINGS, sizeof(APRS_RX_SETTINGS)/sizeof(cc1200_reg_settings_t));
-	cc1200_radio_frequency(144390000-6000);
-
-	cc1200_radio_start_APRSRX();
-
-	uint8_t toggle=0;
-	uint8_t count = 0;
-
-	double E_s1, E_s2;
-
 	while(1)
 	{
-//		// setup LEDs for RX mode
-//		enable_green_led();
-//		disable_red_led();
 
-		//cc1200_radio_start_APRSRX();
-		if (xSemaphoreTake(xRadioRXSemaphore, 0) == pdTRUE)
+		// block until packet is in queue
+		uint8_t *p = (uint8_t *)xRingbufferReceive(radio_tx_buf, &p_size, portMAX_DELAY);
+
+		// send packet
+		if (p != NULL)
 		{
-			//gpio_set_level(DEBUG_0, 1);
-			gpio_intr_disable(CC1120_GPIO2);
-			toggle = toggle ^ 1;
-			gpio_set_level(DEBUG_0, toggle);
+			// disable RX mode
+			cc1200_radio_stop_APRSRX();
 
+			// setup LEDs for TX mode
+			enable_red_led();
+			disable_green_led();
 
-			//data = cc1200_radio_read_CFM();
-			window_add((int) EXTERNAL_DATA);
+			cc1200_radio_APRSTXPacket(p, p_size, 2, 0);
 
-			E_s1 = goertzelFilter(window, 1200, WINDOW_SIZE);
-			E_s2 = goertzelFilter(window, 2200, WINDOW_SIZE);
-			//printf("%f\n", (E_s1 - E_s2));
+			vRingbufferReturnItem(radio_tx_buf, (void *)p);
 
-			if (E_s1 > E_s2 )
-			{
+			// setup LEDs for RX mode
+			disable_red_led();
+			enable_green_led();
 
-				enable_green_led();
-				disable_red_led();
-			}
-			else
-			{
-				enable_red_led();
-				disable_green_led();
-			}
+			cc1200_radio_start_APRSRX();
+		}
+	}
+}
 
-			//gpio_set_level(DEBUG_0, 0);
 
-		}
+void RX_Task(void *pvParameters)
+{
+	// debugging variables
+	uint8_t toggle = 0;
+	uint8_t count = 0;
 
-		//esp_task_wdt_reset();
+	// algorithm variables
+	double E_s1, E_s2, result;
+	E_s1 = 0; E_s2 = 0;
+	int f_output = 0;
 
+	// Sampling Semaphore
+	xRadioRXISRSemaphore = xSemaphoreCreateBinary();
 
-		// Transmit Queued Packet
-		uint8_t *p = (uint8_t *)xRingbufferReceive(radio_tx_buf, &p_size, 0);	// TODO: Modify to something which will check CC1200 status
-		if (p != NULL)
-		{
-			// disable RX mode
-			cc1200_radio_stop_APRSRX();
+	// get task handle for sampling isr
+	xRadioRXTaskHandle = xTaskGetCurrentTaskHandle();
 
-//			// setup LEDs for TX mode
-//			enable_red_led();
-//			disable_green_led();
+	// setup LEDs for RX mode
+	enable_green_led();
+	disable_red_led();
 
+	cc1200_radio_start_APRSRX();
 
-			cc1200_radio_APRSTXPacket(p, p_size, 2, 0);
+	uint32_t ulNotificationValue;
 
-			vRingbufferReturnItem(radio_tx_buf, (void *)p);
+	while(1)
+	{
 
-			cc1200_radio_start_APRSRX();
+		//ulNotificationValue = ulTaskNotifyTake(pdTRUE, 0);
+		if( xSemaphoreTake(xRadioRXISRSemaphore, portMAX_DELAY) == pdTRUE)
+		{
+
+			//enable_debug_IO(DEBUG_0);
+			EXTERNAL_DATA = (int)cc1200_radio_read_CFM();
+			//disable_debug_IO(DEBUG_0);
+			//enable_debug_IO(DEBUG_0);
+			//f_output += (50000 * (((int)EXTERNAL_DATA) - f_output)) / 100000;
+			window_add((int) EXTERNAL_DATA);
+			E_s1 = goertzelFilter(window, 1200, WINDOW_SIZE);
+			E_s2 = goertzelFilter(window, 2200, WINDOW_SIZE);
+			if (E_s1 > E_s2)
+			{
+				enable_debug_IO(DEBUG_0);
+			}
+			else
+			{
+				disable_debug_IO(DEBUG_0);
+			}
+			ulNotificationValue = 0;
+			//disable_debug_IO(DEBUG_0);
 		}
-    }
+	}
 }
+// This task might want to run on CPU0 instead of CPU1. This tasks purpose is to decide which radio should be running and how long
+// we should wait before transmitting if data is received. It's also responsible for LBT, etc. This task should be lower priority than BLE etc.
 
-//void UART_Task(void *pvParameters)
+//void Radio_Controller_Task(void *pvParameters)
 //{
-//	printf("RSSI: %x", data);
+//	size_t p_size;
+//
+//	cc1200_radio_init(APRS_RX_SETTINGS, sizeof(APRS_RX_SETTINGS)/sizeof(cc1200_reg_settings_t));
+//	cc1200_radio_frequency(144390000-6000);
+//
+//	while(1)
+//	{
+//		// check for a pending APRS packet in the buffer queue
+//		uint8_t *p = (uint8_t *)xRingbufferReceive(radio_tx_buf, &p_size, 0);	// TODO: Modify to something which will check CC1200 status
+//		if (p != NULL)
+//		{
+//			// TODO:schedule packet based on TNC settings
+//			xSemaphoreGive(xRadioTXSemaphore);
+//		}
+//		else
+//		{
+//			xSemaphoreGive(xRadioRXSemaphore);
+//		}
+//	}
 //}
 
-
-
 void radio_init()
 {
 	// Setup Task Communications
 	radio_tx_buf = xRingbufferCreate(1028, RINGBUF_TYPE_NOSPLIT);
+	xRadioRXSemaphore = xSemaphoreCreateBinary();
+	xRadioTXSemaphore = xSemaphoreCreateBinary();
+
+	// Initialize Radio
+	cc1200_radio_init(APRS_RX_SETTINGS, sizeof(APRS_RX_SETTINGS)/sizeof(cc1200_reg_settings_t));
+	cc1200_radio_frequency(144390000-6000);
 
 	// Create Tasks
-	xTaskCreatePinnedToCore(Radio_Task, "Radio_Task", 1024*4, 0, 1, NULL, 1);
+//	xTaskCreatePinnedToCore(Radio_Controller_Task, "Radio_Controller", 1024*4, 0, 10, NULL, 0);
+	xTaskCreatePinnedToCore(RX_Task, "RX Task", 1024*4, 0, 1, NULL, 1);
+	xTaskCreatePinnedToCore(TX_Task, "TX Task", 1024*4, 0, 2, NULL, 1);
+
+
 //	xTaskCreatePinnedToCore(UART_Task, "UART Task", 1024*4, 0, 5, NULL, 0);
 }
 

+ 0 - 872
sdkconfig\\

@@ -1,872 +0,0 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# Espressif IoT Development Framework Configuration
-#
-
-#
-# SDK tool configuration
-#
-CONFIG_TOOLPREFIX="xtensa-esp32-elf-"
-CONFIG_PYTHON="python2"
-CONFIG_MAKE_WARN_UNDEFINED_VARIABLES=y
-
-#
-# Bootloader config
-#
-CONFIG_LOG_BOOTLOADER_LEVEL_NONE=
-CONFIG_LOG_BOOTLOADER_LEVEL_ERROR=
-CONFIG_LOG_BOOTLOADER_LEVEL_WARN=
-CONFIG_LOG_BOOTLOADER_LEVEL_INFO=y
-CONFIG_LOG_BOOTLOADER_LEVEL_DEBUG=
-CONFIG_LOG_BOOTLOADER_LEVEL_VERBOSE=
-CONFIG_LOG_BOOTLOADER_LEVEL=3
-CONFIG_BOOTLOADER_VDDSDIO_BOOST_1_8V=
-CONFIG_BOOTLOADER_VDDSDIO_BOOST_1_9V=y
-CONFIG_BOOTLOADER_FACTORY_RESET=
-CONFIG_BOOTLOADER_APP_TEST=
-CONFIG_BOOTLOADER_WDT_ENABLE=y
-CONFIG_BOOTLOADER_WDT_DISABLE_IN_USER_CODE=
-CONFIG_BOOTLOADER_WDT_TIME_MS=9000
-
-#
-# Security features
-#
-CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT=
-CONFIG_SECURE_BOOT_ENABLED=
-CONFIG_FLASH_ENCRYPTION_ENABLED=
-
-#
-# Serial flasher config
-#
-CONFIG_ESPTOOLPY_PORT="/dev/ttyUSB1"
-CONFIG_ESPTOOLPY_BAUD_115200B=y
-CONFIG_ESPTOOLPY_BAUD_230400B=
-CONFIG_ESPTOOLPY_BAUD_921600B=
-CONFIG_ESPTOOLPY_BAUD_2MB=
-CONFIG_ESPTOOLPY_BAUD_OTHER=
-CONFIG_ESPTOOLPY_BAUD_OTHER_VAL=115200
-CONFIG_ESPTOOLPY_BAUD=115200
-CONFIG_ESPTOOLPY_COMPRESSED=y
-CONFIG_FLASHMODE_QIO=
-CONFIG_FLASHMODE_QOUT=
-CONFIG_FLASHMODE_DIO=y
-CONFIG_FLASHMODE_DOUT=
-CONFIG_ESPTOOLPY_FLASHMODE="dio"
-CONFIG_ESPTOOLPY_FLASHFREQ_80M=
-CONFIG_ESPTOOLPY_FLASHFREQ_40M=y
-CONFIG_ESPTOOLPY_FLASHFREQ_26M=
-CONFIG_ESPTOOLPY_FLASHFREQ_20M=
-CONFIG_ESPTOOLPY_FLASHFREQ="40m"
-CONFIG_ESPTOOLPY_FLASHSIZE_1MB=
-CONFIG_ESPTOOLPY_FLASHSIZE_2MB=
-CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y
-CONFIG_ESPTOOLPY_FLASHSIZE_8MB=
-CONFIG_ESPTOOLPY_FLASHSIZE_16MB=
-CONFIG_ESPTOOLPY_FLASHSIZE="4MB"
-CONFIG_ESPTOOLPY_FLASHSIZE_DETECT=y
-CONFIG_ESPTOOLPY_BEFORE_RESET=y
-CONFIG_ESPTOOLPY_BEFORE_NORESET=
-CONFIG_ESPTOOLPY_BEFORE="default_reset"
-CONFIG_ESPTOOLPY_AFTER_RESET=y
-CONFIG_ESPTOOLPY_AFTER_NORESET=
-CONFIG_ESPTOOLPY_AFTER="hard_reset"
-CONFIG_MONITOR_BAUD_9600B=
-CONFIG_MONITOR_BAUD_57600B=
-CONFIG_MONITOR_BAUD_115200B=y
-CONFIG_MONITOR_BAUD_230400B=
-CONFIG_MONITOR_BAUD_921600B=
-CONFIG_MONITOR_BAUD_2MB=
-CONFIG_MONITOR_BAUD_OTHER=
-CONFIG_MONITOR_BAUD_OTHER_VAL=115200
-CONFIG_MONITOR_BAUD=115200
-
-#
-# Example Configuration
-#
-CONFIG_BLINK_GPIO=5
-
-#
-# Partition Table
-#
-CONFIG_PARTITION_TABLE_SINGLE_APP=y
-CONFIG_PARTITION_TABLE_TWO_OTA=
-CONFIG_PARTITION_TABLE_CUSTOM=
-CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv"
-CONFIG_PARTITION_TABLE_FILENAME="partitions_singleapp.csv"
-CONFIG_PARTITION_TABLE_OFFSET=0x8000
-CONFIG_PARTITION_TABLE_MD5=y
-
-#
-# Compiler options
-#
-CONFIG_OPTIMIZATION_LEVEL_DEBUG=y
-CONFIG_OPTIMIZATION_LEVEL_RELEASE=
-CONFIG_OPTIMIZATION_ASSERTIONS_ENABLED=y
-CONFIG_OPTIMIZATION_ASSERTIONS_SILENT=
-CONFIG_OPTIMIZATION_ASSERTIONS_DISABLED=
-CONFIG_CXX_EXCEPTIONS=
-CONFIG_STACK_CHECK_NONE=y
-CONFIG_STACK_CHECK_NORM=
-CONFIG_STACK_CHECK_STRONG=
-CONFIG_STACK_CHECK_ALL=
-CONFIG_STACK_CHECK=
-CONFIG_WARN_WRITE_STRINGS=
-CONFIG_DISABLE_GCC8_WARNINGS=
-
-#
-# Component config
-#
-
-#
-# Application Level Tracing
-#
-CONFIG_ESP32_APPTRACE_DEST_TRAX=
-CONFIG_ESP32_APPTRACE_DEST_NONE=y
-CONFIG_ESP32_APPTRACE_ENABLE=
-CONFIG_ESP32_APPTRACE_LOCK_ENABLE=y
-CONFIG_AWS_IOT_SDK=
-
-#
-# Bluetooth
-#
-CONFIG_BT_ENABLED=y
-
-#
-# Bluetooth controller
-#
-CONFIG_BTDM_CONTROLLER_MODE_BLE_ONLY=
-CONFIG_BTDM_CONTROLLER_MODE_BR_EDR_ONLY=y
-CONFIG_BTDM_CONTROLLER_MODE_BTDM=
-CONFIG_BTDM_CONTROLLER_BR_EDR_MAX_ACL_CONN=2
-CONFIG_BTDM_CONTROLLER_BR_EDR_MAX_SYNC_CONN=0
-CONFIG_BTDM_CONTROLLER_BLE_MAX_CONN_EFF=0
-CONFIG_BTDM_CONTROLLER_BR_EDR_MAX_ACL_CONN_EFF=2
-CONFIG_BTDM_CONTROLLER_BR_EDR_MAX_SYNC_CONN_EFF=0
-CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE_0=y
-CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE_1=
-CONFIG_BTDM_CONTROLLER_PINNED_TO_CORE=0
-CONFIG_BTDM_CONTROLLER_HCI_MODE_VHCI=y
-CONFIG_BTDM_CONTROLLER_HCI_MODE_UART_H4=
-
-#
-# MODEM SLEEP Options
-#
-CONFIG_BTDM_CONTROLLER_MODEM_SLEEP=y
-CONFIG_BTDM_MODEM_SLEEP_MODE_ORIG=y
-CONFIG_BTDM_MODEM_SLEEP_MODE_EVED=
-CONFIG_BTDM_LPCLK_SEL_MAIN_XTAL=y
-CONFIG_BLUEDROID_ENABLED=y
-CONFIG_BLUEDROID_PINNED_TO_CORE_0=y
-CONFIG_BLUEDROID_PINNED_TO_CORE_1=
-CONFIG_BLUEDROID_PINNED_TO_CORE=0
-CONFIG_BTC_TASK_STACK_SIZE=3072
-CONFIG_BLUEDROID_MEM_DEBUG=
-CONFIG_CLASSIC_BT_ENABLED=y
-CONFIG_A2DP_ENABLE=
-CONFIG_BT_SPP_ENABLED=y
-CONFIG_HFP_ENABLE=
-CONFIG_BT_STACK_NO_LOG=
-
-#
-# BT DEBUG LOG LEVEL
-#
-CONFIG_HCI_TRACE_LEVEL_NONE=
-CONFIG_HCI_TRACE_LEVEL_ERROR=
-CONFIG_HCI_TRACE_LEVEL_WARNING=y
-CONFIG_HCI_TRACE_LEVEL_API=
-CONFIG_HCI_TRACE_LEVEL_EVENT=
-CONFIG_HCI_TRACE_LEVEL_DEBUG=
-CONFIG_HCI_TRACE_LEVEL_VERBOSE=
-CONFIG_HCI_INITIAL_TRACE_LEVEL=2
-CONFIG_BTM_TRACE_LEVEL_NONE=
-CONFIG_BTM_TRACE_LEVEL_ERROR=
-CONFIG_BTM_TRACE_LEVEL_WARNING=y
-CONFIG_BTM_TRACE_LEVEL_API=
-CONFIG_BTM_TRACE_LEVEL_EVENT=
-CONFIG_BTM_TRACE_LEVEL_DEBUG=
-CONFIG_BTM_TRACE_LEVEL_VERBOSE=
-CONFIG_BTM_INITIAL_TRACE_LEVEL=2
-CONFIG_L2CAP_TRACE_LEVEL_NONE=
-CONFIG_L2CAP_TRACE_LEVEL_ERROR=
-CONFIG_L2CAP_TRACE_LEVEL_WARNING=y
-CONFIG_L2CAP_TRACE_LEVEL_API=
-CONFIG_L2CAP_TRACE_LEVEL_EVENT=
-CONFIG_L2CAP_TRACE_LEVEL_DEBUG=
-CONFIG_L2CAP_TRACE_LEVEL_VERBOSE=
-CONFIG_L2CAP_INITIAL_TRACE_LEVEL=2
-CONFIG_RFCOMM_TRACE_LEVEL_NONE=
-CONFIG_RFCOMM_TRACE_LEVEL_ERROR=
-CONFIG_RFCOMM_TRACE_LEVEL_WARNING=y
-CONFIG_RFCOMM_TRACE_LEVEL_API=
-CONFIG_RFCOMM_TRACE_LEVEL_EVENT=
-CONFIG_RFCOMM_TRACE_LEVEL_DEBUG=
-CONFIG_RFCOMM_TRACE_LEVEL_VERBOSE=
-CONFIG_RFCOMM_INITIAL_TRACE_LEVEL=2
-CONFIG_SDP_TRACE_LEVEL_NONE=
-CONFIG_SDP_TRACE_LEVEL_ERROR=
-CONFIG_SDP_TRACE_LEVEL_WARNING=y
-CONFIG_SDP_TRACE_LEVEL_API=
-CONFIG_SDP_TRACE_LEVEL_EVENT=
-CONFIG_SDP_TRACE_LEVEL_DEBUG=
-CONFIG_SDP_TRACE_LEVEL_VERBOSE=
-CONFIG_SDP_INITIAL_TRACE_LEVEL=2
-CONFIG_GAP_TRACE_LEVEL_NONE=
-CONFIG_GAP_TRACE_LEVEL_ERROR=
-CONFIG_GAP_TRACE_LEVEL_WARNING=y
-CONFIG_GAP_TRACE_LEVEL_API=
-CONFIG_GAP_TRACE_LEVEL_EVENT=
-CONFIG_GAP_TRACE_LEVEL_DEBUG=
-CONFIG_GAP_TRACE_LEVEL_VERBOSE=
-CONFIG_GAP_INITIAL_TRACE_LEVEL=2
-CONFIG_BNEP_TRACE_LEVEL_NONE=
-CONFIG_BNEP_TRACE_LEVEL_ERROR=
-CONFIG_BNEP_TRACE_LEVEL_WARNING=y
-CONFIG_BNEP_TRACE_LEVEL_API=
-CONFIG_BNEP_TRACE_LEVEL_EVENT=
-CONFIG_BNEP_TRACE_LEVEL_DEBUG=
-CONFIG_BNEP_TRACE_LEVEL_VERBOSE=
-CONFIG_BNEP_INITIAL_TRACE_LEVEL=2
-CONFIG_PAN_TRACE_LEVEL_NONE=
-CONFIG_PAN_TRACE_LEVEL_ERROR=
-CONFIG_PAN_TRACE_LEVEL_WARNING=y
-CONFIG_PAN_TRACE_LEVEL_API=
-CONFIG_PAN_TRACE_LEVEL_EVENT=
-CONFIG_PAN_TRACE_LEVEL_DEBUG=
-CONFIG_PAN_TRACE_LEVEL_VERBOSE=
-CONFIG_PAN_INITIAL_TRACE_LEVEL=2
-CONFIG_A2D_TRACE_LEVEL_NONE=
-CONFIG_A2D_TRACE_LEVEL_ERROR=
-CONFIG_A2D_TRACE_LEVEL_WARNING=y
-CONFIG_A2D_TRACE_LEVEL_API=
-CONFIG_A2D_TRACE_LEVEL_EVENT=
-CONFIG_A2D_TRACE_LEVEL_DEBUG=
-CONFIG_A2D_TRACE_LEVEL_VERBOSE=
-CONFIG_A2D_INITIAL_TRACE_LEVEL=2
-CONFIG_AVDT_TRACE_LEVEL_NONE=
-CONFIG_AVDT_TRACE_LEVEL_ERROR=
-CONFIG_AVDT_TRACE_LEVEL_WARNING=y
-CONFIG_AVDT_TRACE_LEVEL_API=
-CONFIG_AVDT_TRACE_LEVEL_EVENT=
-CONFIG_AVDT_TRACE_LEVEL_DEBUG=
-CONFIG_AVDT_TRACE_LEVEL_VERBOSE=
-CONFIG_AVDT_INITIAL_TRACE_LEVEL=2
-CONFIG_AVCT_TRACE_LEVEL_NONE=
-CONFIG_AVCT_TRACE_LEVEL_ERROR=
-CONFIG_AVCT_TRACE_LEVEL_WARNING=y
-CONFIG_AVCT_TRACE_LEVEL_API=
-CONFIG_AVCT_TRACE_LEVEL_EVENT=
-CONFIG_AVCT_TRACE_LEVEL_DEBUG=
-CONFIG_AVCT_TRACE_LEVEL_VERBOSE=
-CONFIG_AVCT_INITIAL_TRACE_LEVEL=2
-CONFIG_AVRC_TRACE_LEVEL_NONE=
-CONFIG_AVRC_TRACE_LEVEL_ERROR=
-CONFIG_AVRC_TRACE_LEVEL_WARNING=y
-CONFIG_AVRC_TRACE_LEVEL_API=
-CONFIG_AVRC_TRACE_LEVEL_EVENT=
-CONFIG_AVRC_TRACE_LEVEL_DEBUG=
-CONFIG_AVRC_TRACE_LEVEL_VERBOSE=
-CONFIG_AVRC_INITIAL_TRACE_LEVEL=2
-CONFIG_MCA_TRACE_LEVEL_NONE=
-CONFIG_MCA_TRACE_LEVEL_ERROR=
-CONFIG_MCA_TRACE_LEVEL_WARNING=y
-CONFIG_MCA_TRACE_LEVEL_API=
-CONFIG_MCA_TRACE_LEVEL_EVENT=
-CONFIG_MCA_TRACE_LEVEL_DEBUG=
-CONFIG_MCA_TRACE_LEVEL_VERBOSE=
-CONFIG_MCA_INITIAL_TRACE_LEVEL=2
-CONFIG_HID_TRACE_LEVEL_NONE=
-CONFIG_HID_TRACE_LEVEL_ERROR=
-CONFIG_HID_TRACE_LEVEL_WARNING=y
-CONFIG_HID_TRACE_LEVEL_API=
-CONFIG_HID_TRACE_LEVEL_EVENT=
-CONFIG_HID_TRACE_LEVEL_DEBUG=
-CONFIG_HID_TRACE_LEVEL_VERBOSE=
-CONFIG_HID_INITIAL_TRACE_LEVEL=2
-CONFIG_APPL_TRACE_LEVEL_NONE=
-CONFIG_APPL_TRACE_LEVEL_ERROR=
-CONFIG_APPL_TRACE_LEVEL_WARNING=y
-CONFIG_APPL_TRACE_LEVEL_API=
-CONFIG_APPL_TRACE_LEVEL_EVENT=
-CONFIG_APPL_TRACE_LEVEL_DEBUG=
-CONFIG_APPL_TRACE_LEVEL_VERBOSE=
-CONFIG_APPL_INITIAL_TRACE_LEVEL=2
-CONFIG_GATT_TRACE_LEVEL_NONE=
-CONFIG_GATT_TRACE_LEVEL_ERROR=
-CONFIG_GATT_TRACE_LEVEL_WARNING=y
-CONFIG_GATT_TRACE_LEVEL_API=
-CONFIG_GATT_TRACE_LEVEL_EVENT=
-CONFIG_GATT_TRACE_LEVEL_DEBUG=
-CONFIG_GATT_TRACE_LEVEL_VERBOSE=
-CONFIG_GATT_INITIAL_TRACE_LEVEL=2
-CONFIG_SMP_TRACE_LEVEL_NONE=
-CONFIG_SMP_TRACE_LEVEL_ERROR=
-CONFIG_SMP_TRACE_LEVEL_WARNING=y
-CONFIG_SMP_TRACE_LEVEL_API=
-CONFIG_SMP_TRACE_LEVEL_EVENT=
-CONFIG_SMP_TRACE_LEVEL_DEBUG=
-CONFIG_SMP_TRACE_LEVEL_VERBOSE=
-CONFIG_SMP_INITIAL_TRACE_LEVEL=2
-CONFIG_BTIF_TRACE_LEVEL_NONE=
-CONFIG_BTIF_TRACE_LEVEL_ERROR=
-CONFIG_BTIF_TRACE_LEVEL_WARNING=y
-CONFIG_BTIF_TRACE_LEVEL_API=
-CONFIG_BTIF_TRACE_LEVEL_EVENT=
-CONFIG_BTIF_TRACE_LEVEL_DEBUG=
-CONFIG_BTIF_TRACE_LEVEL_VERBOSE=
-CONFIG_BTIF_INITIAL_TRACE_LEVEL=2
-CONFIG_BTC_TRACE_LEVEL_NONE=
-CONFIG_BTC_TRACE_LEVEL_ERROR=
-CONFIG_BTC_TRACE_LEVEL_WARNING=y
-CONFIG_BTC_TRACE_LEVEL_API=
-CONFIG_BTC_TRACE_LEVEL_EVENT=
-CONFIG_BTC_TRACE_LEVEL_DEBUG=
-CONFIG_BTC_TRACE_LEVEL_VERBOSE=
-CONFIG_BTC_INITIAL_TRACE_LEVEL=2
-CONFIG_OSI_TRACE_LEVEL_NONE=
-CONFIG_OSI_TRACE_LEVEL_ERROR=
-CONFIG_OSI_TRACE_LEVEL_WARNING=y
-CONFIG_OSI_TRACE_LEVEL_API=
-CONFIG_OSI_TRACE_LEVEL_EVENT=
-CONFIG_OSI_TRACE_LEVEL_DEBUG=
-CONFIG_OSI_TRACE_LEVEL_VERBOSE=
-CONFIG_OSI_INITIAL_TRACE_LEVEL=2
-CONFIG_BLUFI_TRACE_LEVEL_NONE=
-CONFIG_BLUFI_TRACE_LEVEL_ERROR=
-CONFIG_BLUFI_TRACE_LEVEL_WARNING=y
-CONFIG_BLUFI_TRACE_LEVEL_API=
-CONFIG_BLUFI_TRACE_LEVEL_EVENT=
-CONFIG_BLUFI_TRACE_LEVEL_DEBUG=
-CONFIG_BLUFI_TRACE_LEVEL_VERBOSE=
-CONFIG_BLUFI_INITIAL_TRACE_LEVEL=2
-CONFIG_BT_ACL_CONNECTIONS=4
-CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST=
-CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY=
-CONFIG_BLE_HOST_QUEUE_CONGESTION_CHECK=
-CONFIG_SMP_ENABLE=y
-CONFIG_BLE_ESTABLISH_LINK_CONNECTION_TIMEOUT=60
-CONFIG_BT_RESERVE_DRAM=0xdb5c
-
-#
-# Driver configurations
-#
-
-#
-# ADC configuration
-#
-CONFIG_ADC_FORCE_XPD_FSM=
-CONFIG_ADC2_DISABLE_DAC=y
-
-#
-# SPI configuration
-#
-CONFIG_SPI_MASTER_IN_IRAM=y
-CONFIG_SPI_MASTER_ISR_IN_IRAM=y
-CONFIG_SPI_SLAVE_IN_IRAM=
-CONFIG_SPI_SLAVE_ISR_IN_IRAM=y
-
-#
-# ESP32-specific
-#
-CONFIG_ESP32_DEFAULT_CPU_FREQ_80=
-CONFIG_ESP32_DEFAULT_CPU_FREQ_160=y
-CONFIG_ESP32_DEFAULT_CPU_FREQ_240=
-CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ=160
-CONFIG_SPIRAM_SUPPORT=
-CONFIG_MEMMAP_TRACEMEM=
-CONFIG_MEMMAP_TRACEMEM_TWOBANKS=
-CONFIG_ESP32_TRAX=
-CONFIG_TRACEMEM_RESERVE_DRAM=0x0
-CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH=
-CONFIG_ESP32_ENABLE_COREDUMP_TO_UART=
-CONFIG_ESP32_ENABLE_COREDUMP_TO_NONE=y
-CONFIG_ESP32_ENABLE_COREDUMP=
-CONFIG_TWO_UNIVERSAL_MAC_ADDRESS=
-CONFIG_FOUR_UNIVERSAL_MAC_ADDRESS=y
-CONFIG_NUMBER_OF_UNIVERSAL_MAC_ADDRESS=4
-CONFIG_SYSTEM_EVENT_QUEUE_SIZE=32
-CONFIG_SYSTEM_EVENT_TASK_STACK_SIZE=2304
-CONFIG_MAIN_TASK_STACK_SIZE=3584
-CONFIG_IPC_TASK_STACK_SIZE=1024
-CONFIG_TIMER_TASK_STACK_SIZE=3584
-CONFIG_NEWLIB_STDOUT_LINE_ENDING_CRLF=y
-CONFIG_NEWLIB_STDOUT_LINE_ENDING_LF=
-CONFIG_NEWLIB_STDOUT_LINE_ENDING_CR=
-CONFIG_NEWLIB_STDIN_LINE_ENDING_CRLF=
-CONFIG_NEWLIB_STDIN_LINE_ENDING_LF=
-CONFIG_NEWLIB_STDIN_LINE_ENDING_CR=y
-CONFIG_NEWLIB_NANO_FORMAT=
-CONFIG_CONSOLE_UART_DEFAULT=y
-CONFIG_CONSOLE_UART_CUSTOM=
-CONFIG_CONSOLE_UART_NONE=
-CONFIG_CONSOLE_UART_NUM=0
-CONFIG_CONSOLE_UART_BAUDRATE=115200
-CONFIG_ULP_COPROC_ENABLED=
-CONFIG_ULP_COPROC_RESERVE_MEM=0
-CONFIG_ESP32_PANIC_PRINT_HALT=
-CONFIG_ESP32_PANIC_PRINT_REBOOT=y
-CONFIG_ESP32_PANIC_SILENT_REBOOT=
-CONFIG_ESP32_PANIC_GDBSTUB=
-CONFIG_ESP32_DEBUG_OCDAWARE=y
-CONFIG_ESP32_DEBUG_STUBS_ENABLE=y
-CONFIG_INT_WDT=y
-CONFIG_INT_WDT_TIMEOUT_MS=300
-CONFIG_INT_WDT_CHECK_CPU1=y
-CONFIG_TASK_WDT=y
-CONFIG_TASK_WDT_PANIC=
-CONFIG_TASK_WDT_TIMEOUT_S=5
-CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU0=y
-CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU1=y
-CONFIG_BROWNOUT_DET=y
-CONFIG_BROWNOUT_DET_LVL_SEL_0=y
-CONFIG_BROWNOUT_DET_LVL_SEL_1=
-CONFIG_BROWNOUT_DET_LVL_SEL_2=
-CONFIG_BROWNOUT_DET_LVL_SEL_3=
-CONFIG_BROWNOUT_DET_LVL_SEL_4=
-CONFIG_BROWNOUT_DET_LVL_SEL_5=
-CONFIG_BROWNOUT_DET_LVL_SEL_6=
-CONFIG_BROWNOUT_DET_LVL_SEL_7=
-CONFIG_BROWNOUT_DET_LVL=0
-CONFIG_REDUCE_PHY_TX_POWER=y
-CONFIG_ESP32_TIME_SYSCALL_USE_RTC_FRC1=y
-CONFIG_ESP32_TIME_SYSCALL_USE_RTC=
-CONFIG_ESP32_TIME_SYSCALL_USE_FRC1=
-CONFIG_ESP32_TIME_SYSCALL_USE_NONE=
-CONFIG_ESP32_RTC_CLOCK_SOURCE_INTERNAL_RC=y
-CONFIG_ESP32_RTC_CLOCK_SOURCE_EXTERNAL_CRYSTAL=
-CONFIG_ESP32_RTC_CLOCK_SOURCE_EXTERNAL_OSC=
-CONFIG_ESP32_RTC_CLOCK_SOURCE_INTERNAL_8MD256=
-CONFIG_ESP32_RTC_CLK_CAL_CYCLES=1024
-CONFIG_ESP32_DEEP_SLEEP_WAKEUP_DELAY=2000
-CONFIG_ESP32_XTAL_FREQ_40=y
-CONFIG_ESP32_XTAL_FREQ_26=
-CONFIG_ESP32_XTAL_FREQ_AUTO=
-CONFIG_ESP32_XTAL_FREQ=40
-CONFIG_DISABLE_BASIC_ROM_CONSOLE=
-CONFIG_ESP_TIMER_PROFILING=
-CONFIG_COMPATIBLE_PRE_V2_1_BOOTLOADERS=
-CONFIG_ESP_ERR_TO_NAME_LOOKUP=y
-
-#
-# Wi-Fi
-#
-CONFIG_SW_COEXIST_ENABLE=y
-CONFIG_SW_COEXIST_PREFERENCE_WIFI=
-CONFIG_SW_COEXIST_PREFERENCE_BT=
-CONFIG_SW_COEXIST_PREFERENCE_BALANCE=y
-CONFIG_SW_COEXIST_PREFERENCE_VALUE=2
-CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=10
-CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=32
-CONFIG_ESP32_WIFI_STATIC_TX_BUFFER=
-CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER=y
-CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=1
-CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=32
-CONFIG_ESP32_WIFI_CSI_ENABLED=
-CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y
-CONFIG_ESP32_WIFI_TX_BA_WIN=6
-CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y
-CONFIG_ESP32_WIFI_RX_BA_WIN=6
-CONFIG_ESP32_WIFI_NVS_ENABLED=y
-CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_0=y
-CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_1=
-CONFIG_ESP32_WIFI_SOFTAP_BEACON_MAX_LEN=752
-CONFIG_ESP32_WIFI_IRAM_OPT=y
-CONFIG_ESP32_WIFI_MGMT_SBUF_NUM=32
-
-#
-# PHY
-#
-CONFIG_ESP32_PHY_CALIBRATION_AND_DATA_STORAGE=y
-CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION=
-CONFIG_ESP32_PHY_MAX_WIFI_TX_POWER=20
-CONFIG_ESP32_PHY_MAX_TX_POWER=20
-
-#
-# Power Management
-#
-CONFIG_PM_ENABLE=
-
-#
-# ADC-Calibration
-#
-CONFIG_ADC_CAL_EFUSE_TP_ENABLE=y
-CONFIG_ADC_CAL_EFUSE_VREF_ENABLE=y
-CONFIG_ADC_CAL_LUT_ENABLE=y
-
-#
-# Event Loop Library
-#
-CONFIG_EVENT_LOOP_PROFILING=
-
-#
-# ESP HTTP client
-#
-CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS=y
-
-#
-# HTTP Server
-#
-CONFIG_HTTPD_MAX_REQ_HDR_LEN=512
-CONFIG_HTTPD_MAX_URI_LEN=512
-
-#
-# Ethernet
-#
-CONFIG_DMA_RX_BUF_NUM=10
-CONFIG_DMA_TX_BUF_NUM=10
-CONFIG_EMAC_L2_TO_L3_RX_BUF_MODE=y
-CONFIG_EMAC_CHECK_LINK_PERIOD_MS=2000
-CONFIG_EMAC_TASK_PRIORITY=20
-CONFIG_EMAC_TASK_STACK_SIZE=3072
-
-#
-# FAT Filesystem support
-#
-CONFIG_FATFS_CODEPAGE_DYNAMIC=
-CONFIG_FATFS_CODEPAGE_437=y
-CONFIG_FATFS_CODEPAGE_720=
-CONFIG_FATFS_CODEPAGE_737=
-CONFIG_FATFS_CODEPAGE_771=
-CONFIG_FATFS_CODEPAGE_775=
-CONFIG_FATFS_CODEPAGE_850=
-CONFIG_FATFS_CODEPAGE_852=
-CONFIG_FATFS_CODEPAGE_855=
-CONFIG_FATFS_CODEPAGE_857=
-CONFIG_FATFS_CODEPAGE_860=
-CONFIG_FATFS_CODEPAGE_861=
-CONFIG_FATFS_CODEPAGE_862=
-CONFIG_FATFS_CODEPAGE_863=
-CONFIG_FATFS_CODEPAGE_864=
-CONFIG_FATFS_CODEPAGE_865=
-CONFIG_FATFS_CODEPAGE_866=
-CONFIG_FATFS_CODEPAGE_869=
-CONFIG_FATFS_CODEPAGE_932=
-CONFIG_FATFS_CODEPAGE_936=
-CONFIG_FATFS_CODEPAGE_949=
-CONFIG_FATFS_CODEPAGE_950=
-CONFIG_FATFS_CODEPAGE=437
-CONFIG_FATFS_LFN_NONE=y
-CONFIG_FATFS_LFN_HEAP=
-CONFIG_FATFS_LFN_STACK=
-CONFIG_FATFS_FS_LOCK=0
-CONFIG_FATFS_TIMEOUT_MS=10000
-CONFIG_FATFS_PER_FILE_CACHE=y
-
-#
-# Modbus configuration
-#
-CONFIG_MB_QUEUE_LENGTH=20
-CONFIG_MB_SERIAL_TASK_STACK_SIZE=2048
-CONFIG_MB_SERIAL_BUF_SIZE=256
-CONFIG_MB_SERIAL_TASK_PRIO=10
-CONFIG_MB_CONTROLLER_SLAVE_ID_SUPPORT=
-CONFIG_MB_CONTROLLER_NOTIFY_TIMEOUT=20
-CONFIG_MB_CONTROLLER_NOTIFY_QUEUE_SIZE=20
-CONFIG_MB_CONTROLLER_STACK_SIZE=4096
-CONFIG_MB_EVENT_QUEUE_TIMEOUT=20
-CONFIG_MB_TIMER_PORT_ENABLED=y
-CONFIG_MB_TIMER_GROUP=0
-CONFIG_MB_TIMER_INDEX=0
-
-#
-# FreeRTOS
-#
-CONFIG_FREERTOS_UNICORE=
-CONFIG_FREERTOS_NO_AFFINITY=0x7FFFFFFF
-CONFIG_FREERTOS_CORETIMER_0=y
-CONFIG_FREERTOS_CORETIMER_1=
-CONFIG_FREERTOS_HZ=100
-CONFIG_FREERTOS_ASSERT_ON_UNTESTED_FUNCTION=y
-CONFIG_FREERTOS_CHECK_STACKOVERFLOW_NONE=
-CONFIG_FREERTOS_CHECK_STACKOVERFLOW_PTRVAL=
-CONFIG_FREERTOS_CHECK_STACKOVERFLOW_CANARY=y
-CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK=
-CONFIG_FREERTOS_INTERRUPT_BACKTRACE=y
-CONFIG_FREERTOS_THREAD_LOCAL_STORAGE_POINTERS=1
-CONFIG_FREERTOS_ASSERT_FAIL_ABORT=y
-CONFIG_FREERTOS_ASSERT_FAIL_PRINT_CONTINUE=
-CONFIG_FREERTOS_ASSERT_DISABLE=
-CONFIG_FREERTOS_IDLE_TASK_STACKSIZE=1536
-CONFIG_FREERTOS_ISR_STACKSIZE=1536
-CONFIG_FREERTOS_LEGACY_HOOKS=
-CONFIG_FREERTOS_MAX_TASK_NAME_LEN=16
-CONFIG_SUPPORT_STATIC_ALLOCATION=
-CONFIG_TIMER_TASK_PRIORITY=1
-CONFIG_TIMER_TASK_STACK_DEPTH=2048
-CONFIG_TIMER_QUEUE_LENGTH=10
-CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE=0
-CONFIG_FREERTOS_USE_TRACE_FACILITY=
-CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=
-CONFIG_FREERTOS_DEBUG_INTERNALS=
-CONFIG_FREERTOS_TASK_FUNCTION_WRAPPER=y
-
-#
-# Heap memory debugging
-#
-CONFIG_HEAP_POISONING_DISABLED=y
-CONFIG_HEAP_POISONING_LIGHT=
-CONFIG_HEAP_POISONING_COMPREHENSIVE=
-CONFIG_HEAP_TRACING=
-
-#
-# libsodium
-#
-CONFIG_LIBSODIUM_USE_MBEDTLS_SHA=y
-
-#
-# Log output
-#
-CONFIG_LOG_DEFAULT_LEVEL_NONE=
-CONFIG_LOG_DEFAULT_LEVEL_ERROR=
-CONFIG_LOG_DEFAULT_LEVEL_WARN=
-CONFIG_LOG_DEFAULT_LEVEL_INFO=y
-CONFIG_LOG_DEFAULT_LEVEL_DEBUG=
-CONFIG_LOG_DEFAULT_LEVEL_VERBOSE=
-CONFIG_LOG_DEFAULT_LEVEL=3
-CONFIG_LOG_COLORS=y
-
-#
-# LWIP
-#
-CONFIG_L2_TO_L3_COPY=
-CONFIG_LWIP_IRAM_OPTIMIZATION=
-CONFIG_LWIP_MAX_SOCKETS=10
-CONFIG_USE_ONLY_LWIP_SELECT=
-CONFIG_LWIP_SO_REUSE=y
-CONFIG_LWIP_SO_REUSE_RXTOALL=y
-CONFIG_LWIP_SO_RCVBUF=
-CONFIG_LWIP_DHCP_MAX_NTP_SERVERS=1
-CONFIG_LWIP_IP_FRAG=
-CONFIG_LWIP_IP_REASSEMBLY=
-CONFIG_LWIP_STATS=
-CONFIG_LWIP_ETHARP_TRUST_IP_MAC=
-CONFIG_ESP_GRATUITOUS_ARP=y
-CONFIG_GARP_TMR_INTERVAL=60
-CONFIG_TCPIP_RECVMBOX_SIZE=32
-CONFIG_LWIP_DHCP_DOES_ARP_CHECK=y
-CONFIG_LWIP_DHCP_RESTORE_LAST_IP=
-
-#
-# DHCP server
-#
-CONFIG_LWIP_DHCPS_LEASE_UNIT=60
-CONFIG_LWIP_DHCPS_MAX_STATION_NUM=8
-CONFIG_LWIP_AUTOIP=
-CONFIG_LWIP_NETIF_LOOPBACK=y
-CONFIG_LWIP_LOOPBACK_MAX_PBUFS=8
-
-#
-# TCP
-#
-CONFIG_LWIP_MAX_ACTIVE_TCP=16
-CONFIG_LWIP_MAX_LISTENING_TCP=16
-CONFIG_TCP_MAXRTX=12
-CONFIG_TCP_SYNMAXRTX=6
-CONFIG_TCP_MSS=1436
-CONFIG_TCP_MSL=60000
-CONFIG_TCP_SND_BUF_DEFAULT=5744
-CONFIG_TCP_WND_DEFAULT=5744
-CONFIG_TCP_RECVMBOX_SIZE=6
-CONFIG_TCP_QUEUE_OOSEQ=y
-CONFIG_ESP_TCP_KEEP_CONNECTION_WHEN_IP_CHANGES=
-CONFIG_TCP_OVERSIZE_MSS=y
-CONFIG_TCP_OVERSIZE_QUARTER_MSS=
-CONFIG_TCP_OVERSIZE_DISABLE=
-
-#
-# UDP
-#
-CONFIG_LWIP_MAX_UDP_PCBS=16
-CONFIG_UDP_RECVMBOX_SIZE=6
-CONFIG_TCPIP_TASK_STACK_SIZE=3072
-CONFIG_TCPIP_TASK_AFFINITY_NO_AFFINITY=y
-CONFIG_TCPIP_TASK_AFFINITY_CPU0=
-CONFIG_TCPIP_TASK_AFFINITY_CPU1=
-CONFIG_TCPIP_TASK_AFFINITY=0x7FFFFFFF
-CONFIG_PPP_SUPPORT=
-
-#
-# ICMP
-#
-CONFIG_LWIP_MULTICAST_PING=
-CONFIG_LWIP_BROADCAST_PING=
-
-#
-# LWIP RAW API
-#
-CONFIG_LWIP_MAX_RAW_PCBS=16
-
-#
-# mbedTLS
-#
-CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC=y
-CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC=
-CONFIG_MBEDTLS_CUSTOM_MEM_ALLOC=
-CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN=16384
-CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=
-CONFIG_MBEDTLS_DEBUG=
-CONFIG_MBEDTLS_HARDWARE_AES=y
-CONFIG_MBEDTLS_HARDWARE_MPI=
-CONFIG_MBEDTLS_HARDWARE_SHA=
-CONFIG_MBEDTLS_HAVE_TIME=y
-CONFIG_MBEDTLS_HAVE_TIME_DATE=
-CONFIG_MBEDTLS_TLS_SERVER_AND_CLIENT=y
-CONFIG_MBEDTLS_TLS_SERVER_ONLY=
-CONFIG_MBEDTLS_TLS_CLIENT_ONLY=
-CONFIG_MBEDTLS_TLS_DISABLED=
-CONFIG_MBEDTLS_TLS_SERVER=y
-CONFIG_MBEDTLS_TLS_CLIENT=y
-CONFIG_MBEDTLS_TLS_ENABLED=y
-
-#
-# TLS Key Exchange Methods
-#
-CONFIG_MBEDTLS_PSK_MODES=
-CONFIG_MBEDTLS_KEY_EXCHANGE_RSA=y
-CONFIG_MBEDTLS_KEY_EXCHANGE_DHE_RSA=y
-CONFIG_MBEDTLS_KEY_EXCHANGE_ELLIPTIC_CURVE=y
-CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_RSA=y
-CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA=y
-CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA=y
-CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_RSA=y
-CONFIG_MBEDTLS_SSL_RENEGOTIATION=y
-CONFIG_MBEDTLS_SSL_PROTO_SSL3=
-CONFIG_MBEDTLS_SSL_PROTO_TLS1=y
-CONFIG_MBEDTLS_SSL_PROTO_TLS1_1=y
-CONFIG_MBEDTLS_SSL_PROTO_TLS1_2=y
-CONFIG_MBEDTLS_SSL_PROTO_DTLS=
-CONFIG_MBEDTLS_SSL_ALPN=y
-CONFIG_MBEDTLS_SSL_SESSION_TICKETS=y
-
-#
-# Symmetric Ciphers
-#
-CONFIG_MBEDTLS_AES_C=y
-CONFIG_MBEDTLS_CAMELLIA_C=
-CONFIG_MBEDTLS_DES_C=
-CONFIG_MBEDTLS_RC4_DISABLED=y
-CONFIG_MBEDTLS_RC4_ENABLED_NO_DEFAULT=
-CONFIG_MBEDTLS_RC4_ENABLED=
-CONFIG_MBEDTLS_BLOWFISH_C=
-CONFIG_MBEDTLS_XTEA_C=
-CONFIG_MBEDTLS_CCM_C=y
-CONFIG_MBEDTLS_GCM_C=y
-CONFIG_MBEDTLS_RIPEMD160_C=
-
-#
-# Certificates
-#
-CONFIG_MBEDTLS_PEM_PARSE_C=y
-CONFIG_MBEDTLS_PEM_WRITE_C=y
-CONFIG_MBEDTLS_X509_CRL_PARSE_C=y
-CONFIG_MBEDTLS_X509_CSR_PARSE_C=y
-CONFIG_MBEDTLS_ECP_C=y
-CONFIG_MBEDTLS_ECDH_C=y
-CONFIG_MBEDTLS_ECDSA_C=y
-CONFIG_MBEDTLS_ECP_DP_SECP192R1_ENABLED=y
-CONFIG_MBEDTLS_ECP_DP_SECP224R1_ENABLED=y
-CONFIG_MBEDTLS_ECP_DP_SECP256R1_ENABLED=y
-CONFIG_MBEDTLS_ECP_DP_SECP384R1_ENABLED=y
-CONFIG_MBEDTLS_ECP_DP_SECP521R1_ENABLED=y
-CONFIG_MBEDTLS_ECP_DP_SECP192K1_ENABLED=y
-CONFIG_MBEDTLS_ECP_DP_SECP224K1_ENABLED=y
-CONFIG_MBEDTLS_ECP_DP_SECP256K1_ENABLED=y
-CONFIG_MBEDTLS_ECP_DP_BP256R1_ENABLED=y
-CONFIG_MBEDTLS_ECP_DP_BP384R1_ENABLED=y
-CONFIG_MBEDTLS_ECP_DP_BP512R1_ENABLED=y
-CONFIG_MBEDTLS_ECP_DP_CURVE25519_ENABLED=y
-CONFIG_MBEDTLS_ECP_NIST_OPTIM=y
-
-#
-# mDNS
-#
-CONFIG_MDNS_MAX_SERVICES=10
-
-#
-# ESP-MQTT Configurations
-#
-CONFIG_MQTT_PROTOCOL_311=y
-CONFIG_MQTT_TRANSPORT_SSL=y
-CONFIG_MQTT_TRANSPORT_WEBSOCKET=y
-CONFIG_MQTT_TRANSPORT_WEBSOCKET_SECURE=y
-CONFIG_MQTT_USE_CUSTOM_CONFIG=
-CONFIG_MQTT_TASK_CORE_SELECTION_ENABLED=
-CONFIG_MQTT_CUSTOM_OUTBOX=
-
-#
-# NVS
-#
-
-#
-# OpenSSL
-#
-CONFIG_OPENSSL_DEBUG=
-CONFIG_OPENSSL_ASSERT_DO_NOTHING=y
-CONFIG_OPENSSL_ASSERT_EXIT=
-
-#
-# PThreads
-#
-CONFIG_ESP32_PTHREAD_TASK_PRIO_DEFAULT=5
-CONFIG_ESP32_PTHREAD_TASK_STACK_SIZE_DEFAULT=3072
-CONFIG_PTHREAD_STACK_MIN=768
-
-#
-# SPI Flash driver
-#
-CONFIG_SPI_FLASH_VERIFY_WRITE=
-CONFIG_SPI_FLASH_ENABLE_COUNTERS=
-CONFIG_SPI_FLASH_ROM_DRIVER_PATCH=y
-CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ABORTS=y
-CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_FAILS=
-CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ALLOWED=
-CONFIG_SPI_FLASH_YIELD_DURING_ERASE=
-
-#
-# SPIFFS Configuration
-#
-CONFIG_SPIFFS_MAX_PARTITIONS=3
-
-#
-# SPIFFS Cache Configuration
-#
-CONFIG_SPIFFS_CACHE=y
-CONFIG_SPIFFS_CACHE_WR=y
-CONFIG_SPIFFS_CACHE_STATS=
-CONFIG_SPIFFS_PAGE_CHECK=y
-CONFIG_SPIFFS_GC_MAX_RUNS=10
-CONFIG_SPIFFS_GC_STATS=
-CONFIG_SPIFFS_PAGE_SIZE=256
-CONFIG_SPIFFS_OBJ_NAME_LEN=32
-CONFIG_SPIFFS_USE_MAGIC=y
-CONFIG_SPIFFS_USE_MAGIC_LENGTH=y
-CONFIG_SPIFFS_META_LENGTH=4
-CONFIG_SPIFFS_USE_MTIME=y
-
-#
-# Debug Configuration
-#
-CONFIG_SPIFFS_DBG=
-CONFIG_SPIFFS_API_DBG=
-CONFIG_SPIFFS_GC_DBG=
-CONFIG_SPIFFS_CACHE_DBG=
-CONFIG_SPIFFS_CHECK_DBG=
-CONFIG_SPIFFS_TEST_VISUALISATION=
-
-#
-# TCP/IP Adapter
-#
-CONFIG_IP_LOST_TIMER_INTERVAL=120
-CONFIG_TCPIP_LWIP=y
-
-#
-# Virtual file system
-#
-CONFIG_SUPPRESS_SELECT_DEBUG_OUTPUT=y
-CONFIG_SUPPORT_TERMIOS=y
-
-#
-# Wear Levelling
-#
-CONFIG_WL_SECTOR_SIZE_512=
-CONFIG_WL_SECTOR_SIZE_4096=y
-CONFIG_WL_SECTOR_SIZE=4096