原理图/PCB 已在 EasyEDA 里做到 12 页跨页 0 漏接,固件刚完成骨架包 A1。 这次是把已有的一切一次性纳入版本控制,没有改动任何设计内容。 纳入: - 设计与需求文档、PROGRESS.md、小米8 参考原理图 PDF 与追脚脚本 - .claude/ 下的 EasyEDA 桥接工具链与几何/网表缓存(eda-parts.json、 pcb-parts.json、pcb-pads.json、p2-ch1.json 等,是重画各页的唯一事实来源) - 117 张验证截图(本项目所有方向问题都是靠人眼看截图发现的,属于证据不是垃圾) - firmware/ 的 A1 骨架与 site/ 文档站源码 .gitignore 排除:构建产物(firmware/build、host/build、sdkconfig)、 site/node_modules、__pycache__、桥接日志 _bridge.log、脚本自标的 *.stale。 .gitattributes 默认 `* -text`:现有 .py/.json 大多是 CRLF,原样存, 不让 git 重写行尾。唯一例外是 *.sh 强制 LF —— 带 \r 的 shell 脚本 bash 跑不了。 Co-Authored-By: Claude Opus 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01QYuExfgyYa6DzRRcUso8M8
2.9 KiB
PhoneRail —— 五路手机直供电源板
给手机农场用的一块电源板:12V 输入,5 路独立 3.5~4.2V / 4A,直接从电池座给 小米8(dipper)主板供电(去掉电池和保护板),ESP32-S3 负责遥测、断电重启、 侧键模拟和 USB 通断。
先读这两份
| 文件 | 内容 |
|---|---|
五路直供电源板设计.md |
设计定稿 v1.6。规格、拓扑、逐项计算、保护链、BOM、PCB 要点、调试顺序、小米8 侧接口引脚定义。改任何设计决定都要同步更新它。 |
PROGRESS.md |
当前进度与下一步。原理图画到哪一页、还有哪些阻塞项。 |
设计文档里 §0.1 是决策清单(13 条已定稿,不要再重新讨论), §12 是待确认项。动手前先扫这两节。
画原理图时
工程已建好在 EasyEDA Pro 里,通过 easyeda-api skill 的 WebSocket 桥接操作。
动手前必须先读 easyeda-sch-geometry skill(项目级,在 .claude/skills/ 下)。
它记录了 Y 轴方向、旗/端口的旋转语义、坐标吸附、导线数组格式等一批实测约定——
这些坑每一个都已经真实踩过一次,不读会重蹈覆辙。
器件和工程的 UUID 全部缓存在 .claude/eda-parts.json,
直接读取即可,不用重新 lib_Device.search。
每次改完跑(它跑的是当前打开的那一页,所以先 openDocument 再验):
/c/Python314/python .claude/skills/easyeda-sch-geometry/scripts/verify_sch.py --nets
改完还要跑一次跨页对账,确认没有"全工程只有一个实例"的网络:
/c/Python314/python .claude/xpage.py
六项检查全过之后,还要让用户截图确认方向与排版——
几何验证证明不了"看着对",本项目所有方向问题都是靠人眼截图发现的。
(python .claude/shot.py <pageUuid> out.png 可以自己先截一张看。)
⚠️ 几何验证有一类抓不到的错:端口/旗的引脚和元件引脚放在同一个坐标时,
中间是一段零长度导线,验证会通过,重画那一页时才会真的断开。
本项目已经踩到三处(P2 的 K1_VUP、P1 的 BLD_REF/BLD_A)。见 skill §8a。
硬件参考资料
小米8原理图/Xiaomi_Mi_8_Schematic.pdf(44 页,Rev E8)——
主板电池座 J600、侧键 J601~J604、尾插 J1401 的引脚定义已从中逐脚追踪出来,
结论写在设计文档 §13。图纸本身是第三方扫描件,以实测为准。
两条容易搞混的约定
- 电池侧接排线的
P+/P−(保护板输出侧),不是B+/B−。 焊错边常温下现象完全正常, 只有过压时才暴露。判别方法和验证步骤见设计文档 §13.5 / §13.7。 - J600 的
GND3/GND4固定脚实际接的是 VBATT,不是地。 同理 J1401 的GND2是 USB_VBUS。 按名字当地用会直接短路电池。