以下日志时电子吧唧模式切换到AI对话模式的日志：
I (5650) DZBJ_BAT: ADC原始值=2806, ADC电压=2347mV, 电池电压=4694mV, 电量=100%
I (8660) KEY_NAV: BOOT+KEY2组合键检测，跳过KEY2长按业务
I (8680) KEY_NAV: BOOT+KEY2组合键检测，跳过BOOT长按业务
I (9460) DZBJ_BTN: BOOT+KEY2组合键2秒：触发模式切换
I (9460) DZBJ_BTN: 执行模式切换...
I (9460) DZBJ_BTN: 吧唧模式 → AI模式
I (9470) DeviceMode: 模式切换为 AI，即将重启...
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0xc (RTC_SW_CPU_RST),boot:0xb (SPI_FAST_FLASH_BOOT)
Saved PC:0x40379ce1
--- 0x40379ce1: esp_restart_noos at /Users/rdzleo/esp/esp-idf/components/esp_system/port/soc/esp32s3/system_internal.c:162
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce2820,len:0x56c
load:0x403c8700,len:0x4
load:0x403c8704,len:0xb88
load:0x403cb700,len:0x2df4
entry 0x403c88f4
I (48) WeatherApi: 初始化天气API配置 - 默认城市: 北京
I (48) WeatherApi: WiFi位置缓存限制已设置为: 5 条
I (49) coexist: coex firmware version: 831ec70
I (49) coexist: coexist rom version e7ae62f
I (49) main_task: Started on CPU0
I (59) main_task: Calling app_main()
I (79) BackgroundTask: background_task started
I (79) BluetoothProvisioning: 蓝牙配网对象创建完成
I (79) button: IoT Button Version: 3.5.0
I (79) gpio: GPIO[0]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (79) button: IoT Button Version: 3.5.0
I (79) gpio: GPIO[4]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (79) Airhub1: Initializing I2C master bus for audio codec...
I (79) Airhub1: Scanning I2C bus for devices...
I (79) Airhub1: I2C设备在线: 0x18
I (79) Airhub1: I2C设备在线: 0x40
I (79) Airhub1: I2C scan completed. Found 2 devices
I (79) DZBJ: 开始初始化显示硬件...
I (79) gpio: GPIO[7]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 
I (79) st77916: LCD panel create success, version: 1.0.1
W (209) st77916: The 3Ah command has been used and will be overwritten by external initialization sequence
I (329) LCD: LCD GRAM cleared (black filled)
I (329) DZBJ: LCD 硬件初始化完成
I (329) DZBJ: 屏幕触摸已禁用 (DZBJ_ENABLE_TOUCH=0)
I (329) LVGL: Starting LVGL task
I (329) LCD: LVGL buffer: 14400 bytes (W:360, Lines:20, DMA, single)
I (329) DZBJ: LVGL 初始化完成
I (449) Airhub1: 🤖 AI对话模式启动
I (449) Airhub1: 初始化按钮...
I (449) DZBJ_BTN: BOOT+KEY2组合键模式切换注册成功(2000ms)
I (449) Airhub1: Boot button initialized on GPIO0
I (449) Airhub1: Volume up button initialized on GPIO-1
I (449) Airhub1: Volume down button initialized on GPIO-1
I (449) Airhub1: 故事按键已初始化，GPIO引脚 =4
I (449) Airhub1: 所有按键已成功初始化！
I (449) Airhub1: IMU传感器未初始化，跳过IoT注册
I (449) Airhub1: Initializing battery monitor...
I (449) Airhub1: ADC calibration initialized
I (449) Airhub1: 电池状态监控已初始化，GPIO:3
I (449) Airhub1: 非生产测试模式且不在对话状态，姿态传感器业务已禁用以节约资源
I (449) PowerSaveTimer: Power save timer enabled
I (449) Airhub1: 🔋 PowerSaveTimer已启用，20秒无活动将进入低功耗模式
I (449) Airhub1: 电容触摸板按钮已禁用 (ENABLE_TOUCH_PAD_BUTTONS=0)
I (449) Application: 打印设置设备状态日志: starting
I (449) Application: 正常启动流程，将执行开机播报和网络连接播报
I (449) Airhub1: Initializing audio codec (duplex)...
I (449) Airhub1: Creating BoxAudioCodec (ES8311+ES7210, without reference) ...
I (449) BoxAudioCodec: Duplex channels created
I (459) ES8311: Work in Slave mode
I (459) gpio: GPIO[48]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 
I (459) ES7210: Work in Slave mode
I (469) ES7210: Enable ES7210_INPUT_MIC1
I (469) ES7210: Enable ES7210_INPUT_MIC2
I (479) BoxAudioCodec: BoxAudioDevice initialized (duplex)
I (479) Airhub1: Audio codec initialized successfully
I (479) Application: 检测到WiFi板卡，将opus编码器复杂度设置为3
I (479) OpusResampler: Resampler configured with input sample rate 16000, output sample rate 8000, and channels 1
I (479) I2S_IF: channel mode 2 bits:16/16 channel:2 mask:1
I (479) I2S_IF: TDM Mode 0 bits:16/16 channel:2 sample_rate:16000 mask:1
I (479) I2S_IF: channel mode 0 bits:16/16 channel:2 mask:1
I (479) I2S_IF: STD Mode 1 bits:16/16 channel:2 sample_rate:16000 mask:1
I (479) ES7210: Bits 16
I (489) ES7210: Enable ES7210_INPUT_MIC1
I (489) ES7210: Enable ES7210_INPUT_MIC2
I (499) ES7210: Unmuted
I (499) Adev_Codec: Open codec device OK
I (499) BoxAudioCodec: Input opened: sr=16000 ch=1 mask=0x1 ref=0
I (499) AudioCodec: Set input enable to true
I (499) I2S_IF: channel mode 0 bits:16/16 channel:2 mask:1
I (499) I2S_IF: STD Mode 1 bits:16/16 channel:2 sample_rate:16000 mask:1
I (519) Adev_Codec: Open codec device OK
I (519) AudioCodec: Set output enable to true
I (519) AudioCodec: Audio codec started
I (619) Airhub1: ADC: 2348, 原始电压: 2.35V, 计算电池电压: 10.19V, 电量: 100%, 满电电压: 4.20V
I (619) BluetoothMAC: Bluetooth MAC Address: d0:cf:13:03:bb:f2
I (719) Airhub1: ADC: 2347, 原始电压: 2.35V, 计算电池电压: 10.19V, 电量: 100%, 满电电压: 4.20V
I (719) BluetoothMAC: Bluetooth MAC Address: d0:cf:13:03:bb:f2
I (719) Airhub1: BOOT button clicked
I (719) Airhub1: 🔄 BOOT按键触发：设备状态=1，WiFi连接状态=未连接
I (719) Airhub1: 🔄 开始重置WiFi配置，清除已保存的WiFi凭据
I (719) Airhub1: ✅ 已清除所有WiFi凭据，设备将进入配网模式
I (719) WifiBoard: 🔄 重置WiFi配置，设备将重启进入配网模式
I (819) Airhub1: ADC: 2347, 原始电压: 2.35V, 计算电池电压: 10.19V, 电量: 100%, 满电电压: 4.20V
I (819) BluetoothMAC: Bluetooth MAC Address: d0:cf:13:03:bb:f2
I (939) Airhub1: ADC: 2347, 原始电压: 2.35V, 计算电池电压: 10.19V, 电量: 100%, 满电电压: 4.20V
I (939) BluetoothMAC: Bluetooth MAC Address: d0:cf:13:03:bb:f2
I (1039) Airhub1: ADC: 2347, 原始电压: 2.35V, 计算电池电压: 10.19V, 电量: 100%, 满电电压: 4.20V
I (1039) BluetoothMAC: Bluetooth MAC Address: d0:cf:13:03:bb:f2
I (1139) Airhub1: ADC: 2346, 原始电压: 2.35V, 计算电池电压: 10.18V, 电量: 100%, 满电电压: 4.20V
I (1139) BluetoothMAC: Bluetooth MAC Address: d0:cf:13:03:bb:f2
I (1229) WifiBoard: 🔄 正在重启设备...
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0xc (RTC_SW_CPU_RST),boot:0xb (SPI_FAST_FLASH_BOOT)
Saved PC:0x40379ce1
--- 0x40379ce1: esp_restart_noos at /Users/rdzleo/esp/esp-idf/components/esp_system/port/soc/esp32s3/system_internal.c:162
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce2820,len:0x56c
load:0x403c8700,len:0x4
load:0x403c8704,len:0xb88
load:0x403cb700,len:0x2df4
entry 0x403c88f4
I (48) WeatherApi: 初始化天气API配置 - 默认城市: 北京
I (48) WeatherApi: WiFi位置缓存限制已设置为: 5 条
I (49) coexist: coex firmware version: 831ec70
I (49) coexist: coexist rom version e7ae62f
I (49) main_task: Started on CPU0
I (59) main_task: Calling app_main()
I (79) BackgroundTask: background_task started
I (79) BluetoothProvisioning: 蓝牙配网对象创建完成
I (79) WifiBoard: force_ap is set to 1, will clear in StartNetwork()
I (79) button: IoT Button Version: 3.5.0
I (79) gpio: GPIO[0]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (79) button: IoT Button Version: 3.5.0
I (79) gpio: GPIO[4]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (79) Airhub1: Initializing I2C master bus for audio codec...
I (79) Airhub1: Scanning I2C bus for devices...
I (79) Airhub1: I2C设备在线: 0x18
I (79) Airhub1: I2C设备在线: 0x40
I (79) Airhub1: I2C scan completed. Found 2 devices
I (79) DZBJ: 开始初始化显示硬件...
I (79) gpio: GPIO[7]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 
I (79) st77916: LCD panel create success, version: 1.0.1
W (209) st77916: The 3Ah command has been used and will be overwritten by external initialization sequence
I (329) LCD: LCD GRAM cleared (black filled)
I (329) DZBJ: LCD 硬件初始化完成
I (329) DZBJ: 屏幕触摸已禁用 (DZBJ_ENABLE_TOUCH=0)
I (329) LVGL: Starting LVGL task
I (329) LCD: LVGL buffer: 14400 bytes (W:360, Lines:20, DMA, single)
I (329) DZBJ: LVGL 初始化完成
I (449) Airhub1: 🤖 AI对话模式启动
I (449) Airhub1: 初始化按钮...
I (449) DZBJ_BTN: BOOT+KEY2组合键模式切换注册成功(2000ms)
I (449) Airhub1: Boot button initialized on GPIO0
I (449) Airhub1: Volume up button initialized on GPIO-1
I (449) Airhub1: Volume down button initialized on GPIO-1
I (449) Airhub1: 故事按键已初始化，GPIO引脚 =4
I (449) Airhub1: 所有按键已成功初始化！
I (449) Airhub1: IMU传感器未初始化，跳过IoT注册
I (449) Airhub1: 配网模式：跳过电池检测、IMU传感器、低功耗管理
I (449) Airhub1: 电容触摸板按钮已禁用 (ENABLE_TOUCH_PAD_BUTTONS=0)
I (449) Application: 打印设置设备状态日志: starting
I (449) Application: 正常启动流程，将执行开机播报和网络连接播报
I (449) Airhub1: Initializing audio codec (output only)...
I (449) Airhub1: Creating BoxAudioCodec (ES8311, without reference) ...
I (449) BoxAudioCodec: TX-only channel created (provisioning mode)
I (449) ES8311: Work in Slave mode
I (459) gpio: GPIO[48]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 
I (459) BoxAudioCodec: BoxAudioDevice initialized (output only)
I (459) Airhub1: Audio codec initialized successfully
I (459) Application: 配网模式：跳过 Opus 编码器、输入重采样器、麦克风输入
I (459) I2S_IF: channel mode 0 bits:16/16 channel:2 mask:1
I (459) I2S_IF: STD Mode 1 bits:16/16 channel:2 sample_rate:16000 mask:1
I (469) Adev_Codec: Open codec device OK
I (479) AudioCodec: Set output enable to true
I (479) AudioCodec: Audio codec started (output only, provisioning mode)
I (479) AudioCodec: 将运行时输出音量设置为：80
I (479) Application: 设备启动完成，播放开机播报语音
I (489) WifiBoard: force_ap cleared to 0
I (489) WifiBoard: 🔵 进入配网模式 - BLE蓝牙配网
I (489) WifiBoard: 🔵 进入配网模式 - 使用BLE蓝牙配网
I (489) WifiBoard: 🔵 正在启动BLE蓝牙配网服务...
I (489) Application: 🎵 测试模式：音频开始播放，等待播放完成
I (489) Application: ✅ 测试模式：音频播放完成
I (489) BluetoothProvisioning: 🔄 配网状态变化: IDLE -> INITIALIZING
I (489) BluetoothProvisioning: 初始化WiFi...
I (489) pp: pp rom version: e7ae62f
I (489) net80211: net80211 rom version: e7ae62f
I (499) wifi:wifi driver task: 3fcd90ac, prio:23, stack:6656, core=0
I (499) wifi:wifi firmware version: 3263cda
I (499) wifi:wifi certification version: v7.0
I (499) wifi:config NVS flash: enabled
I (499) wifi:config nano formatting: disabled
I (499) wifi:Init data frame dynamic rx buffer num: 32
I (499) wifi:Init dynamic rx mgmt buffer num: 5
I (499) wifi:Init management short buffer num: 32
I (499) wifi:Init static tx buffer num: 8
I (499) wifi:Init tx cache buffer num: 32
I (499) wifi:Init static tx FG buffer num: 2
I (499) wifi:Init static rx buffer size: 1600
I (499) wifi:Init static rx buffer num: 10
I (499) wifi:Init dynamic rx buffer num: 32
I (509) wifi_init: rx ba win: 16
I (509) wifi_init: accept mbox: 6
I (509) wifi_init: tcpip mbox: 32
I (509) wifi_init: udp mbox: 6
I (509) wifi_init: tcp mbox: 6
I (509) wifi_init: tcp tx win: 5760
I (509) wifi_init: tcp rx win: 5760
I (509) wifi_init: tcp mss: 1440
I (509) wifi_init: WiFi/LWIP prefer SPIRAM
I (509) phy_init: phy_version 701,f4f1da3a,Mar  3 2025,15:50:10
I (539) wifi:mode : sta (d0:cf:13:03:bb:f0)
I (539) wifi:enable tsf
I (539) BluetoothProvisioning: WiFi初始化完成
I (539) BluetoothProvisioning: 初始化蓝牙控制器...
I (539) BLE_INIT: BT controller compile version [2edb0b0]
I (539) BLE_INIT: Using main XTAL as clock source
I (539) BLE_INIT: Feature Config, ADV:1, BLE_50:1, DTM:1, SCAN:1, CCA:0, SMP:1, CONNECT:1
I (539) BLE_INIT: Bluetooth MAC: d0:cf:13:03:bb:f2
I (549) BluetoothProvisioning: 初始化Bluedroid协议栈...
I (559) BluetoothProvisioning: 注册 BLE GAP/GATTS 回调...
I (559) BluetoothProvisioning: ✅ GATTS App 注册成功, gatts_if=3
I (559) BluetoothProvisioning: Service 创建成功, handle=40
I (559) BluetoothProvisioning: WRITE 特征添加成功, handle=42
I (559) BluetoothProvisioning: NOTIFY 特征添加成功, handle=44
I (559) BluetoothProvisioning: CCCD 添加成功, handle=45
I (559) BluetoothProvisioning: ✅ GATT Service 启动成功
I (559) BluetoothProvisioning: 注册WiFi事件处理器...
I (559) BluetoothProvisioning: 🔄 配网状态变化: INITIALIZING -> IDLE
I (559) BluetoothProvisioning: 蓝牙配网初始化完成 (GATT Server 模式)
I (559) BluetoothProvisioning: 蓝牙MAC地址: d0:cf:13:03:bb:f2
I (559) WifiBoard: 🔍 BLE Initialize返回结果: true
I (559) BluetoothProvisioning: 🔵 开始启动蓝牙配网服务 (GATT Server)...
I (559) BluetoothProvisioning: 🔍 检查初始化状态: initialized_ = true
I (559) BluetoothProvisioning: MAC地址发送状态已重置
I (559) BluetoothProvisioning: 🔄 MAC地址发送状态已重置
I (559) BluetoothProvisioning: 🧹 清除之前的WiFi凭据...
I (559) BluetoothProvisioning: ✅ WiFi凭据清除完成，准备接收新的配网信息
I (559) BluetoothProvisioning: 📡 蓝牙设备名称: Airhub_d0:cf:13:03:bb:f2
I (559) BluetoothProvisioning: 📡 广播数据构建完成，长度: 29 字节
I (559) BluetoothProvisioning: 📡 扫描响应数据构建完成，长度: 7 字节
I (559) BluetoothProvisioning: 📡 广播数据设置完成，配置扫描响应数据
I (559) BluetoothProvisioning: 📡 扫描响应数据设置完成，启动广播
I (569) BluetoothProvisioning: ✅ 广播启动成功
I (569) BluetoothProvisioning: 🔄 配网状态变化: IDLE -> ADVERTISING
I (569) BluetoothProvisioning: 蓝牙配网广播已启动，等待客户端连接...
I (569) WifiBoard: ✅ BLE蓝牙配网启动成功
I (569) WifiBoard: 📱 请使用支持BLE的手机APP连接设备进行配网
W (569) Application: Alert BLE配网模式: 请使用手机APP搜索Airhub_开头的蓝牙设备 [happy]
I (579) AI_CHAT_UI: GIF表情切换: happy
I (579) WifiBoard: Starting BLE provisioning monitor...
I (579) WifiBoard: 🔍 BLE配网启动结果: 成功
I (579) WifiBoard: ✅ BLE配网启动成功，等待手机连接
I (579) Application: 配网模式：跳过协议初始化、位置检测等网络业务
I (579) Application: 打印设置设备状态日志: idle
I (599) AI_CHAT_UI: GIF表情切换: neutral
I (599) main_task: Returned from app_main()
I (599) Application: 开始播放下行音频: 样本=960 采样率=16000
I (13089) AudioCodec: Set output enable to false
I (17689) BluetoothProvisioning: 📱 客户端已连接, conn_id=0, addr=6d:db:7f:0c:40:a7
I (17689) BluetoothProvisioning: 🔍 [DEBUG] 设置client_connected_为true
I (17689) BluetoothProvisioning: MAC地址发送状态已重置
I (17689) BluetoothProvisioning: 🔄 MAC地址发送状态已重置
I (17689) BluetoothProvisioning: 🔄 配网状态变化: ADVERTISING -> CONNECTED
I (17689) WifiBoard: BLE client connected
I (17689) BluetoothProvisioning: 🔍 [DEBUG] BLE连接处理完成，client_connected_=true
I (17689) BluetoothProvisioning: 广播已停止
I (18089) BluetoothProvisioning: 连接参数更新: status=0, conn_int=24, latency=0, timeout=400
I (18659) BluetoothProvisioning: MTU 更新: 512
I (18749) BluetoothProvisioning: 连接参数更新: status=0, conn_int=6, latency=0, timeout=500
I (18869) BluetoothProvisioning: 连接参数更新: status=0, conn_int=24, latency=0, timeout=400
I (19229) BluetoothProvisioning: NOTIFY 已启用
I (19379) BluetoothProvisioning: 📱 手机请求获取WiFi列表，开始扫描










