🏠 home › concepts › iot-mass-production
tags
[IoT, 量产, 嵌入式, 治具, ICT, FCT, PCBA, BK7258]
created
2026-05-11
updated
2026-05-11
sources
[raw/snippets/bk7258-build/mass-production-knowledge-2026-05-11.md, raw/snippets/bk7258-build/mass-production-actual-implementation-2026-05-11.md]

定义

IoT 设备从 PCB 到成品的产线由两个工位串成,每个工位配一台治具(jig / fixture)。治具是一块底板 + pogo pin + 气动压板 + PC 连线,把"裸板 / 整机"临时变成可调试可灌入的设备。三元组烧录、固件刷写、电气测试、配网测试、老化测试这些"开机前的事"都在这两个工位上完成。这是后台工程师转 IoT 时最容易看不见的物理工程层——后台 CI/CD 类比里的 build / unit test / integration test 在这里有实物对应物。

为什么后台背景的工程师需要专门一页讲这事

iot-platform-fundamentals 已经把"后台 vs IoT"概念对照讲清楚了,但那一层都还在云端 / 设备端的代码视角。本页补产线物理视角——治具长什么样、PCBA 阶段和整机阶段能接到什么物理接口、哪些事必须在哪个工位做、为什么不能等到整机阶段再做。这一层不补,三元组烧录方案设计会从一开始就走偏(譬如设计成"装完外壳后用 USB 灌"——但那时 UART 已经接不到了)。

两个工位的物理形态对照

工位 别名 待测形态 治具能接到 适合做什么
PCBA 治具阶段 ICT/FCT 治具、首测 裸板(焊好元器件,没装外壳/喇叭/电池) UART、SWD、SPI Flash、所有 GPIO 测试点 烧 bootloader、烧固件、烧三元组、电气测试
整机测试阶段 总检、终测 已装好外壳的玩具 USB 充电口、外露按钮、喇叭/麦克风、WiFi/BLE 配网测试、功能测试、贴标签、老化

治具物理形态

┌────────────────────┐
│  气动压板(脚踏触发)│  ← 一踩压下,把 PCB 压到 pogo pin 上
└────────────────────┘
       ↓
   待测 PCB
       ↓
┌────────────────────┐
│  底板 + 定位柱        │  ← 定位柱保证 PCB 摆放位置精准
│  + Pogo pin(弹簧探针)│  ← 弹出戳到 PCB 测试焊盘(test point)
└────────────────────┘
       ↓
     PC(USB / 网线)   ← 跑烧录工具 + 测试程序

→ 相当于一个临时 USB 调试座,不用焊任何线就能连上 PCB 的 UART/SWD/电源。每片板放上去 → 踩脚踏 → PC 自动跑测试程序 → 蜂鸣器 OK/NG → 取下放下一片,30 秒一片是常见节拍。

CI/CD 类比(后台对照)

PCB 厂出板 → 贴片厂上料 → PCBA 治具(治具1)→ 组装厂装喇叭/电池/外壳 → 整机治具(治具2)→ 老化 → 包装
后台 CI/CD IoT 产线
git push 触发 build PCB 出板贴片
build + unit test PCBA 治具阶段(关注元器件级正确性 + 烧凭证)
integration test + smoke test 整机测试阶段(端到端功能 + 用户接口)
load test 老化测试(连续 24h 看是否稳定)
容器镜像入 registry 包装入库

→ 治具不是"质检"工具,是产线的部署工具 + 凭证灌入工具 + 测试套件三合一。后台世界的 CI/CD 是"代码到镜像",产线的治具是"PCB 到可上市设备"。

ICT 与 FCT 的工业细分

PCBA 治具阶段在传统术语里再分两层:

类型 全称 关注 典型测项
ICT In-Circuit Test 元器件级静态参数 电阻 / 电容 / 电感 / 二极管 / 短路 / 开路 / 缺件 / 错件
FCT Functional Circuit Test 系统级功能动态验证 给信号 → 看响应(按键 / LED / 通信)

