更新新的编译系统。实现版本名称配置一体
authorsnickersun <snickersun@163.com>
Fri, 8 May 2026 02:25:32 +0000 (10:25 +0800)
committersnickersun <snickersun@163.com>
Fri, 8 May 2026 02:25:32 +0000 (10:25 +0800)
30 files changed:
2.sdk/new.bat
2.sdk/new_clean.bat
2.sdk/new_version.bat
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/7PIN/default_config.py [deleted file]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/7PIN/default_config.py [new file with mode: 0644]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/7PIN_1_5/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/7PIN_1_5/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/7PIN_BK/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/7PIN_BK/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/7PIN_BK_EU/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/7PIN_BK_EU/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/7PIN_BK_coze/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/7PIN_BK_coze/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/7PIN_coze/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/7PIN_coze/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/G10/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/G10/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/README.md [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/README.md with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/csh/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/csh/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/jswm/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/jswm/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/jswm_BOX/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/jswm_BOX/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/momo/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/momo/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/sjgq/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/sjgq/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/szbst/default_config.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/szbst/default_config.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/product_k8.ini [new file with mode: 0644]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/srv_configs/README.md [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/srv_configs/README.md with 72% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/srv_configs/beike/default_srv.py [new file with mode: 0644]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/srv_configs/beike_dev/default_srv.py [new file with mode: 0644]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/srv_configs/dev_type_url_backup.py [moved from 2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/srv_configs/dev_type_url_backup.py with 100% similarity]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/srv_configs/kxc/default_srv.py [new file with mode: 0644]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/srv_configs/beike.py [deleted file]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/srv_configs/beike_dev.py [deleted file]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/srv_configs/kxc.py [deleted file]
2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/versions.py
2.sdk/project/7PIN_1_5/sdk/system/platform/ASR_1606/boards/EG810MCN_GA_VOLTE/images/firmware_base_release_pack.zip
2.sdk/project/7PIN_1_5/usr/audio_ve.nvm

index e1adebb..9fd2248 100644 (file)
@@ -1,5 +1,5 @@
 @echo off
-call new_version.bat %1
+call new_version.bat %1 %2
 
 cd project\%1\
 
index f2e19e6..d182db1 100644 (file)
@@ -1,8 +1,115 @@
-@echo off
-set PATH=D:\helios\bin;%PATH%
-set "COMSPEC=%SystemRoot%\System32\cmd.exe"
-cd Helios_SDK
-helios clean
-cd ..
-new.bat %1
-:exit
\ No newline at end of file
+@echo off\r
+setlocal EnableDelayedExpansion\r
+cd /d "%~dp0"\r
+\r
+set "PATH=D:\helios\bin;%PATH%"\r
+set "COMSPEC=%SystemRoot%\System32\cmd.exe"\r
+\r
+if "%~1"=="" (\r
+  set "PRODUCT_NAME=k8"\r
+) else (\r
+  set "PRODUCT_NAME=%~1"\r
+)\r
+\r
+set "CORE_BASE=project\7PIN_1_5\sdk\services\microPython\ports\quectel\core"\r
+set "INI=%CORE_BASE%\products\product_!PRODUCT_NAME!.ini"\r
+\r
+if not exist "!INI!" (\r
+  echo [错误] 找不到 product.ini: !INI!\r
+  exit /b 1\r
+)\r
+\r
+set "DEV_TYPE="\r
+set "SRV_TYPE="\r
+set "VERSION="\r
+for /f "usebackq tokens=1,* delims==" %%a in ("!INI!") do (\r
+  if /i "%%~a"=="DEV_TYPE" set "DEV_TYPE=%%~b"\r
+  if /i "%%~a"=="SRV_TYPE" set "SRV_TYPE=%%~b"\r
+  if /i "%%~a"=="VERSION" set "VERSION=%%~b"\r
+)\r
+\r
+if "!DEV_TYPE!"=="" (\r
+  echo [错误] product.ini 中未定义 DEV_TYPE\r
+  exit /b 1\r
+)\r
+if "!SRV_TYPE!"=="" (\r
+  echo [错误] product.ini 中未定义 SRV_TYPE\r
+  exit /b 1\r
+)\r
+if "!VERSION!"=="" (\r
+  echo [错误] product.ini 中未定义 VERSION\r
+  exit /b 1\r
+)\r
+set "VERSION=!VERSION:"=!"\r
+for /f "delims=" %%s in ("!VERSION!") do set "VERSION=%%s"\r
+set "VERSION=!VERSION: =!"\r
+\r
+set "SRC_CFG=!CORE_BASE!\products\configs\!DEV_TYPE!\default_config.py"\r
+set "SRC_SRV=!CORE_BASE!\products\srv_configs\!SRV_TYPE!\default_srv.py"\r
+\r
+if not exist "!SRC_CFG!" (\r
+  echo [错误] 找不到设备配置: !SRC_CFG!\r
+  exit /b 1\r
+)\r
+if not exist "!SRC_SRV!" (\r
+  echo [错误] 找不到服务器配置: !SRC_SRV!\r
+  exit /b 1\r
+)\r
+\r
+echo [信息] 覆盖 core\default_config.py ^<- products\configs\!DEV_TYPE!\r
+copy /y "!SRC_CFG!" "!CORE_BASE!\default_config.py" >nul\r
+if errorlevel 1 (\r
+  echo [错误] copy default_config 失败\r
+  exit /b 1\r
+)\r
+\r
+echo [信息] 覆盖 core\default_srv.py ^<- products\srv_configs\!SRV_TYPE!\r
+copy /y "!SRC_SRV!" "!CORE_BASE!\default_srv.py" >nul\r
+if errorlevel 1 (\r
+  echo [错误] copy default_srv 失败\r
+  exit /b 1\r
+)\r
+\r
+cd Helios_SDK\r
+helios clean\r
+if errorlevel 1 (\r
+  echo [错误] helios clean 失败\r
+  cd ..\r
+  exit /b 1\r
+)\r
+cd ..\r
+\r
+call new.bat 7PIN_1_5 !PRODUCT_NAME!\r
+if errorlevel 1 (\r
+  echo [错误] 编译失败 ^(new.bat^)\r
+  exit /b 1\r
+)\r
+\r
+set "REL_DIR=Helios_SDK\opt\release\EG810MCN_GA_VOLTE"\r
+if not exist "!REL_DIR!" (\r
+  echo [错误] 编译产物目录不存在: !REL_DIR!\r
+  exit /b 1\r
+)\r
+\r
+set "D8=%date:~0,4%%date:~5,2%%date:~8,2%"\r
+set "THMS=%time:~0,2%%time:~3,2%%time:~6,2%"\r
+set "THMS=!THMS: =0!"\r
+set "BUILD_TIME=!D8!_!THMS!"\r
+\r
+set "COMMIT=nogit"\r
+for /f "delims=" %%h in ('git -C "%~dp0.." rev-parse --short HEAD 2^>nul') do set "COMMIT=%%h"\r
+if "!COMMIT!"=="" set "COMMIT=nogit"\r
+\r
+set "NEWNAME=!PRODUCT_NAME!_!DEV_TYPE!_!SRV_TYPE!_!VERSION!_!BUILD_TIME!_!COMMIT!"\r
+\r
+if not exist "release" mkdir "release"\r
+\r
+echo [信息] 复制产物到 release\!NEWNAME!\r
+xcopy /E /I /Y "!REL_DIR!" "release\!NEWNAME!\" >nul\r
+if errorlevel 1 (\r
+  echo [错误] xcopy 失败\r
+  exit /b 1\r
+)\r
+\r
+echo [完成] release\!NEWNAME!\r
+exit /b 0\r
index c4947b9..b9dbca1 100644 (file)
@@ -1,2 +1,27 @@
-echo Version="V1.0" > project\%1%\sdk\services\microPython\ports\quectel\core\versions.py
-echo Build_Time="%date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,8%" >> project\%1%\sdk\services\microPython\ports\quectel\core\versions.py
\ No newline at end of file
+@echo off
+set "PROJ=%~1"
+set "PRODUCT_NAME=%~2"
+if "%PRODUCT_NAME%"=="" set "PRODUCT_NAME=k8"
+
+set "CORE_BASE=project\%PROJ%\sdk\services\microPython\ports\quectel\core"
+set "INI=%CORE_BASE%\products\product_%PRODUCT_NAME%.ini"
+
+if not exist "%INI%" (
+  echo [???] ?????product.ini: %INI%
+  exit /b 1
+)
+
+set "VERSION="
+for /f "usebackq tokens=1,* delims==" %%a in ("%INI%") do (
+  if /i "%%~a"=="VERSION" set "VERSION=%%~b"
+)
+if "%VERSION%"=="" (
+  echo [???] %INI% ?????? VERSION
+  exit /b 1
+)
+
+set "VERSION=%VERSION:\"=%"
+set "VERSION=%VERSION: =%"
+
+echo Version="%VERSION%" > "%CORE_BASE%\versions.py"
+echo Build_Time="%date:~0,4%-%date:~5,2%-%date:~8,2% %time:~0,8%" >> "%CORE_BASE%\versions.py"\r
diff --git a/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/7PIN/default_config.py b/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/configs/7PIN/default_config.py
deleted file mode 100644 (file)
index 456c568..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-# 设备分支配置:7PIN\r
-# 仅用于编译/打包阶段选择,不作为运行时加载入口。\r
-\r
-DEV_TYPE = "7PIN"\r
-\r
-LED_GPIO = ("GPIO36", "GPIO44", "GPIO43")  # (R, G, B)\r
-UART_SUPPORTED = False\r
-LANG = "zh"\r
-\r
-BT_POWER_MOTOR_ENABLED = False\r
-PIN_BT_ON_GPIO = None\r
-PIN_MOT_GPIO = None\r
-AUDIO_QDAI_CFG = None\r
-\r
-EXTINT_AI_GPIO = "GPIO22"\r
-PWK_KEY_GPIO = "GPIO26"\r
-\r
-BT_WAKEUP_4G_ENABLED = False\r
-EXTINT_WAKEUP_CTA1_GPIO = None\r
-PIN_WAKEUP_BT_GPIO = None\r
-\r
-# ---- 按键/防抖差异 ----\r
-KEY_RELEASE_DEBOUNCE_COUNT = 5\r
-AI_LONG_PRESS_POWER_OFF_ENABLED = False\r
-\r
-# ---- 开机提示/语音参数默认值 ----\r
-POWER_ON_TONE_ENABLED = True\r
-POWER_ON_TONE_DEFAULT = "你好,我来了"\r
-VAD_SILENCE_DEFAULT = 300\r
-VC_TTS_VOICE_TYPE_DEFAULT = None\r
-VC_TTS_VOICE_KEY_DEFAULT = None\r
-\r
-# VC WebSocket 路径(ws://{AMP_SERVER}/{VC_WS_PATH}...)\r
-VC_WS_PATH = "vc/agent"\r
-\r
-# 是否支持蓝牙 OTA\r
-BT_OTA_ENABLED = False\r
-UPLOAD_START_TONE_ENABLED = False\r
-THINKING_LED_MODE = "flicker_blue_green"\r
-VAD_ACTIVE_BLUE_LED = True\r
-CMD_TOGGLE_MODE_TO_PTT_TTS = "已切换到单对话模式"\r
-CMD_TOGGLE_MODE_TO_LONG_TTS = "已切换到长对话模式"\r
-BT_VOICE_FEATURES_ENABLED = False\r
-POWEROFF_CMD_CLOSE_ONLY = True\r
-KWS_PTT_HINT = "请您按住圆形的按钮开始讲话,讲完松开即可 "\r
-DIALOG_BOT_OPTION = None\r
-DIALOG_PROVIDER_DEFAULT = None\r
-KEYWORDS_FROM_VOICE_TYPE = False\r
-\r
-# ---- 按键音/提示音策略 ----\r
-KEY_PRESS_TONE_FILE = "U:/static/start.mp3"\r
-KEY_PRESS_TONE_DELAY_MS = 0\r
-PTT_HINT = "请您按住圆形的按钮开始讲话,讲完松开即可 "\r
-\r
diff --git a/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/7PIN/default_config.py b/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/configs/7PIN/default_config.py
new file mode 100644 (file)
index 0000000..424c7b7
--- /dev/null
@@ -0,0 +1,128 @@
+# 设备侧默认配置(freeze 内置)。\r
+#\r
+# 加载优先级(由 vc_config.py 执行):\r
+# 1) usr/default_config.py(或 usr/defualt_config.py)\r
+# 2) 本文件 default_config.py\r
+\r
+# 当前设备类型(编译期间确定;现场仅可用 usr/default_config.py 覆盖)\r
+DEV_TYPE = "7PIN"\r
+\r
+# 当前设备配置(仅保留“设备差异项”,不要放运行态变量)\r
+# led_gpio 使用 Pin 属性名(字符串),由 vc_config.py 转成 Pin.GPIOxx 常量。\r
+LED_GPIO = ("GPIO36", "GPIO44", "GPIO43")  # (R, G, B)\r
+\r
+# LED 电平极性(是否“反向”点亮)。\r
+# - 默认 LED_ACTIVE_LOW=False:高电平点亮(write(1)=亮)\r
+# - 若你的硬件是低电平点亮(write(0)=亮),将 LED_ACTIVE_LOW=True\r
+# - 若仅某一路反相,用 LED_ACTIVE_LOW_RGB 单独配置(按 LED_GPIO 顺序 R/G/B)\r
+LED_ACTIVE_LOW = False\r
+LED_ACTIVE_LOW_RGB = None  # 例如 (True, False, False) 表示仅红灯反相\r
+# LED_ACTIVE_LOW_RGB = (True, False, False)\r
+\r
+# 是否支持 UART 相关能力(例如 7PIN_1_5 才允许走串口)\r
+UART_SUPPORTED = False\r
+\r
+# 语言/地区(如 zh/en),用于少量文案/逻辑差异\r
+LANG = "zh"\r
+\r
+# --------------------\r
+# 硬件差异项(由每个设备的 default_config 固定)\r
+# --------------------\r
+LED_DEBUG = True\r
+KEY_LED_DEBUG = True\r
+HW_STATUS_DEBUG = True\r
+\r
+# 是否需要初始化蓝牙电源/马达/音频IIS配置等(原先仅 7PIN_1_5)\r
+BT_POWER_MOTOR_ENABLED = False\r
+PIN_BT_ON_GPIO = None      # 例如 "GPIO31"\r
+PIN_MOT_GPIO = None        # 例如 "GPIO36"\r
+\r
+# audio.set_qdai_cfg(...) 参数;若为 None 则不调用\r
+AUDIO_QDAI_CFG = None      # 例如 (1,0,0,2,0,1,1,1)\r
+\r
+# AI 按键中断与电源键中断引脚(ExtInt.GPIOxx)\r
+EXTINT_AI_GPIO = "GPIO22"\r
+PWK_KEY_GPIO = "GPIO26"\r
+\r
+# 蓝牙唤醒 4G/4G 唤醒蓝牙相关(原先仅 7PIN_1_5)\r
+BT_WAKEUP_4G_ENABLED = False\r
+EXTINT_WAKEUP_CTA1_GPIO = None  # 例如 "GPIO22"\r
+PIN_WAKEUP_BT_GPIO = None       # 例如 "GPIO21"\r
+\r
+# --------------------\r
+# 按键/防抖差异\r
+# --------------------\r
+\r
+# 释放防抖阈值(KeyAI/pwk):原代码部分设备用 3,其他用 5\r
+KEY_RELEASE_DEBOUNCE_COUNT = 5\r
+\r
+# 是否允许 AI 键长按 8 秒触发关机逻辑(原 jswm/jswm_BOX)\r
+AI_LONG_PRESS_POWER_OFF_ENABLED = False\r
+\r
+# --------------------\r
+# 开机提示/语音参数默认值(与具体产品绑定,编译期决定)\r
+# --------------------\r
+\r
+# 若为 None 或 POWER_ON_TONE_ENABLED=False,则不开机播报提示词\r
+POWER_ON_TONE_ENABLED = True\r
+POWER_ON_TONE_DEFAULT = "你好,我来了"\r
+\r
+# VAD 静音阈值默认值(ms)\r
+VAD_SILENCE_DEFAULT = 300\r
+\r
+# 默认音色配置(与 ai_VC.py 中格式保持一致)\r
+VC_TTS_VOICE_TYPE_DEFAULT = None  # dict 或 None(None 表示沿用 ai_VC.py 内置兜底/存储值)\r
+VC_TTS_VOICE_KEY_DEFAULT = None   # 例如 "男"/"童"\r
+\r
+# VC WebSocket 路径(ws://{AMP_SERVER}/{VC_WS_PATH}...)\r
+VC_WS_PATH = "vc/agent"\r
+\r
+# 是否支持蓝牙 OTA(原先仅 7PIN_1_5 会检查 bt_ota)\r
+BT_OTA_ENABLED = False\r
+\r
+# 是否在“开始上传语音”时播放成功提示音(原逻辑:非 7PIN/7PIN_1_5/7PIN_coze 才播)\r
+UPLOAD_START_TONE_ENABLED = False\r
+\r
+# LLM thinking 阶段 LED 策略:flicker_blue_green / open_red_green\r
+THINKING_LED_MODE = "flicker_blue_green"\r
+\r
+# 收到 vad.active 时是否强制切回蓝灯\r
+VAD_ACTIVE_BLUE_LED = True\r
+\r
+# 本地指令:切换对话模式时的提示语(是什么语言就写什么)\r
+CMD_TOGGLE_MODE_TO_PTT_TTS = "已切换到单对话模式"\r
+CMD_TOGGLE_MODE_TO_LONG_TTS = "已切换到长对话模式"\r
+\r
+# 蓝牙/语音留言类本地指令是否启用(原先仅 7PIN_1_5)\r
+BT_VOICE_FEATURES_ENABLED = False\r
+\r
+# “关机”语音指令是否仅关闭对话(不触发 Power_off)。原逻辑:7PIN/7PIN_coze/7PIN_1_5 只 Close\r
+POWEROFF_CMD_CLOSE_ONLY = True\r
+\r
+# 关键词唤醒时在 PTT 模式下播报的提示语\r
+KWS_PTT_HINT = "请您按住圆形的按钮开始讲话,讲完松开即可 "\r
+\r
+# 对话智能体/工作流默认配置(编译期确定;可在 usr/default_config.py 覆盖)\r
+# 结构示例:\r
+# DIALOG_BOT_OPTION = {"bot_id":"...", "workflow_id":"...", "use_workflow":True}\r
+DIALOG_BOT_OPTION = None\r
+\r
+# dialog_attributes.provider 覆盖(None 表示沿用存储配置 dialog_attributes_provider)\r
+DIALOG_PROVIDER_DEFAULT = None\r
+\r
+# 是否从 VC_TTS_voice_type 的 key 列表生成 ASR 热词\r
+KEYWORDS_FROM_VOICE_TYPE = False\r
+\r
+# --------------------\r
+# 按键音/提示音策略(设备差异项)\r
+# --------------------\r
+\r
+# AI 键按下时:若设置了该文件路径,则在“无 VC 流播放中”时播放该提示音(例如 7PIN 用 start.mp3)\r
+KEY_PRESS_TONE_FILE = None  # 例如 "U:/static/start.mp3"\r
+\r
+# AI 键按下时:延迟播放按键音(ms),用于规避蓝牙连接瞬间不出声等问题(例如 7PIN_1_5 取 300)\r
+KEY_PRESS_TONE_DELAY_MS = 0\r
+\r
+# PTT 提示语(单对话模式,未长按时的提示;是什么语言就写什么)\r
+PTT_HINT = "请您按住圆形的按钮开始讲话,讲完松开即可 "\r
+\r
diff --git a/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/product_k8.ini b/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/product_k8.ini
new file mode 100644 (file)
index 0000000..8a7f065
--- /dev/null
@@ -0,0 +1,3 @@
+DEV_TYPE=7PIN
+SRV_TYPE=beike_dev
+VERSION=V1.1
@@ -1,9 +1,9 @@
 本目录用于**服务器环境地址配置**,按 `SERVER_ENV` 分类管理。\r
 \r
 示例:\r
-- `beike.py`:北科测试\r
-- `kxc.py`:科学城 demo\r
-- `beike_dev.py`:北科开发环境\r
+- `beike/default_srv.py`:北科测试\r
+- `kxc/default_srv.py.py`:科学城 demo\r
+- `beike_dev/default_srv.py.py`:北科开发环境\r
 \r
 每个环境文件需要导出以下常量:\r
 - `DMP_BASE`\r
diff --git a/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/srv_configs/beike/default_srv.py b/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/srv_configs/beike/default_srv.py
new file mode 100644 (file)
index 0000000..f784ef6
--- /dev/null
@@ -0,0 +1,38 @@
+\r
+\r
+# 设备侧 Server 配置(freeze 内置)。\r
+#\r
+# 注意:\r
+# - `constants.py` 中固定不变的常量(事件名/枚举)继续保留在 constants.py。\r
+# - 本文件统一承载“协议/服务器相关的可配置项”,并支持 usr 覆盖。\r
+\r
+# ---- 环境选择(服务器地址由 srv_configs/<SERVER_ENV>.py 承载)----\r
+# 服务器环境配置,切换只需修改 SERVER_ENV\r
+# "beike" = 北科测试, "kxc" = 科学城demo\r
+SERVER_ENV = "beike"\r
+\r
+# ---- 默认环境地址(即使没有 srv_configs/<env>.py 也能工作)----\r
+# 这里默认给出 beike_dev 的地址;若要切换环境,建议:\r
+# - 修改 SERVER_ENV\r
+# - 同时提供对应的 srv_configs/<SERVER_ENV>.py(或 usr 覆盖)\r
+# SERVER_ENV = beike(北科测试)\r
+\r
+DMP_BASE = "http://dmp.raisound.com/bz-api"\r
+AMP_SERVER = "115.190.94.208:22080"\r
+IOT_WS_URL = "ws://wsiot-nocdn.raisound.com/ws-hub/dev/v1"\r
+\r
+# ---- DMP/认证/时间同步等(默认使用 constants.DMP_BASE 拼接)----\r
+DMP_TIME_PATH = "/dev/time"\r
+DMP_ACTIVE_PATH = "/dev/auth/active"\r
+DMP_SIGN_IN_PATH = "/dev/auth/sign_in"\r
+DMP_TOKEN_PATH = "/dev/auth/token"\r
+DMP_ICCID_PATH = "/dev/iccid"\r
+DMP_DEV_CONFIG_PATH_FMT = "/dev/config/{}"  # deviceId\r
+\r
+# ---- OTA(现网有的走 DMP_BASE,有的走 qipai 域名;先集中成可配项)----\r
+OTA_TASK_URL_FMT = "https://dmp-api.qipai.com/qp-dmp-api/ota/task?deviceId={}&sourceVersion={}"\r
+OTA_RESULT_PATH_FMT = "/ota/result?deviceId={}&currentVersion={}"\r
+\r
+# ---- AMP/健康检查等 ----\r
+AMP_HEALTH_URL_FMT = "http://{}/health?task_id={}"\r
+\r
diff --git a/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/srv_configs/beike_dev/default_srv.py b/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/srv_configs/beike_dev/default_srv.py
new file mode 100644 (file)
index 0000000..5ae3122
--- /dev/null
@@ -0,0 +1,34 @@
+# 设备侧 Server 配置(freeze 内置)。\r
+#\r
+# 注意:\r
+# - `constants.py` 中固定不变的常量(事件名/枚举)继续保留在 constants.py。\r
+# - 本文件统一承载“协议/服务器相关的可配置项”,并支持 usr 覆盖。\r
+\r
+# ---- 环境选择(服务器地址由 srv_configs/<SERVER_ENV>.py 承载)----\r
+# 服务器环境配置,切换只需修改 SERVER_ENV\r
+# "beike" = 北科测试, "kxc" = 科学城demo\r
+SERVER_ENV = "beike_dev"\r
+\r
+# ---- 默认环境地址(即使没有 srv_configs/<env>.py 也能工作)----\r
+# 这里默认给出 beike_dev 的地址;若要切换环境,建议:\r
+# - 修改 SERVER_ENV\r
+# - 同时提供对应的 srv_configs/<SERVER_ENV>.py(或 usr 覆盖)\r
+DMP_BASE = "http://dmp-dev.raisound.com/dmp-api"\r
+AMP_SERVER = "118.145.158.207:22080"\r
+IOT_WS_URL = "ws://dmp-dev.raisound.com/iot-api/ws-hub/dev/v1"\r
+\r
+# ---- DMP/认证/时间同步等(默认使用 constants.DMP_BASE 拼接)----\r
+DMP_TIME_PATH = "/dev/time"\r
+DMP_ACTIVE_PATH = "/dev/auth/active"\r
+DMP_SIGN_IN_PATH = "/dev/auth/sign_in"\r
+DMP_TOKEN_PATH = "/dev/auth/token"\r
+DMP_ICCID_PATH = "/dev/iccid"\r
+DMP_DEV_CONFIG_PATH_FMT = "/dev/config/{}"  # deviceId\r
+\r
+# ---- OTA(现网有的走 DMP_BASE,有的走 qipai 域名;先集中成可配项)----\r
+OTA_TASK_URL_FMT = "https://dmp-api.qipai.com/qp-dmp-api/ota/task?deviceId={}&sourceVersion={}"\r
+OTA_RESULT_PATH_FMT = "/ota/result?deviceId={}&currentVersion={}"\r
+\r
+# ---- AMP/健康检查等 ----\r
+AMP_HEALTH_URL_FMT = "http://{}/health?task_id={}"\r
+\r
diff --git a/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/srv_configs/kxc/default_srv.py b/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/products/srv_configs/kxc/default_srv.py
new file mode 100644 (file)
index 0000000..6d952ab
--- /dev/null
@@ -0,0 +1,37 @@
+\r
+\r
+# 设备侧 Server 配置(freeze 内置)。\r
+#\r
+# 注意:\r
+# - `constants.py` 中固定不变的常量(事件名/枚举)继续保留在 constants.py。\r
+# - 本文件统一承载“协议/服务器相关的可配置项”,并支持 usr 覆盖。\r
+\r
+# ---- 环境选择(服务器地址由 srv_configs/<SERVER_ENV>.py 承载)----\r
+# 服务器环境配置,切换只需修改 SERVER_ENV\r
+# "beike" = 北科测试, "kxc" = 科学城demo\r
+SERVER_ENV = "kxc"\r
+\r
+# ---- 默认环境地址(即使没有 srv_configs/<env>.py 也能工作)----\r
+# 这里默认给出 beike_dev 的地址;若要切换环境,建议:\r
+# - 修改 SERVER_ENV\r
+# - 同时提供对应的 srv_configs/<SERVER_ENV>.py(或 usr 覆盖)\r
+# SERVER_ENV = kxc(科学城 demo)\r
+DMP_BASE = "http://kxc.raisound.com/bz-api"\r
+AMP_SERVER = "kxc.raisound.com/amp-api"\r
+IOT_WS_URL = "ws://kxc.raisound.com/iot-api/ws-hub/dev/v1"\r
+\r
+# ---- DMP/认证/时间同步等(默认使用 constants.DMP_BASE 拼接)----\r
+DMP_TIME_PATH = "/dev/time"\r
+DMP_ACTIVE_PATH = "/dev/auth/active"\r
+DMP_SIGN_IN_PATH = "/dev/auth/sign_in"\r
+DMP_TOKEN_PATH = "/dev/auth/token"\r
+DMP_ICCID_PATH = "/dev/iccid"\r
+DMP_DEV_CONFIG_PATH_FMT = "/dev/config/{}"  # deviceId\r
+\r
+# ---- OTA(现网有的走 DMP_BASE,有的走 qipai 域名;先集中成可配项)----\r
+OTA_TASK_URL_FMT = "https://dmp-api.qipai.com/qp-dmp-api/ota/task?deviceId={}&sourceVersion={}"\r
+OTA_RESULT_PATH_FMT = "/ota/result?deviceId={}&currentVersion={}"\r
+\r
+# ---- AMP/健康检查等 ----\r
+AMP_HEALTH_URL_FMT = "http://{}/health?task_id={}"\r
+\r
diff --git a/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/srv_configs/beike.py b/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/srv_configs/beike.py
deleted file mode 100644 (file)
index 1852494..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-# SERVER_ENV = beike(北科测试)\r
-\r
-DMP_BASE = "http://dmp.raisound.com/bz-api"\r
-AMP_SERVER = "115.190.94.208:22080"\r
-IOT_WS_URL = "ws://wsiot-nocdn.raisound.com/ws-hub/dev/v1"\r
-\r
diff --git a/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/srv_configs/beike_dev.py b/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/srv_configs/beike_dev.py
deleted file mode 100644 (file)
index a6a8d2f..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-# SERVER_ENV = beike_dev(北科开发环境)\r
-\r
-DMP_BASE = "http://dmp-dev.raisound.com/dmp-api"\r
-AMP_SERVER = "118.145.158.207:22080"\r
-IOT_WS_URL = "ws://dmp-dev.raisound.com/iot-api/ws-hub/dev/v1"\r
-\r
diff --git a/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/srv_configs/kxc.py b/2.sdk/project/7PIN_1_5/sdk/services/microPython/ports/quectel/core/srv_configs/kxc.py
deleted file mode 100644 (file)
index 5c21635..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-# SERVER_ENV = kxc(科学城 demo)\r
-\r
-DMP_BASE = "http://kxc.raisound.com/bz-api"\r
-AMP_SERVER = "kxc.raisound.com/amp-api"\r
-IOT_WS_URL = "ws://kxc.raisound.com/iot-api/ws-hub/dev/v1"\r
-\r
index ddd75c7..33a3a68 100644 (file)
Binary files a/2.sdk/project/7PIN_1_5/sdk/system/platform/ASR_1606/boards/EG810MCN_GA_VOLTE/images/firmware_base_release_pack.zip and b/2.sdk/project/7PIN_1_5/sdk/system/platform/ASR_1606/boards/EG810MCN_GA_VOLTE/images/firmware_base_release_pack.zip differ
index cccf797..a33dd45 100644 (file)
Binary files a/2.sdk/project/7PIN_1_5/usr/audio_ve.nvm and b/2.sdk/project/7PIN_1_5/usr/audio_ve.nvm differ