以下日志时AI对话模式切换到电子吧唧模式的日志：
I (2858) wifi:Init static tx FG buffer num: 2
I (2858) wifi:Init static rx buffer size: 1600
I (2858) wifi:Init static rx buffer num: 10
I (2858) wifi:Init dynamic rx buffer num: 32
I (2858) wifi_init: rx ba win: 16
I (2858) wifi_init: accept mbox: 6
I (2858) wifi_init: tcpip mbox: 32
I (2858) wifi_init: udp mbox: 6
I (2858) wifi_init: tcp mbox: 6
I (2858) wifi_init: tcp tx win: 5760
I (2858) wifi_init: tcp rx win: 5760
I (2858) wifi_init: tcp mss: 1440
I (2858) wifi_init: WiFi/LWIP prefer SPIRAM
I (2858) phy_init: phy_version 701,f4f1da3a,Mar  3 2025,15:50:10
I (2888) wifi:mode : sta (d0:cf:13:03:bb:f0)
I (2888) wifi:enable tsf
I (2898) Application: 开始播放下行音频: 样本=960 采样率=16000
I (5308) wifi: 发现可连接 AP: airhub, BSSID: 70:2a:d7:85:bc:eb, RSSI: -38, Channel: 1, Authmode: 3
I (5308) WifiBoard: Starting WiFi connection, playing network connection sound
W (5308) wifi:Password length matches WPA2 standards, authmode threshold changes from OPEN to WPA2
I (5398) wifi:new:<1,0>, old:<1,0>, ap:<255,255>, sta:<1,0>, prof:1, snd_ch_cfg:0x0
I (5398) wifi:state: init -> auth (0xb0)
I (5428) wifi:state: auth -> assoc (0x0)
I (5458) wifi:state: assoc -> run (0x10)
I (5518) wifi:connected with airhub, aid = 4, channel 1, BW20, bssid = 70:2a:d7:85:bc:eb
I (5518) wifi:security: WPA2-PSK, phy: bgn, rssi: -42
I (5518) wifi:pm start, type: 1