当代趋势:元器件 PPM ≤ 50(万分之五故障率)后,ICT 比重在下降,FCT 是产线测试主力——把"刷固件 + 灌三元组 + 跑功能脚本"合并到 FCT 治具一站式做。本页"PCBA 治具阶段"的工程实操更接近 FCT。

治具成本与交期(行业行情):单台 3000~10000 元,3-7 天定制。这个数量级意味着小批量产品(< 1 万台)治具摊销 < 1 元/台,不是显著成本。

测试点设计要求(PCB 设计师与产线对话时的术语):测试焊盘直径 ≥ 0.8mm、间距 ≥ 1.2mm、定位孔精度 ≤ 0.05mm。这些数字写在 PCB 设计阶段,不是产线阶段——PCBA 测试点必须在 PCB layout 时就预留好,否则整批板没法上治具

为什么三元组必须在 PCBA 工位烧

整机阶段外壳合上之后: - UART 拉不出来 - SWD 拉不出来 - 只剩 USB 充电口 + 外露按钮 + 无线接口(WiFi/BLE)

那时再灌三元组,就只能走"产品本身的功能接口"(USB CDC / BLE OTA / 配网时偷偷塞)——所有这些都需要固件已经在跑且能联网,已经晚了。结论:PCBA 工位是唯一同时具备"裸 UART / 已经烧好固件 / 还没装壳"三个条件的窗口,是行业默认的三元组烧录点。

与 Sentino BK7258 项目的具体对接

2026-05-11 修正:本节首版写"三元组烧录尚未跑通 / 下一步走 AT+TRIPLE"——代码核查后已修正。

本项目(sentino-iot / bk7258-firmware)的产线现状:

维度 当前状态
代工厂 宣德
PCBA 工位 UART AT 通道 已通(AT+WLMAC 验 MAC 跑通)
三元组烧录代码路径 三条路径均已实现——编译期硬编码 / 厂测 AP(!FT@IOT1#)+ UDP 40000/40001 或厂测 MQTT / 动态注册到 mqtt-iot.sentino.jp:1883(v1.0.5 新增)。详见 triple-burning
当前默认 编译期硬编码 + 犀云平台测试三元组(AI_TRIPLE_USE=3,临时测试态,不是 Sentino 自家三元组)
真正的产线缺口 离线烧录通道——3 条路径全部需要在线(路径 2 要厂测 MQTT/UDP 服务、路径 3 要外网 MQTT),但宣德工厂 WiFi 不能连外网,路径 3 直接不可用,路径 2 要工厂内自建 broker

在线约束 + 工厂 WiFi 隔离 = 真实的产线工程问题

宣德产线生产 Blisoo 产品时已经验证:工厂 WiFi 出于安全策略不能连接外网。这意味着:

详见 triple-burning "真正的产品缺口:离线烧录通道" 段。

决策影响:PCBA 工位 vs 整机工位的能力分配

设计产线方案时实际要分配的事:

该哪个工位做 为什么
烧 bootloader PCBA UART 直接灌,最快
烧 application 固件 PCBA 同上
烧三元组(每片唯一) PCBA UART AT 通道 + 失败回收最容易,整机阶段没 UART
烧 MAC 不烧——BK7258 efuse 出厂已烧 AT+WLMAC 直接读
测电压 / 各 IO PCBA 需要测试点
配 WiFi 测云连接 整机 需要装好天线 + 喇叭 / 麦克风
测语音对话端到端 整机 同上
老化(24h 通电) 整机 PCBA 阶段板还没装电池 / 电源管理
贴标签 / 印 SN 整机 装完壳才有外露面

凡是涉及"外壳里才有的元器件"(喇叭 / 麦克风 / 电池 / 天线)的测试都必须放整机阶段;凡是涉及"裸板才能接到的接口"(UART / SWD / 测试点)的事都必须放 PCBA 阶段。这是产线方案设计的第一性原则。

行业常识与误区

相关概念