EG800 FT1 工厂烧录与产测上位机
本目录包含上位机源码、默认配置、测试、构建脚本和发布文档。最终交付物统一生成到
factory_host/dist/,工厂不需要接触项目源码。
工程结构
factory_host/
├─ src/ # Python 上位机源码
│ ├─ factory_host.py
│ └─ ft1_protocol.py
├─ config/ # 开发和发布使用的默认配置
│ └─ factory_host_config.json
├─ scripts/ # 音频、固件和 release 构建脚本
│ ├─ build_factory_audio_package.py
│ ├─ build_factory_firmware.ps1
│ └─ build_release.ps1
├─ tests/ # 自动测试
│ └─ test_factory_host.py
├─ docs/
│ ├─ USAGE.md # 工厂现场操作说明
│ └─ DEVELOPMENT.md # 开发、换包和发布说明
├─ firmware/ # 默认产测与正式固件
├─ vendor/ # 本地 Aboot 厂商工具,不提交
├─ build/ # 中间产物和开发日志,不提交
├─ dist/ # 最终交付目录,每次发布会重建
├─ requirements.txt
└─ README.md
build/ 和 dist/ 都被 Git 忽略。发布脚本只会清理 dist/,不会修改 src/、
config/、docs/、tests/ 或 build/。
功能
- 产测固件与正式固件独立保存并醒目标识。
- 持续检测 ASR AROM 下载口,按物理 USB 设备去重,支持多工位自动等待设备上电后烧录。
- 同一设备烧录成功后锁定,端口断开并重新出现后才允许烧录下一台。
- 自动烧录忽略同一设备枚举出的 DBG、AT、DIAG 和运行态串口,不会为它们创建伪工位。
- 自动识别 DBG UART,解析设备每 500 ms 广播的 FT1 状态。
- 显示七个测试节点、IMEI、ICCID、NFC UID、失败码和实时日志。
- 自动保存汇总 CSV 与单机 JSON,烧录和扫描过程不弹出控制台黑框。
快速验证
在项目根目录执行:
python -m pip install -r .\factory_host\requirements.txt
python -B -m unittest discover -s .\factory_host\tests -p "test_*.py" -v
python -B .\factory_host\src\factory_host.py
源码模式会读取 factory_host/config/factory_host_config.json,运行日志写入
factory_host/build/logs/,固件和下载器从现有 factory_host/dist/ 解析。
生成 Release
默认使用项目中的以下输入:
factory_host/firmware/test/EG800AKCN_11LG-FT1-factory-test.zip
factory_host/firmware/official/EG800AKCN_11LG-official-fac.zip
factory_host/vendor/aboot-tools-2024.08.08-win-x64/
执行:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\factory_host\scripts\build_release.ps1
生成:
factory_host/dist/
├─ START-EG800-FACTORY-TOOL.exe
├─ firmware/
│ ├─ EG800AKCN_11LG-FT1-factory-test.zip
│ └─ EG800AKCN_11LG-official-fac.zip
├─ .runtime/ # Windows 隐藏目录
│ ├─ burn_tool/
│ ├─ docs/USAGE.md
│ ├─ factory_host_config.json
│ ├─ release_manifest.json
│ └─ logs/
└─ EG800-Factory-Tool-Full-Package.zip
交付工厂时只发送 EG800-Factory-Tool-Full-Package.zip。解压后双击醒目的
START-EG800-FACTORY-TOOL.exe;不要单独移动 EXE、固件或 .runtime。
默认配置使用相对于发布目录的路径:
firmware/EG800AKCN_11LG-FT1-factory-test.zip
firmware/EG800AKCN_11LG-official-fac.zip
.runtime/burn_tool/aboot-tools-2024.08.08-win-x64/adownload.exe
文档
- 工厂操作:docs/USAGE.md
- 开发、更新固件与发布:docs/DEVELOPMENT.md
- 固件侧 FT1 协议:../docs/factory_test.md