I (5518) wifi:dp: 1, bi: 102400, li: 3, scale listen interval from 307200 us to 307200 us
I (5518) wifi:set rx beacon pti, rx_bcn_pti: 14, bcn_timeout: 25000, mt_pti: 14, mt_time: 10000
I (5538) wifi:<ba-add>idx:0 (ifx:0, 70:2a:d7:85:bc:eb), tid:0, ssn:0, winSize:64
I (5578) wifi:AP's beacon interval = 102400 us, DTIM period = 1
I (6068) DZBJ_BTN: BOOT+KEY2组合键2秒：触发模式切换
I (6068) DZBJ_BTN: 执行模式切换...
I (6068) DZBJ_BTN: AI模式 → 吧唧模式
I (6078) DeviceMode: 模式切换为 吧唧，即将重启...
I (6548) Airhub1: 📤 设备状态上报已启用，每30秒上报一次
I (6578) wifi:state: run -> init (0x0)
I (6578) wifi:pm stop, total sleep time: 562763 us / 1055555 us

I (6578) wifi:<ba-del>idx:0, tid:0
I (6578) wifi:new:<1,0>, old:<1,0>, ap:<255,255>, sta:<1,0>, prof:1, snd_ch_cfg:0x0
I (6578) wifi: Reconnecting airhub (attempt 1 / 5)
I (6638) wifi:flush txq
I (6638) wifi:stop sw txq
I (6638) wifi:lmac stop hw txq
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0xc (RTC_SW_CPU_RST),boot:0x2b (SPI_FAST_FLASH_BOOT)
Saved PC:0x40379ce1
--- 0x40379ce1: esp_restart_noos at /Users/rdzleo/esp/esp-idf/components/esp_system/port/soc/esp32s3/system_internal.c:162
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce2820,len:0x56c
load:0x403c8700,len:0x4
load:0x403c8704,len:0xb88
load:0x403cb700,len:0x2df4
entry 0x403c88f4
I (48) WeatherApi: 初始化天气API配置 - 默认城市: 北京
I (48) WeatherApi: WiFi位置缓存限制已设置为: 5 条
I (49) coexist: coex firmware version: 831ec70
I (49) coexist: coexist rom version e7ae62f
I (49) main_task: Started on CPU0
I (59) main_task: Calling app_main()
I (79) Application: 🎴 吧唧模式：跳过 WiFi/协议/音频初始化
I (79) Application: 打印设置设备状态日志: idle
I (79) BluetoothProvisioning: 蓝牙配网对象创建完成
I (79) button: IoT Button Version: 3.5.0
I (79) gpio: GPIO[0]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (79) button: IoT Button Version: 3.5.0
I (79) gpio: GPIO[4]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (79) Airhub1: Initializing I2C master bus for audio codec...
I (79) Airhub1: Scanning I2C bus for devices...
I (79) Airhub1: I2C设备在线: 0x18
I (79) Airhub1: I2C设备在线: 0x40
I (79) Airhub1: I2C scan completed. Found 2 devices
I (79) DZBJ: 开始初始化显示硬件...
I (79) gpio: GPIO[7]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 
I (79) st77916: LCD panel create success, version: 1.0.1
W (209) st77916: The 3Ah command has been used and will be overwritten by external initialization sequence
I (329) LCD: LCD GRAM cleared (black filled)
I (329) DZBJ: LCD 硬件初始化完成
I (329) DZBJ: 屏幕触摸已禁用 (DZBJ_ENABLE_TOUCH=0)
I (329) LVGL: Starting LVGL task
I (329) LCD: LVGL buffer: 14400 bytes (W:360, Lines:20, DMA, single)
I (329) DZBJ: LVGL 初始化完成
I (339) DZBJ: UI 初始化完成
I (439) DZBJ: 背光已点亮，dzbj 显示模块初始化完成
I (439) Airhub1: 🎴 电子吧唧模式启动
I (439) Airhub1: 初始化吧唧模式按钮...
I (439) KEY_NAV: 导航上下文切换: 0
I (439) KEY_NAV: 按键导航初始化完成
I (439) DZBJ_BTN: BOOT 1200ms长按事件注册成功
I (439) DZBJ_BTN: BOOT+KEY2组合键模式切换注册成功(2000ms)
I (439) Airhub1: Boot button initialized on GPIO0
I (439) Airhub1: 吧唧模式按钮初始化完成
I (439) Airhub1: 初始化电子吧唧模式外设...
I (539) Airhub1: 吧唧模式 BOOT 单击
I (539) IMG_LIST: 开始扫描SPIFFS中的图片文件
E (549) IMG_LIST: 无法打开SPIFFS目录
E (549) IMG_LIST: 图片列表未初始化或为空
I (549) ScreenImg: SPIFFS无可用图片，显示默认UI图片
I (549) KEY_NAV: 导航上下文切换: 1
I (549) FATFS: SPIFFS: Total size: 2763761, Used: 78061
I (599) IMG_LIST: 开始扫描SPIFFS中的图片文件
I (599) IMG_LIST: 发现图片文件: 03.jpg
I (599) IMG_LIST: 发现图片文件: 02.jpg
I (599) IMG_LIST: 发现图片文件: default.jpg
I (649) IMG_LIST: 图片列表初始化完成，共发现 3 张图片
I (649) IMG_LIST: 设置默认图片索引: 2
I (649) button: IoT Button Version: 3.5.0
I (649) gpio: GPIO[4]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
I (649) DZBJ_BTN: 按键初始化完成 (KEY2=GPIO4, 长按1200ms, 双击300ms)
I (649) DZBJ_BAT: ADC校准初始化成功
I (649) DZBJ_BAT: 电池ADC初始化完成 (GPIO3, ADC1_CH2, 分压比=2)
I (649) DZBJ_BAT: ADC原始值=2797, ADC电压=2339mV, 电池电压=4678mV, 电量=100%
I (649) DZBJ_BAT: 电池监控任务已启动，更新间隔5000ms
I (649) BLE_INIT: BT controller compile version [2edb0b0]
I (649) BLE_INIT: Using main XTAL as clock source
I (659) BLE_INIT: Feature Config, ADV:1, BLE_50:1, DTM:1, SCAN:1, CCA:0, SMP:1, CONNECT:1
I (659) BLE_INIT: Bluetooth MAC: d0:cf:13:03:bb:f2
I (659) phy_init: phy_version 701,f4f1da3a,Mar  3 2025,15:50:10
I (699) DZBJ_BLE: GATT server register, status 0, app_id 0
I (709) DZBJ_BLE: 图片传输服务创建成功，句柄: 28
I (709) DZBJ_BLE: 图片写入特征创建成功,句柄: 42
I (709) DZBJ_BLE: 图片编辑特征创建成功,句柄: 44
I (709) DZBJ_BLE: BLE MAC: d0:cf:13:03:bb:f2
I (709) DZBJ_BLE: 蓝牙设备名称: Airhub_d0:cf:13:03:bb:f2
I (709) DZBJ_BLE: Advertising data set, status 0
I (709) DZBJ_BLE: Scan response data set, status 0
I (709) DZBJ_BLE: Advertising start successfully
I (709) BLE_XFER: GATTC注册成功, if=4
I (709) BLE_XFER: 设备间传输模块初始化完成
I (709) SLEEP: 休眠管理器初始化完成（超时=10s）
I (709) Airhub1: 电子吧唧模式初始化完成
I (709) main_task: Returned from app_main()
I (5649) DZBJ_BAT: ADC原始值=2791, ADC电压=2335mV, 电池电压=4670mV, 电量=100%
I (10649) DZBJ_BAT: ADC原始值=2794, ADC电压=2337mV, 电池电压=4674mV, 电量=100%
I (15649) DZBJ_BAT: ADC原始值=2794, ADC电压=2337mV, 电池电压=4674mV, 电量=100%
I (18019) KEY_NAV: 导航上下文切换: 0
I (20649) DZBJ_BAT: ADC原始值=2794, ADC电压=2337mV, 电池电压=4674mV, 电量=100%