IRI Filler Pro — 制造商工作范围说明(中文)
致:Shenzhen Smart Mold / Smart Tech E Ltd 工程团队 · 保密(NDA)· YAVU · 2026-08-18
本文件用一页说清三件事:哪些已经存在、哪些由你们完成、"设备软件已经写好"到底是什么意思。
英文原文以仓库中的 README.md、docs/HAL_SPEC.md、docs/API_CONTRACT.md 为准;如有出入,以英文为准。
一、这个项目是什么
我们有一款已经量产并验证多年的手动无针注射笔(IRI),用弹簧把透明质酸以高压射流打入皮肤。 现在要做它的电动版:手柄 + 底座(充电、显示)。手动笔就是参照标准——电动版必须达到与手动笔相同的注射压力和射流效果,验收时并排对比测试(凝胶穿透深度 ±10 %,1 / 5 / 10 单位的出液量 ±10 %)。
我们会寄给你们一台手动参照笔。它不是电动样机——它是标尺。
二、已经存在、无需再开发、也不应再报价的部分
1. 云端 / IoT 平台 —— 已上线运行
YAVU 的许可证登记系统(License Register)已经在生产环境运行,管理约 370 家美容工作室。
其中的 IoT 路由器负责:设备开通、鉴权、心跳、设置下发、按微升计费的射击上报、远程锁定 / 解锁、固件清单。
你们不需要做任何服务器开发。接口全部写在 docs/API_CONTRACT.md,含 JSON 示例。
2. 设备端控制软件 —— 已经写好并通过测试
仓库 src/core/ 里是完整的设备逻辑:
剂量选择 1–10 单位与 60 µl 上限、上弦或电容充电、击发、射击计数与计费、许可证校验、72 小时离线运行、锁定、安全看门狗、状态机、两种驱动的击发控制器(音圈 / 弹簧)、Wi-Fi/TLS 客户端、前面板四键逻辑、剂量腔选择、离线解锁码输入、固件远程更新(下载 + SHA-256 校验 + 仅在底座上刷写)。
它已通过 204 项自动化测试,可在任何 PC 上一秒内运行完毕,无需 ESP32、无需工具链、无需硬件:
git clone <仓库>
./tools/host_test.sh
3. 文档与设计输入
硬件抽象层合同(docs/HAL_SPEC.md v0.6)、API 合同、验收测试计划(docs/ACCEPTANCE_TEST_PLAN.md)、驱动需求(docs/DRIVE_REQUIREMENT.md)、实测尺寸与力值(measured data)、剂量腔说明(docs/CHAMBER_SELECTION.md)、UI 界面稿、开机素材、手动笔 CAD(cad/)。
三、"硬件还没有,软件怎么可能写好?"—— 回答
因为它是按专业嵌入式项目的通常做法写的:软件写在一个定义好的硬件接口之上,而不是写给某一块具体的板子。
固件分两层:
| 层 | 归属 | 内容 |
|---|---|---|
应用层 src/core/ |
YAVU,已完成 | 设备"做什么":剂量、击发、计数、计费、许可证、离线、锁定、看门狗、状态机、两种驱动控制器、网络客户端、面板逻辑、剂量腔选择、解锁码、远程更新 |
硬件层 src/hal/ |
你们,待编写 | 设备"怎么驱动硬件":哪个引脚驱动电机或音圈功率级、电容组如何充电和测量、开关 / 按键 / 电池如何读取、显示屏驱动、固件写入 Flash 的接口 |
应用层只通过一小组函数接触硬件,例如 startCock()、fire(profile)、isCocked()、plungerMm()、batteryPercent()、pressed()。它不关心背后是哪个电机、哪个音圈、哪个传感器。
正因如此,应用层能在任何板子存在之前写完,并在 PC 上用模拟硬件层(test/host/hal_sim.cpp)跑完全部测试。
test/host/hal_sim.cpp 同时就是你们那一层的完整参考实现——每个接口都用软件演示了一遍,是理解合同最快的方式。
第一块板子出来之后剩下的工作是用实测值替换台架假设:出液时间、力、标定常数在固件里都是占位值,通过配置写入设备,不需要改代码、不需要重新编译。
一句话:软件不是"为你们的硬件"写的,而是"在你们的硬件之上"写的。 所以它可以先存在;所以你们的软件范围只是驱动层和上板调试,而不是控制软件。
四、你们负责的部分
- 硬件:手柄与底座的电路板、驱动(音圈或电机 + 弹簧)、电源与充电、Wi-Fi 模块(板载预认证模块,CE-RED)、显示屏、外壳。
- 驱动层
/hal:按docs/HAL_SPEC.md实现接口,通过 Pull Request 提交;main分支受保护,由 YAVU 审核合并。 - 上板调试:把我们的固件跑在你们的板子上,用 YAVU 提供的凭据完成首台设备开通,在真实平台上验证。
- 验收台架测试:按
docs/ACCEPTANCE_TEST_PLAN.md执行,与手动参照笔并排对比。 - 两项测量:参照笔的实际击发压力(这是唯一让力值需求仍是范围而不是数字的原因);5 ml 补液腔的喷嘴孔径(从未测过,请用针规)。
一个 MCU。 板上一颗 ESP32-S3,跑我们的固件在上层,你们的驱动在下层。没有第二颗处理器,没有两套系统之间的串口协议,没有需要你们发明的东西。 如果你们出于技术原因希望给执行机构单独配一颗小控制器,可以——但跑我们固件的 ESP32-S3 必须是主控,每一次击发都由它授权;那样的话接口由我们定义。
五、关于驱动
两条路都在固件里,运行时自动识别:硬件层给出音圈驱动器就走直驱路径,否则走弹簧路径。切换不需要改 core。
我们首选音圈直驱。 它去掉了每次击发后 1.5–2.5 秒的电机上弦噪音,并允许可编程的双相击发。而且它让软件那一侧更简单——没有上弦电机、没有上弦时序。 实测几何(measured data):柱塞 Ø 3.60 mm = 10.18 mm²,喷嘴 0.18 mm,60 µl 行程 5.90 mm,力 75–360 N,占空比 1.25 %。短行程、低占空比对音圈是有利工况。 电机 + 弹簧是备选,同样请报价。请分开报价。
六、关于剂量腔
两种剂量腔都是 0.3 ml、同一螺纹,设备无法机械区分;其中一种上方加 5 ml 注射器补液,喷嘴可能更细。
不要在剂量腔里设计编码元件(编码电阻、霍尔磁铁)——腔体是已验证、已开模的零件,不做改动。
由操作者在设备上选择剂量腔,固件用每次击发的柱塞行程反查选择是否正确(已实现、已测试)。
你们那边只需要:一个"腔体在位 / 不在位"的接触点;在腔座留出两个弹片或一个磁铁槽的位置但不装;请把两种腔体做成不同颜色的原料作为选项报价。详见 docs/CHAMBER_SELECTION.md。
七、关于批量与报价(重要)
YAVU 是高端品牌,不是大批量制造商。计划:2 台样机 → 约 25 台 → 验证后约 100 台。多年累计可能超过 1000 台,但始终分批、按单,没有任何最低起订量。不开注塑模;外壳与机械件 CNC 或 3D 打印。 请:开发费用独立成立、不基于任何批量假设;分项报价(音圈 / 弹簧分开);样机数量与是否含工装;验收台架测试单列;1 / 10 / 50 / 100 台的单价(不含工装,可给区间)。 所有项目专属交付物(原理图、PCB 文件、固件适配、CAD、BOM、测试数据)归 YAVU 所有,不得用于其他客户。
八、请工程师做的三件事(十五分钟)
git clone仓库,读CONTRIBUTING.md和README.md顶部。- 运行
./tools/host_test.sh(只需 C++ 编译器)。 - 打开
test/host/hal_sim.cpp,看你们那一层长什么样。
之后再报价。有任何不清楚或前后矛盾的地方,请直接告诉我们——这对我们是有用的信息。
联系人:Ira Yasmin Lehmann · Patrick Heimansberg — info@yavu.de · WhatsApp +49 157 30226070
Source: firmware repo docs/MANUFACTURER_SCOPE.zh-CN.md · confidential · NDA