From 220e4fab27b7f419b3e89e2f2d28ae789aac09d7 Mon Sep 17 00:00:00 2001
From: wangzhibo <wangzhibo@shsening.com>
Date: 星期四, 08 十月 2026 16:29:55 +0800
Subject: [PATCH] 5种场景模式家长端ok

---
 xiaozhi-esp32-2.2.6/main/boards/sening-xiaozhi-s3/system.h |   39 ++++++++++++++++++++++++++++++---------
 1 files changed, 30 insertions(+), 9 deletions(-)

diff --git a/xiaozhi-esp32-2.2.6/main/boards/sening-xiaozhi-s3/system.h b/xiaozhi-esp32-2.2.6/main/boards/sening-xiaozhi-s3/system.h
index 5500bc2..c4989b3 100644
--- a/xiaozhi-esp32-2.2.6/main/boards/sening-xiaozhi-s3/system.h
+++ b/xiaozhi-esp32-2.2.6/main/boards/sening-xiaozhi-s3/system.h
@@ -36,7 +36,8 @@
 
 #define MOUNT_POINT "/sdcard"
 #define SDCARD_PATH_MAX_LEN 256
-#define SDCARD_MP3_PLAYLIST_MAX 16
+/* 璺熻/娉涘惉娌℃湁銆岃鏂囧彧鑳� N 鍙ャ�嶇殑涓氬姟涓婇檺銆�256 鍙槸涓�娆� MCP 涓嬪彂鐨勫畨鍏ㄩ《銆� */
+#define SDCARD_MP3_PLAYLIST_MAX 256
 
 typedef struct {
     char path[SDCARD_PATH_MAX_LEN];
@@ -84,19 +85,19 @@
 
 /**
  * @brief 鏉跨骇 MultiNet 绂荤嚎鍛戒护璇嶃�傚彧鐣欐病缃戜篃蹇呴』鑳界敤鐨勫叆鍙o細
- * 銆屽垏鎹㈡ā寮忋�嶃�屾ā寮忓垏鎹€�嶃�屽璇绘満銆嶃�屽紑濮嬪璇汇�嶃�岄��鍑哄璇汇�嶃�岄��鍑鸿窡璇汇�嶃�屾垜浠亰澶╁惂銆嶃�屾垜浠潵鑱婂ぉ鍚с�嶃��
- * 澶嶈/璺熻鎾煶棰戞椂涓嶄笂琛� ASR锛岄��鍑哄彛浠ゅ繀椤昏兘绂荤嚎璇嗗埆銆傚叾瀹� App 鐨勮繘鍏ヨ瘝浠嶅彧鍦� Server apps.json銆�
+ * 銆屽垏鎹㈡ā寮忋�嶃�屾ā寮忓垏鎹€�嶃�屾硾鍚�嶃�屽紑濮嬫硾鍚�嶃�岄��鍑烘硾鍚�嶃�岄��鍑鸿窡璇汇�嶃�屾垜浠亰澶╁惂銆嶃�屾垜浠潵鑱婂ぉ鍚с�嶃��
+ * 娉涘惉/璺熻鎾煶棰戞椂涓嶄笂琛� ASR锛岄��鍑哄彛浠ゅ繀椤昏兘绂荤嚎璇嗗埆銆傚叾瀹� App 鐨勮繘鍏ヨ瘝浠嶅彧鍦� Server apps.json銆�
  */
 #define OFFLINE_COMMAND_WORD "鍒囨崲妯″紡"
 #define OFFLINE_COMMAND_WORD_PINYIN "qie huan mo shi"
 #define OFFLINE_COMMAND_WORD_ALT "妯″紡鍒囨崲"
 #define OFFLINE_COMMAND_WORD_ALT_PINYIN "mo shi qie huan"
-#define OFFLINE_REPEATER_WORD "澶嶈鏈�"
-#define OFFLINE_REPEATER_WORD_PINYIN "fu du ji"
-#define OFFLINE_START_REPEATER_WORD "寮�濮嬪璇�"
-#define OFFLINE_START_REPEATER_WORD_PINYIN "kai shi fu du"
-#define OFFLINE_EXIT_REPEATER_WORD "閫�鍑哄璇�"
-#define OFFLINE_EXIT_REPEATER_WORD_PINYIN "tui chu fu du"
+#define OFFLINE_REPEATER_WORD "娉涘惉"
+#define OFFLINE_REPEATER_WORD_PINYIN "fan ting"
+#define OFFLINE_START_REPEATER_WORD "寮�濮嬫硾鍚�"
+#define OFFLINE_START_REPEATER_WORD_PINYIN "kai shi fan ting"
+#define OFFLINE_EXIT_REPEATER_WORD "閫�鍑烘硾鍚�"
+#define OFFLINE_EXIT_REPEATER_WORD_PINYIN "tui chu fan ting"
 #define OFFLINE_EXIT_SHADOWING_WORD "閫�鍑鸿窡璇�"
 #define OFFLINE_EXIT_SHADOWING_WORD_PINYIN "tui chu gen du"
 #define OFFLINE_CHAT_WORD "鎴戜滑鑱婂ぉ鍚�"
@@ -274,6 +275,19 @@
 bool SDCard_Is_Playing(void);
 
 /**
+ * @brief 璇炬枃寮�鎾墠閲婃斁 AFE銆侀��鍑鸿亞鍚苟绛夊埌鍐呴儴 SRAM 澶� SD DMA銆�
+ *
+ * 蹇呴』鍦ㄥ垱寤� MP3 鎾斁浠诲姟涔嬪墠璋冪敤銆侫FE/MultiNet 鍜� SDMMC DMA 浜夌敤杩炵画鍐呴儴 SRAM
+ * 鏃讹紝fopen/sdmmc_read_blocks 浼氬け璐ワ紝涓ラ噸鏃� newlib 閿佸垵濮嬪寲 abort 閲嶅惎銆�
+ */
+void SDCard_PreparePlaybackAndWait(void);
+
+/**
+ * @brief 璇炬枃 MP3 宸茶繘鍏� PSRAM 鍚庢墠鍏佽绂荤嚎鍙d护 AFE銆�
+ */
+bool SDCard_Mp3OfflineWakeAllowed(void);
+
+/**
  * @brief 鏌ヨ SD 鍗� MP3 鎾斁鏄惁澶勪簬鏆傚仠鐘舵�併��
  *
  * @return true 琛ㄧず鎾斁琚殏鍋滄垨鍚庣画鏂版挱鏀惧簲浠庢殏鍋滅姸鎬佸紑濮嬶紱false 琛ㄧず鏈殏鍋溿��
@@ -431,10 +445,17 @@
 esp_err_t Board_Enter_Power_Off(void);
 esp_err_t Board_Restore_From_Power_Off(int timeout_ms);
 bool Board_Is_Power_Off(void);
+bool Board_Get_Wall_Clock(struct tm *out);
+esp_err_t DS2312_Set_Schedule_Wake(int hour, int min, int sec, uint8_t weekday_bit);
+void DS2312_Clear_Schedule_Wake(void);
 esp_err_t Board_Reboot_Delayed(int delay_seconds);
 void Board_Acquire_Sleep_Inhibit(void);
 void Board_Release_Sleep_Inhibit(void);
 bool Board_Is_Voice_Session_Active(void);
+void Board_HoldIdleForServerPrompt(void);
+void Board_ReleaseHoldIdle(void);
+void Board_AnnounceLessonSyncAndWait(void);
+void Board_SetLessonDownloadBoost(bool enable);
 bool Board_Is_Audio_Busy(void);
 void Board_Show_JPG(const char *jpg_name);
 void Board_Show_Black_Screen(void);

--
Gitblit v1.9.1