menu "TQ Printer Config" config TQ_WIFI_PROV_SOFTAP_SSID string "Wi-Fi provisioning SoftAP SSID" default "TalkingQ-Setup" config TQ_WIFI_PROV_SOFTAP_PASSWORD string "Wi-Fi provisioning SoftAP Password (empty means open AP)" default "" config TQ_WIFI_PROV_SOFTAP_CHANNEL int "Wi-Fi provisioning SoftAP channel" range 1 13 default 1 config TQ_WIFI_PROV_SOFTAP_MAX_CONN int "Wi-Fi provisioning SoftAP max clients" range 1 8 default 4 config TQ_WIFI_MAXIMUM_RETRY int "Wi-Fi Maximum Retry" default 10 config TQ_WIFI_CONNECT_TIMEOUT_MS int "Wi-Fi connect timeout (ms)" range 3000 60000 default 15000 config TQ_LIFECYCLE_START_RETRY_COUNT int "Lifecycle start retry count" range 0 5 default 2 config TQ_LIFECYCLE_RETRY_BACKOFF_MS int "Lifecycle retry base backoff (ms)" range 100 10000 default 800 config TQ_PRINTER_CONTROL_LOCK_TIMEOUT_MS int "Printer control lane lock timeout (ms)" range 100 5000 default 1000 config TQ_PRINTER_WORKER_QUEUE_WAIT_MS int "Printer worker queue poll wait (ms)" range 50 2000 default 250 config TQ_PRINTER_QUEUE_RETRY_DELAY_MS int "Printer queue retry delay (ms)" range 5 500 default 20 config TQ_PRINTER_STATUS_POLL_INTERVAL_MS int "Printer status poll interval (ms)" range 1000 30000 default 5000 config TQ_PRINTER_STOP_TIMEOUT_MS int "Printer protocol stop timeout (ms)" range 1000 30000 default 8000 config TQ_PRINTER_OPERATION_TIMEOUT_MS int "Printer max operation timeout (ms)" range 1000 300000 default 90000 config TQ_PRINTER_STROBE_ON_US int "Printer strobe on-time (us)" range 100 10000 default 1000 config TQ_PRINTER_STROBE_INTERVAL_US int "Printer strobe interval (us)" range 0 10000 default 200 config TQ_PRINTER_MOTOR_STEP_US int "Printer motor step delay (us)" range 100 20000 default 2000 config TQ_PRINTER_MOTOR_REVERSE bool "Printer motor direction reversed" default n config TQ_PRINTER_STEPS_PER_LINE int "Printer motor steps per printed line" range 1 8 default 2 config TQ_PRINTER_GAP_STEPS int "Printer gap move steps" range 1 2000 default 96 config TQ_PRINTER_TEMP_MIN_C int "Printer allowed minimum temperature (C)" range 0 120 default 15 config TQ_PRINTER_TEMP_MAX_C int "Printer allowed maximum temperature (C)" range 1 150 default 55 config TQ_PRINTER_BATTERY_MIN_PERCENT int "Printer minimum battery percent" range 0 100 default 5 config TQ_PRINTER_PAPER_PRESENT_LEVEL int "Printer paper-present GPIO level (0/1)" range 0 1 default 0 config TQ_PRINTER_BATTERY_EMPTY_MV int "Printer battery empty voltage (mV)" range 2500 5000 default 3300 config TQ_PRINTER_BATTERY_FULL_MV int "Printer battery full voltage (mV)" range 2600 6000 default 4200 config TQ_PRINTER_BATTERY_DIVIDER_RATIO_X1000 int "Printer battery divider ratio x1000" range 1000 10000 default 2000 config TQ_PRINTER_NTC_PULLUP_OHMS int "Printer NTC pull-up resistor (ohms)" range 1000 200000 default 10000 config TQ_PRINTER_NTC_R25_OHMS int "Printer NTC R25 resistance (ohms)" range 1000 200000 default 10000 config TQ_PRINTER_NTC_BETA int "Printer NTC beta constant" range 1000 10000 default 3950 config TQ_Z_IMAGE_API_KEY string "Z-Image API Key for DashScope HTTP (optional, fallback to Voice API key)" default "sk-7a50eca6856d4afb968ac3bf512f6d1b" config TQ_Z_IMAGE_API_ENDPOINT string "Z-Image HTTP endpoint" default "https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation" config TQ_Z_IMAGE_MODEL string "Z-Image model" default "z-image-turbo" config TQ_Z_IMAGE_DEFAULT_SIZE string "Z-Image default output size" default "512*768" config TQ_Z_IMAGE_TIMEOUT_MS int "Z-Image generation timeout (ms)" range 5000 180000 default 45000 config TQ_Z_IMAGE_DOWNLOAD_TIMEOUT_MS int "Z-Image image download timeout (ms)" range 2000 120000 default 15000 config TQ_Z_IMAGE_MAX_RESPONSE_BYTES int "Z-Image max response body bytes" range 1024 262144 default 65536 config TQ_Z_IMAGE_MAX_PNG_BYTES int "Z-Image max downloaded PNG bytes" range 65536 8388608 default 4194304 config TQ_Z_IMAGE_HTTP_BUFFER_BYTES int "Z-Image HTTP client buffer bytes" range 4096 32768 default 16384 config TQ_Z_IMAGE_HTTP_READ_CHUNK_BYTES int "Z-Image HTTP stream read chunk bytes" range 4096 32768 default 16384 config TQ_VOICE_API_KEY string "Voice API Key for DashScope WebSocket (optional)" default "sk-7a50eca6856d4afb968ac3bf512f6d1b" config TQ_VOICE_WS_URI string "Voice WebSocket URI" default "wss://dashscope.aliyuncs.com/api-ws/v1/inference" config TQ_VOICE_WORKSPACE_ID string "Voice workspace_id" default "llm-igyrxzdvbwja5gyt" config TQ_VOICE_APP_ID string "Voice app_id" default "106a67b690db4686a5d6b40d119653fa" config TQ_VOICE_USER_ID string "Voice client user_id" default "esp32-user" config TQ_VOICE_DEVICE_UUID string "Voice client device uuid (optional)" default "" config TQ_VOICE_TTS_VOICE string "Voice TTS voice (optional)" default "longling_v3" config TQ_VOICE_SAMPLE_RATE int "Voice sample rate" range 8000 48000 default 16000 config TQ_VOICE_OPUS_FRAME_MS int "Voice raw-opus frame size (ms)" range 10 120 default 100 config TQ_VOICE_OPUS_BITRATE_KBPS int "Voice raw-opus bitrate (kbps)" range 6 128 default 32 config TQ_VOICE_HEARTBEAT_SEC int "Voice heartbeat interval seconds" range 10 55 default 50 config TQ_VOICE_I2C_PORT int "Voice I2C port" range 0 1 default 1 config TQ_VOICE_I2C_SDA_PIN int "Voice I2C SDA GPIO" range 0 48 default 6 config TQ_VOICE_I2C_SCL_PIN int "Voice I2C SCL GPIO" range 0 48 default 7 config TQ_VOICE_CODEC_ADDR int "ES8311 I2C address" range 1 126 default 48 config TQ_VOICE_I2S_PORT int "Voice I2S port" range 0 1 default 0 config TQ_VOICE_I2S_MCLK_PIN int "Voice I2S MCLK GPIO" range -1 48 default 38 config TQ_VOICE_I2S_BCLK_PIN int "Voice I2S BCLK GPIO" range 0 48 default 39 config TQ_VOICE_I2S_WS_PIN int "Voice I2S WS GPIO" range 0 48 default 41 config TQ_VOICE_I2S_DOUT_PIN int "Voice I2S DOUT GPIO" range 0 48 default 42 config TQ_VOICE_I2S_DIN_PIN int "Voice I2S DIN GPIO" range 0 48 default 40 config TQ_VOICE_CODEC_PA_PIN int "ES8311 PA control GPIO" range -1 48 default 20 menu "Board GPIO Mapping (ESP32-S3)" config TQ_POWER_HOLD_PIN int "Power hold GPIO (drive high to keep power)" range -1 48 default 1 config TQ_POWER_KEY_PIN int "Power key GPIO" range -1 48 default 47 config TQ_LED_R_PIN int "LED_R GPIO" range -1 48 default 2 config TQ_LED_G_PIN int "LED_G GPIO" range -1 48 default 21 config TQ_KEY_PRINT_PIN int "Print confirm key / 7.2V boost control GPIO" range -1 48 default 0 config TQ_KEY_PRINT_BOOST_ENABLE_ON_BOOT bool "Use KEY_PRINT pin as 7.2V boost enable on boot" default y config TQ_KEY_PRINT_BOOST_ACTIVE_HIGH bool "KEY_PRINT boost enable level is high" default y depends on TQ_KEY_PRINT_BOOST_ENABLE_ON_BOOT config TQ_MIC_KEY_PIN int "Mic key GPIO" range -1 48 default 14 config TQ_BATTERY_ADC_PIN int "Battery ADC detect GPIO" range -1 48 default 15 config TQ_NTC_ADC_PIN int "NTC ADC GPIO" range -1 48 default 18 config TQ_PRINT_STB_56_PIN int "Printer STB5_6 GPIO" range -1 48 default 4 config TQ_PRINT_STB_34_PIN int "Printer STB3_4 GPIO" range -1 48 default 5 config TQ_PRINT_STB_12_PIN int "Printer STB1_2 GPIO" range -1 48 default 16 config TQ_PRINT_PAPER_PIN int "Printer paper detect GPIO" range -1 48 default 17 config TQ_PRINT_OUTA_P_PIN int "Printer OUTA+ GPIO" range -1 48 default 8 config TQ_PRINT_OUTA_N_PIN int "Printer OUTA- GPIO" range -1 48 default 19 config TQ_PRINT_OUTB_P_PIN int "Printer OUTB+ GPIO" range -1 48 default 3 config TQ_PRINT_OUTB_N_PIN int "Printer OUTB- GPIO" range -1 48 default 46 config TQ_PRINT_LAT_PIN int "Printer LAT GPIO" range -1 48 default 45 config TQ_SPI_SHARED_MOSI_PIN int "Printer/Screen shared MOSI GPIO" range -1 48 default 9 config TQ_PRINTER_MISO_PIN int "Printer MISO GPIO" range -1 48 default 10 config TQ_SPI_SHARED_CLK_PIN int "Printer/Screen shared CLK GPIO" range -1 48 default 11 config TQ_SCREEN_DC_PIN int "Screen DC GPIO" range -1 48 default 12 config TQ_SCREEN_CS_PIN int "Screen CS GPIO" range -1 48 default 13 config TQ_SCREEN_BACKLIGHT_PIN int "Screen backlight GPIO (active high)" range -1 48 default 48 endmenu menu "ST7789 Screen" config TQ_SCREEN_ENABLE bool "Enable ST7789 screen driver" default y depends on SOC_GPSPI_SUPPORTED config TQ_SCREEN_PIXEL_CLOCK_HZ int "ST7789 SPI pixel clock (Hz)" range 1000000 80000000 default 10000000 depends on TQ_SCREEN_ENABLE config TQ_SCREEN_H_RES int "ST7789 horizontal resolution" range 64 480 default 320 depends on TQ_SCREEN_ENABLE config TQ_SCREEN_V_RES int "ST7789 vertical resolution" range 64 480 default 240 depends on TQ_SCREEN_ENABLE config TQ_SCREEN_DRAW_LINES int "ST7789 draw chunk lines" range 1 120 default 20 depends on TQ_SCREEN_ENABLE config TQ_SCREEN_SPI_MODE int "ST7789 SPI mode (0-3)" range 0 3 default 0 depends on TQ_SCREEN_ENABLE config TQ_SCREEN_COLOR_ORDER_BGR bool "ST7789 color order is BGR" default n depends on TQ_SCREEN_ENABLE config TQ_SCREEN_INVERT_COLOR bool "ST7789 invert color" default y depends on TQ_SCREEN_ENABLE config TQ_SCREEN_SWAP_COLOR_BYTES bool "ST7789 swap color bytes" default y depends on TQ_SCREEN_ENABLE config TQ_SCREEN_BACKLIGHT_ACTIVE_HIGH bool "ST7789 backlight active-high" default y depends on TQ_SCREEN_ENABLE config TQ_SCREEN_MIRROR_X bool "ST7789 mirror X axis" default y depends on TQ_SCREEN_ENABLE config TQ_SCREEN_MIRROR_Y bool "ST7789 mirror Y axis" default n depends on TQ_SCREEN_ENABLE config TQ_SCREEN_SWAP_XY bool "ST7789 swap X/Y axis" default y depends on TQ_SCREEN_ENABLE config TQ_SCREEN_X_GAP int "ST7789 X gap" range 0 480 default 0 depends on TQ_SCREEN_ENABLE config TQ_SCREEN_Y_GAP int "ST7789 Y gap" range 0 480 default 0 depends on TQ_SCREEN_ENABLE config TQ_SCREEN_RESET_PIN int "ST7789 reset GPIO (-1 if not connected)" range -1 48 default -1 depends on TQ_SCREEN_ENABLE endmenu config TQ_VOICE_CODEC_PA_PIN_REVERSED bool "ES8311 PA enable level is active-low" default n config TQ_VOICE_CODEC_OUT_VOL int "ES8311 output volume (0-100)" range 0 100 default 70 config TQ_VOICE_CODEC_MIC_GAIN_DB int "ES8311 mic gain dB" range 0 42 default 24 endmenu