Files
lucky-cat/sdkconfig.defaults
chenjintao f6408be05b feat(lcd): add compressed GFX idle expression animation
Integrate esp_emote_gfx for idle rendering with symmetric mesh-based blinking and LCD DMA flush synchronization.

Store cropped face layers with lossless RLE, decode once into PSRAM, and retain the PNG backend for other expressions. Include source layers and asset generation tools.
2026-10-09 14:19:16 +08:00

344 lines
15 KiB
Plaintext

CONFIG_ESPTOOLPY_FLASHSIZE_16MB=y
CONFIG_ESPTOOLPY_FLASHSIZE="16MB"
CONFIG_ESPTOOLPY_HEADER_FLASHSIZE_UPDATE=y
CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE=y
# Mini-program BLE provisioning.
CONFIG_BT_ENABLED=y
# CONFIG_BT_BLUEDROID_ENABLED is not set
CONFIG_BT_NIMBLE_ENABLED=y
CONFIG_BT_NIMBLE_ROLE_PERIPHERAL=y
CONFIG_BT_NIMBLE_ROLE_CENTRAL=n
CONFIG_BT_NIMBLE_ROLE_OBSERVER=n
CONFIG_BT_NIMBLE_ROLE_BROADCASTER=y
CONFIG_BT_NIMBLE_MAX_CONNECTIONS=1
CONFIG_BT_NIMBLE_HOST_TASK_STACK_SIZE=6144
CONFIG_BT_NIMBLE_MEM_ALLOC_MODE_EXTERNAL=y
# CONFIG_BT_NIMBLE_MEM_ALLOC_MODE_INTERNAL is not set
# CONFIG_BT_NIMBLE_MEM_ALLOC_MODE_DEFAULT is not set
CONFIG_TQ_MINI_PROGRAM_PROVISIONING_ENABLE=y
CONFIG_TQ_MINI_PROGRAM_PROVISIONING_CONNECT_TIMEOUT_MS=30000
CONFIG_TQ_MINI_PROGRAM_PROVISIONING_RECONNECT_FAILURES=2
CONFIG_TQ_MINI_PROGRAM_PROVISIONING_MIN_FREE_INTERNAL_BYTES=49152
CONFIG_TQ_MINI_PROGRAM_PROVISIONING_MIN_LARGEST_DMA_BYTES=12288
CONFIG_TQ_WIFI_CONNECT_CYCLE_TIMEOUT_MS=20000
# External PSRAM (ESP32-S3 octal mode)
CONFIG_SPIRAM=y
CONFIG_SPIRAM_MODE_OCT=y
CONFIG_SPIRAM_SPEED_80M=y
CONFIG_SPIRAM_BOOT_INIT=y
CONFIG_SPIRAM_USE_MALLOC=y
CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP=y
CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY=y
CONFIG_SPIRAM_ALLOW_NOINIT_SEG_EXTERNAL_MEMORY=y
CONFIG_FREERTOS_TASK_CREATE_ALLOW_EXT_MEM=y
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
# CONFIG_TQ_TASK_MONITOR_ENABLE is not set
# CONFIG_TQ_BOOT_SEQUENCE_DRY_RUN is not set
CONFIG_TQ_BOOT_SOUND_TIMEOUT_MS=3000
CONFIG_TQ_BOOT_SOUND_FILE="audio_prompts/boot.opus"
CONFIG_TQ_NETWORK_TASK_CORE=0
CONFIG_TQ_LOCAL_TASK_CORE=1
CONFIG_TQ_LCD_RENDER_TASK_STACK_BYTES=8192
CONFIG_TQ_LCD_EMOTE_GFX_TEST=y
CONFIG_TQ_TASK_MONITOR_INTERVAL_MS=30000
CONFIG_TQ_TASK_MONITOR_MAX_TASKS=64
CONFIG_TQ_MEMORY_MONITOR_ENABLE=y
CONFIG_TQ_MEMORY_MONITOR_SAMPLE_INTERVAL_MS=1000
CONFIG_TQ_MEMORY_MONITOR_REPORT_INTERVAL_MS=30000
CONFIG_TQ_MEMORY_MONITOR_INTERNAL_WARN_BYTES=16384
CONFIG_TQ_MEMORY_MONITOR_DMA_LARGEST_WARN_BYTES=4096
CONFIG_TQ_NETWORK_DIAGNOSTICS_ENABLE=y
CONFIG_TQ_MULTIMODAL_DIAGNOSTICS_ENABLE=y
CONFIG_TQ_NETWORK_AUTO_REASSOCIATION_ENABLE=y
CONFIG_TQ_SYSTEM_EVENT_ENABLE=y
CONFIG_TQ_SYSTEM_EVENT_QUEUE_LEN=32
CONFIG_TQ_SYSTEM_EVENT_TASK_STACK=6144
CONFIG_TQ_LIGHT_STANDBY_ENABLE=y
CONFIG_TQ_LIGHT_STANDBY_IDLE_TIMEOUT_MS=300000
CONFIG_TQ_LIGHT_STANDBY_DIM_BACKLIGHT=y
CONFIG_TQ_LIGHT_STANDBY_BACKLIGHT_PERCENT=10
CONFIG_TQ_LIGHT_STANDBY_PROMPT_ENABLE=y
CONFIG_TQ_LIGHT_STANDBY_PROMPT_FILE="audio_prompts/standby_5min.opus"
CONFIG_TQ_LIGHT_STANDBY_DISABLE_SPEAKER_OUTPUT=y
CONFIG_TQ_LIGHT_STANDBY_RELEASE_MOTOR_HOLD=y
CONFIG_TQ_LIGHT_STANDBY_WIFI_POWER_SAVE=y
CONFIG_TQ_LIGHT_STANDBY_BATTERY_INTERVAL_SEC=300
CONFIG_TQ_LIGHT_STANDBY_MEMORY_SAMPLE_INTERVAL_MS=10000
CONFIG_TQ_LIGHT_STANDBY_MEMORY_REPORT_INTERVAL_MS=300000
CONFIG_TQ_LIGHT_STANDBY_TASK_STACK_BYTES=4096
CONFIG_TQ_LIGHT_STANDBY_TASK_PRIORITY=3
CONFIG_ESP_COREDUMP_ENABLE_TO_FLASH=y
# CONFIG_ESP_COREDUMP_ENABLE_TO_UART is not set
# CONFIG_ESP_COREDUMP_ENABLE_TO_NONE is not set
CONFIG_ESP_COREDUMP_DATA_FORMAT_ELF=y
# CONFIG_ESP_COREDUMP_DATA_FORMAT_BIN is not set
CONFIG_ESP_COREDUMP_CHECKSUM_CRC32=y
# CONFIG_ESP_COREDUMP_CHECKSUM_SHA256 is not set
# CONFIG_ESP_COREDUMP_CAPTURE_DRAM is not set
CONFIG_ESP_COREDUMP_CHECK_BOOT=y
# CONFIG_ESP_COREDUMP_LOGS is not set
CONFIG_ESP_COREDUMP_MAX_TASKS_NUM=16
CONFIG_ESP_COREDUMP_STACK_SIZE=1792
CONFIG_TQ_KEY_INPUT_ENABLE=y
CONFIG_TQ_KEY_INPUT_TASK_STACK=4096
CONFIG_TQ_KEY_IRQ_QUEUE_LEN=16
CONFIG_TQ_KEY_INPUT_POLL_MS=20
CONFIG_TQ_KEY_DEBOUNCE_INTERVAL_MS=20
CONFIG_TQ_KEY_LONG_PRESS_MS=800
CONFIG_TQ_KEY_DOUBLE_CLICK_MS=450
CONFIG_TQ_KEY_POST_DOUBLE_CLICK_SUPPRESS_MS=450
CONFIG_TQ_PTT_MODE_CLICK_TO_TALK=y
# CONFIG_TQ_PTT_MODE_HOLD_TO_TALK is not set
CONFIG_TQ_PTT_CLICK_CAPTURE_TIMEOUT_MS=8000
CONFIG_TQ_LOCAL_WAKE_ENABLE=y
CONFIG_TQ_OTA_ENABLE=y
CONFIG_TQ_OTA_REPORT_URL="https://gz.api.talkingq.com/ota/api/ota/versionInfoReport"
CONFIG_TQ_OTA_POLL_INTERVAL_MS=21600000
CONFIG_TQ_OTA_CONFIRMATION_POLL_MS=21600000
CONFIG_TQ_OTA_HTTP_TIMEOUT_MS=15000
CONFIG_TQ_OTA_INSTALL_TIMEOUT_MS=600000
CONFIG_TQ_OTA_RETRY_BASE_MS=21600000
CONFIG_TQ_OTA_RETRY_MAX_MS=21600000
CONFIG_TQ_OTA_TASK_STACK_BYTES=16384
CONFIG_TQ_OTA_MIN_FREE_INTERNAL_BYTES=32768
CONFIG_TQ_OTA_MIN_LARGEST_DMA_BYTES=4096
CONFIG_TQ_OTA_MIN_BATTERY_PERCENT=20
CONFIG_TQ_OTA_POWER_RETRY_MS=60000
CONFIG_TQ_LOCAL_WAKE_RESPONSE_PROMPT_ENABLE=y
CONFIG_TQ_LOCAL_WAKE_RESPONSE_PROMPT_FILE="audio_prompts/local_wake_response.opus"
CONFIG_TQ_LOCAL_WAKE_RETRY_MS=5000
CONFIG_TQ_LOCAL_WAKE_READY_TIMEOUT_MS=10000
CONFIG_TQ_LOCAL_WAKE_STOP_WAIT_MS=1000
CONFIG_TQ_LOCAL_WAKE_TASK_STACK_BYTES=6144
CONFIG_TQ_LOCAL_WAKE_TASK_PRIORITY=4
CONFIG_TQ_LOCAL_WAKE_TASK_CORE=0
CONFIG_TQ_LOCAL_COMMAND_TASK_STACK_BYTES=8192
CONFIG_TQ_LOCAL_COMMAND_TASK_PRIORITY=7
CONFIG_TQ_LOCAL_COMMAND_TASK_CORE=0
CONFIG_TQ_LOCAL_COMMAND_CONTROL_TIMEOUT_MS=1000
CONFIG_TQ_LOCAL_COMMAND_DETECTION_TIMEOUT_MS=6000
CONFIG_TQ_LOCAL_COMMAND_DETECTION_THRESHOLD_X10000=1200
CONFIG_SR_MN_CN_MULTINET7_QUANT=y
CONFIG_SR_MN_EN_NONE=y
# Internal DMA-capable SRAM budget. TLS/auth/fortune flows, hardware AES DMA
# bounce buffers, LCD DMA, and worker task stacks all need internal-only memory.
# Keep a protected internal reserve while pushing larger ordinary allocations to
# PSRAM and trimming the always-internal Wi-Fi DMA buffers.
CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=4096
CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=32768
CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM=8
CONFIG_ESP_WIFI_DYNAMIC_RX_BUFFER_NUM=16
CONFIG_ESP_WIFI_STATIC_TX_BUFFER_NUM=8
CONFIG_ESP_WIFI_CACHE_TX_BUFFER_NUM=16
CONFIG_ESP_WIFI_RX_BA_WIN=6
# TQ_cat keeps a persistent realtime WebSocket/audio session; prioritize STA
# beacon stability over modem-sleep savings.
# CONFIG_TQ_WIFI_STA_POWER_SAVE is not set
CONFIG_TQ_WIFI_STA_INACTIVE_TIME_SEC=15
CONFIG_TQ_TIME_SNTP_SERVER="ntp.aliyun.com"
CONFIG_TQ_TIME_POSIX_TZ="CST-8"
# ESP-SR recommended performance/cache profile on ESP32-S3
# CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_160 is not set
CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_240=y
CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ=240
# CONFIG_ESP32S3_DATA_CACHE_32KB is not set
CONFIG_ESP32S3_DATA_CACHE_64KB=y
# CONFIG_ESP32S3_DATA_CACHE_LINE_32B is not set
CONFIG_ESP32S3_DATA_CACHE_LINE_64B=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="16m.csv"
# Increase system event loop task stack to avoid sys_evt overflow during Wi-Fi scan/connect.
CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE=4096
# Reserve lwIP's last DNS slot for the ESP-IDF fallback resolver. DHCP will not
# overwrite DNS_FALLBACK_SERVER_INDEX, so HTTPS can still resolve hosts when an
# access point hands out an unusable DNS server.
CONFIG_LWIP_DNS_MAX_SERVERS=3
CONFIG_LWIP_FALLBACK_DNS_SERVER_SUPPORT=y
CONFIG_LWIP_FALLBACK_DNS_SERVER_ADDRESS="114.114.114.114"
# mDNS only serves LAN discovery; use component-supported PSRAM allocation to
# preserve internal DMA/TLS memory for LCD, audio, Wi-Fi, and handshakes.
CONFIG_MDNS_TASK_CREATE_FROM_SPIRAM=y
CONFIG_MDNS_MEMORY_ALLOC_SPIRAM=y
CONFIG_MULTIMODAL_DEVICE_ID=""
CONFIG_MULTIMODAL_SERIAL_NUMBER=""
CONFIG_MULTIMODAL_WIFI_SSID=""
CONFIG_MULTIMODAL_WIFI_PASSWORD=""
CONFIG_ESPTOOLPY_MONITOR_BAUD=115200
CONFIG_ESP_CONSOLE_UART_BAUDRATE=115200
CONFIG_MULTIMODAL_DEVICE_TOKEN_URL="https://gz.api.talkingq.com/token/api/device/token"
CONFIG_FORTUNE_ENABLE=y
CONFIG_FORTUNE_API_URL="https://gz.api.talkingq.com/token/api/device/fortune/daily-wealth"
CONFIG_FORTUNE_TIMEZONE="Asia/Shanghai"
CONFIG_FORTUNE_CONNECT_TIMEOUT_MS=10000
CONFIG_FORTUNE_USER_CONFIG_HTTP_PORT=80
CONFIG_FORTUNE_USER_CONFIG_MDNS_HOSTNAME="tq-cat"
# CONFIG_FORTUNE_USE_DEVICE_JWT is not set
CONFIG_ENABLE_MULTIMODAL_INTERACTION=y
CONFIG_TQ_MULTIMODAL_WATCHDOG_TASK_STACK_BYTES=6144
# CONFIG_MULTIMODAL_USE_STATIC_CREDENTIALS is not set
# CONFIG_MULTIMODAL_AUTH_BYPASS_TOKEN_SERVICE is not set
CONFIG_AUTH_V2_ENABLE=y
CONFIG_TQ_FACTORY_CLI_ENABLE=y
CONFIG_TQ_FACTORY_CLI_TASK_STACK_BYTES=7168
CONFIG_MULTIMODAL_UPSTREAM_MODE="push2talk"
CONFIG_MULTIMODAL_PTT_BUTTON_GPIO=3
CONFIG_MULTIMODAL_PTT_BUTTON_ACTIVE_LEVEL=0
CONFIG_MULTIMODAL_PTT_BUTTON_PULLUP=y
# CONFIG_MULTIMODAL_PTT_BUTTON_PULLDOWN is not set
# CONFIG_TQ_RESET_BUTTON_ENABLE is not set
# CONFIG_MULTIMODAL_AUDIO_CHANNEL_PROBE_ON_INIT is not set
CONFIG_MULTIMODAL_HEARTBEAT_INTERVAL_MS=50000
CONFIG_MULTIMODAL_NO_RESPONSE_TIMEOUT_MS=60000
CONFIG_MULTIMODAL_DIALOG_IDLE_TIMEOUT_MS=60000
CONFIG_MULTIMODAL_AUDIO_CHUNK_SIZE=1920
CONFIG_MULTIMODAL_OPUS_FRAME_DURATION_MS=60
CONFIG_MULTIMODAL_OPUS_BITRATE_KBPS=16
CONFIG_MULTIMODAL_OPUS_COMPLEXITY=0
# CONFIG_MULTIMODAL_OPUS_ENABLE_VBR is not set
# CONFIG_MULTIMODAL_OPUS_ENABLE_DTX is not set
# CONFIG_MULTIMODAL_OPUS_ENABLE_FEC is not set
CONFIG_MULTIMODAL_AUDIO_I2C_SCL_GPIO=2
CONFIG_MULTIMODAL_AUDIO_I2C_SDA_GPIO=1
CONFIG_MULTIMODAL_AUDIO_I2C_ADDR=0x18
CONFIG_MULTIMODAL_AUDIO_I2S_MCLK_GPIO=38
CONFIG_MULTIMODAL_AUDIO_I2S_BCLK_GPIO=39
CONFIG_MULTIMODAL_AUDIO_I2S_WS_GPIO=41
CONFIG_MULTIMODAL_AUDIO_I2S_DOUT_GPIO=40
CONFIG_MULTIMODAL_AUDIO_I2S_DIN_GPIO=42
CONFIG_MULTIMODAL_AUDIO_UPLINK_TASK_STACK=32768
CONFIG_MULTIMODAL_AUDIO_UPLINK_SEND_TASK_STACK=8192
CONFIG_MULTIMODAL_AUDIO_UPLINK_SEND_QUEUE_LEN=24
CONFIG_MULTIMODAL_AUDIO_UPLINK_SEND_TIMEOUT_MS=5
CONFIG_MULTIMODAL_AUDIO_CODEC_CHANNELS=2
CONFIG_MULTIMODAL_AUDIO_AEC_REFERENCE_CHANNEL=1
CONFIG_MULTIMODAL_AUDIO_AEC_FILTER_LENGTH=4
CONFIG_MULTIMODAL_AUDIO_UPLINK_MAX_PACKET_BYTES=1024
CONFIG_MULTIMODAL_AUDIO_DOWNSTREAM_PLAYBACK_TASK_STACK=10240
# CONFIG_MULTIMODAL_AUDIO_DOWNSTREAM_DIAGNOSTICS_ENABLE is not set
CONFIG_MULTIMODAL_AUDIO_DOWNSTREAM_ACTIVE_STALL_MUTE_MS=3000
CONFIG_MULTIMODAL_AUDIO_DOWNSTREAM_PREBUFFER_MS=160
CONFIG_MULTIMODAL_AUDIO_DOWNSTREAM_REBUFFER_GAP_MS=120
CONFIG_MULTIMODAL_AUDIO_DOWNSTREAM_MAX_REBUFFER_MS=640
CONFIG_MULTIMODAL_AUDIO_DOWNSTREAM_PLAYBACK_QUEUE_LEN=1024
CONFIG_MULTIMODAL_AUDIO_DOWNSTREAM_PLAYBACK_MAX_PACKET_BYTES=2048
CONFIG_MULTIMODAL_AUDIO_I2S_DMA_DESC_NUM=4
CONFIG_MULTIMODAL_AUDIO_I2S_DMA_FRAME_NUM=160
# CONFIG_MULTIMODAL_AUDIO_LOG_UPLINK_LEVELS is not set
CONFIG_MULTIMODAL_AUDIO_TASK_CORE=1
CONFIG_MULTIMODAL_TTS_VOICE=""
CONFIG_MULTIMODAL_TTS_SPEECH_RATE=110
CONFIG_MULTIMODAL_DOWNSTREAM_INTERMEDIATE_TEXT="transcript,dialog"
CONFIG_MULTIMODAL_DOWNSTREAM_RATE_LIMIT=2000
# CONFIG_MULTIMODAL_DOWNSTREAM_INCREMENTAL_RESPONSE is not set
CONFIG_MULTIMODAL_WEBSOCKET_TASK_STACK_BYTES=32768
CONFIG_MULTIMODAL_WEBSOCKET_TASK_PRIORITY=8
CONFIG_MULTIMODAL_WS_BUFFER_SIZE=2048
CONFIG_MULTIMODAL_WS_PING_INTERVAL_SEC=20
CONFIG_MULTIMODAL_WS_PINGPONG_TIMEOUT_SEC=120
CONFIG_MULTIMODAL_WS_ENABLE_TCP_KEEPALIVE=y
CONFIG_MULTIMODAL_WS_TCP_KEEPALIVE_IDLE_SEC=30
CONFIG_MULTIMODAL_WS_TCP_KEEPALIVE_INTERVAL_SEC=10
CONFIG_MULTIMODAL_WS_TCP_KEEPALIVE_COUNT=3
CONFIG_MULTIMODAL_WS_REALTIME_LOCK_WAIT_MS=80
CONFIG_MULTIMODAL_WS_REALTIME_SEND_TIMEOUT_MS=300
CONFIG_MULTIMODAL_WS_DISPATCH_TASK_STACK_BYTES=4096
CONFIG_MULTIMODAL_WS_JSON_TASK_STACK_BYTES=8192
CONFIG_MULTIMODAL_WS_OPUS_TASK_STACK_BYTES=12288
CONFIG_MULTIMODAL_WS_MSG_QUEUE_LEN=512
CONFIG_MULTIMODAL_RECONNECT_DELAY_MS=2000
# Keep the separate TX lock so realtime uplink writes do not contend with the
# WebSocket receive loop. TLS renegotiation is disabled below so a concurrent
# write cannot inspect a dynamically released RX record counter.
CONFIG_ESP_WS_CLIENT_SEPARATE_TX_LOCK=y
CONFIG_ESP_WS_CLIENT_TX_LOCK_TIMEOUT_MS=2000
# mbedTLS certificate parsing and dynamic record buffers otherwise compete for
# internal DRAM with LCD/audio/network startup. Allocate TLS heap from PSRAM.
# CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC is not set
# CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC is not set
CONFIG_MBEDTLS_EXTERNAL_MEM_ALLOC=y
CONFIG_MBEDTLS_DYNAMIC_BUFFER=y
# TLS renegotiation is not used by the device's HTTPS/WSS clients. With dynamic
# TLS buffers and concurrent WebSocket RX/TX, its write-side counter check can
# observe a released RX buffer and dereference a null in_ctr pointer.
# CONFIG_MBEDTLS_SSL_RENEGOTIATION is not set
# Keep inbound TLS large enough for certificate handshake records while still
# capping outbound request records. The token endpoint currently sends a
# certificate handshake message larger than 4 KB, which mbedTLS reports as
# MBEDTLS_ERR_SSL_INVALID_RECORD (-0x7200) when the inbound cap is too small.
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
CONFIG_MBEDTLS_SSL_PROTO_TLS1_2=y
# The firmware does not inspect the peer certificate after the handshake; avoid
# retaining the parsed chain on the heap.
# CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE is not set
CONFIG_MBEDTLS_CERTIFICATE_BUNDLE=y
CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL=y
# ZJY200-2432KHWIG25DCT ST7789P3 panel on the 2026-07-24 board
# CONFIG_TQ_SCREEN_COLOR_ORDER_BGR is not set
CONFIG_TQ_SCREEN_INVERT_COLOR=y
CONFIG_TQ_SCREEN_SWAP_COLOR_BYTES=y
CONFIG_TQ_SCREEN_BACKLIGHT_ACTIVE_HIGH=y
CONFIG_TQ_SCREEN_BACKLIGHT_BRIGHTNESS_PERCENT=100
CONFIG_TQ_SCREEN_MIRROR_X=y
CONFIG_TQ_SCREEN_SWAP_XY=y
CONFIG_TQ_SCREEN_X_GAP=0
CONFIG_TQ_SCREEN_Y_GAP=0
CONFIG_TQ_SCREEN_RESET_PIN=17
CONFIG_TQ_SCREEN_SPI_MISO_GPIO=-1
CONFIG_TQ_SCREEN_SPI_MOSI_GPIO=18
CONFIG_TQ_SCREEN_SPI_CLK_GPIO=8
CONFIG_TQ_SCREEN_SPI_CS_GPIO=15
CONFIG_TQ_SCREEN_DC_GPIO=16
CONFIG_TQ_SCREEN_BACKLIGHT_GPIO=7
CONFIG_TQ_SCREEN_SPI_PIXEL_CLOCK_HZ=40000000
CONFIG_TQ_SLOT_SWITCH_GPIO=13
CONFIG_TQ_SLOT_SWITCH_ACTIVE_LEVEL=0
CONFIG_TQ_SLOT_SWITCH_PULLUP=y
# CONFIG_TQ_SLOT_SWITCH_PULLDOWN is not set
CONFIG_TQ_BOOT_TURNTABLE_CALIBRATION_ENABLE=y
CONFIG_TQ_STEPPER_IN1_GPIO=45
CONFIG_TQ_STEPPER_IN2_GPIO=48
CONFIG_TQ_STEPPER_IN3_GPIO=47
CONFIG_TQ_STEPPER_IN4_GPIO=21
CONFIG_TQ_CALIBRATION_SWITCH_GPIO=12
CONFIG_TQ_CALIBRATION_SWITCH_ACTIVE_LEVEL=0
CONFIG_TQ_CALIBRATION_SWITCH_PULLUP=y
# CONFIG_TQ_CALIBRATION_SWITCH_PULLDOWN is not set
# CONFIG_TQ_SCREEN_COLOR_AUTOTEST is not set
CONFIG_TQ_SCREEN_COLOR_AUTOTEST_INTERVAL_MS=3000
CONFIG_TQ_POWER_HOLD_GPIO=-1
CONFIG_TQ_POWER_HOLD_ACTIVE_LEVEL=1
CONFIG_TQ_BATTERY_ENABLE=y
CONFIG_TQ_BATTERY_ADC_GPIO=9
CONFIG_TQ_BATTERY_CHARGE_GPIO=10
CONFIG_TQ_BATTERY_CHARGE_ACTIVE_LEVEL=0
CONFIG_TQ_BATTERY_FULL_MIN_VOLTAGE_MV=4150
CONFIG_TQ_BATTERY_FULL_MIN_PERCENT=95
CONFIG_TQ_BATTERY_FULL_CONFIRM_SEC=30
CONFIG_TQ_BATTERY_DIVIDER_HIGH_OHM=100000
CONFIG_TQ_BATTERY_DIVIDER_LOW_OHM=100000
CONFIG_TQ_BATTERY_CALIBRATION_GAIN_PPM=1000000
CONFIG_TQ_BATTERY_CALIBRATION_OFFSET_MV=0
CONFIG_TQ_BATTERY_SAMPLE_INTERVAL_SEC=10
CONFIG_TQ_BATTERY_LOAD_COOLDOWN_SEC=5
CONFIG_TQ_BATTERY_LOW_ENTER_PERCENT=20
CONFIG_TQ_BATTERY_LOW_EXIT_PERCENT=25
CONFIG_TQ_BATTERY_CRITICAL_ENTER_PERCENT=5
CONFIG_TQ_BATTERY_CRITICAL_EXIT_PERCENT=10
CONFIG_TQ_BATTERY_CONTROLLED_SHUTDOWN_ENABLE=y
CONFIG_TQ_BATTERY_SHUTDOWN_VOLTAGE_MV=3450
CONFIG_TQ_BATTERY_EMERGENCY_VOLTAGE_MV=3350
CONFIG_TQ_BATTERY_WAKE_RECOVERY_VOLTAGE_MV=3550
CONFIG_TQ_BATTERY_SHUTDOWN_WAKE_BUTTON_GPIO=-1
CONFIG_TQ_BATTERY_SHUTDOWN_PROMPT_FILE="audio_prompts/shutdown_power_empty.opus"
CONFIG_MULTIMODAL_AUDIO_PA_GPIO=11