|
|
804dcab65b
|
docs 目录重构:按产品线清晰分组 + ESP32 文档归类
- 新增 docs/ESP32_Luotianyi/:
* 收拢原根目录的 ESP32踩坑经验文档.md(之前散放在项目根)
* 迁入原 docs/ESP32/ESP32-S3-SCH-V1.4.pdf
* 整个 docs/ESP32/ 目录更名为 docs/ESP32_Luotianyi/,产品线命名更明确
- 新增 docs/Radxa_CM5/:
* 从 docs/OrangePi_CM5/ 分离 Android底层开发 _ Radxa Docs.html
* Radxa 和 OrangePi 是不同厂商板子,文档分目录存放避免混淆
- 根目录不再散落文档,所有硬件参考资料统一在 docs/ 下按产品分组
|
2026-04-23 14:04:29 +08:00 |
|
|
|
6517805884
|
Tailscale+SSH 指南 v3.2:新增双端开发工作流(第九部分)
记录 2026-04-23 新落地的「Mac 本地写代码 + 虚拟机编译」方案:
- 9.1 背景:虚拟机内装 Claude CLI 因 Anthropic 对机场 IP 的 API 级风控不可行
- 9.2 Mac 端环境:case-sensitive APFS 卷(避免 Linux 内核大小写冲突)+ HTTPS+PAT+Keychain
- 9.3 虚拟机端延续 SSH ed25519 over 443
- 9.4 Claude 自动化闭环:Mac 改 → push → SSH 虚拟机编译 → 看错误自修 → 循环
- 9.5 分支策略:main / dev/mac / feature/*
- 9.6 项目级 CLAUDE.md 机制(新对话零摩擦接手)
- 9.7 全部踩坑:ClashX SSH 劫持、7890 代理端口不实际转发、APFS 大小写、mihomo 绕不过 Anthropic 风控等
- 9.8 实测性能数据
|
2026-04-23 13:58:03 +08:00 |
|
|
|
d6a1e28975
|
远程开发环境升级:GitHub SSH 推送落地 + SMB 方案验证 + ESP32 串口优化
源代码管理 / 远程仓库(本次核心):
- 新增 GitHub 私有仓库 Leo-z8/OrangePi_CM5_Project(镜像 Android 13 SDK 关键路径)
- 本地 Git 仓库首次推送成功,远端 commit: c79995a30
- 白名单 .gitignore 追加通配符:device/rockchip/*/*/preinstall/*.apk
- 2 个 120MB camera360.apk 从 Git 历史排除(超 GitHub 100MB 限制,需另存备份)
- 认证方式切换为 SSH ed25519(ssh.github.com:443),永久免密,不依赖 Clash
- PAT 一次性推送后已撤销,凭证文件已清理
文档更新(Tailscale + SSH 远程开发操作指南 → v3.1):
- 4.5 新增 macOS SMB 挂载方案,并完整对比 Remote-SSH 在驱动开发场景下的差异
- 8.7 改写 GitHub 推送章节,SSH 为主推荐方案,HTTPS+PAT 降为应急备选
- 8.10 新增首次推送踩坑实录:100MB 单文件限制、git rev-list 去重陷阱、rwnd 瓶颈
- 8.11 新增实测数据:.git 774MB / 96,600 文件 / SSH 4-6 MiB/s 稳定无抖动
- 8.9 备份策略明确列出需另存的大文件清单
ESP32 HOLOMAIN 代码(02_HOLOMAIN_香橙派CM5开发板代码.ino):
- processCommand 响应统一走 Serial(USB CDC),不再回写 SerialLinux(UART0)
- 修复 Android 高频灯光命令占满 UART0 TX 导致 SORC_xxx/SO_BTx 刷卡数据延迟/丢失的问题
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-22 18:14:10 +08:00 |
|
|
|
713cbd1835
|
修复律动期间 UART0 TX 拥堵 + 补充踩坑文档 + 硬件文档归类 + Mac 开发工程入库
一、代码修复(HOLOMAIN.ino)
1、processCommand 响应改为只发 Serial (USB CDC / Windows 调试),不再回发 SerialLinux (Android)
背景:Android 随音乐律动高频发送 LED 命令时,ESP32 每条命令的响应挤占 UART0 TX,
导致刷卡产生的 SORC_xxx 业务数据延迟到达 Android,表现为律动期间刷卡经常无效
效果:UART0 TX 释放给业务数据使用,Windows 调试仍能通过 USB CDC 看到响应
二、踩坑经验文档补充(ESP32踩坑经验文档.md)
1、新增坑 12:音乐律动时高频 LED 命令导致 RFID 高概率失败【物理层面干扰】
2、内容涵盖:
- 现象描述与触发条件(律动期间 vs 静态场景)
- 根本原因推演:高频亮度跳变 → WS2812 电流瞬变 → 电源噪声耦合 → RC522 SPI 异常
- 与坑 7(WS2812 关中断)的区别:坑 12 是物理电源噪声,即使用 RMT 也无法避免
- 四层解决方案按优先级排列:
方案1 Android 端降频+去重+节拍化(已验证,60FPS→5次/秒,失败率显著降低)
方案2 ESP32 响应只发调试口(已实施,本次提交)
方案3 ESP32 亮度平滑过渡(预备方案,含完整代码和 step_max 调校参考)
方案4 RC522 供电去耦电容(硬件方案,终极根治)
3、经验教训:主机端源头减量 > 固件端平滑过渡 > 硬件去耦电容
三、硬件文档目录归类(docs/)
1、新建 docs/ESP32/ 分类目录
2、新建 docs/OrangePi_CM5/ 分类目录
3、移动原散落在 docs/ 根目录的文档到对应分类
4、新增资料:
- docs/OrangePi_CM5/OPI CM5 BASE-TABLET_V1_1_SCH.pdf(底板原理图)
- docs/OrangePi_CM5/开发工具用户手册_v1.0.pdf
四、Mac 开发工程入库(Luotianyi_Mac/)
1、新增 Luotianyi_Mac/Luotianyi_Mac.ino
2、用途:Windows 切换到 Mac 开发环境后,后续 ESP32 业务在此工程继续开发
3、HOLOMAIN.ino 保留作为 Windows Arduino IDE 下的基线版本
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-22 14:35:42 +08:00 |
|
|
|
90105a60ea
|
更新旧开发板代码备份
|
2026-04-21 17:22:33 +08:00 |
|
|
|
87926e48a4
|
适配 OrangePi CM5 Android 开发板 + 修复 ESP32 冷启动与稳定性问题
一、架构改造
1、双串口架构:Serial (USB-Serial-JTAG, USB2) 用于 Windows 调试日志,
SerialLinux (UART0/CH343, USB1) 用于 Android 业务数据收发
2、用 #define SerialLinux Serial0 别名引用 Arduino core 自带对象,
避免自建 HardwareSerial(0) 导致 RX ring buffer 冲突、命令无响应
二、RFID 冷启动稳定性(核心修复)
1、新增 rc522HardResetRuntime():显式拉低拉高 RST 做标准硬件复位时序
2、setup 中 3 次重试初始化 + 读 VersionReg 校验(0x91/0x92 为合法)
3、TaskRFID 运行时每 5 秒健康检查,异常自动恢复
背景:冷启动 GPIO14 浮空 50% 读到 HIGH,库仅软复位失败 → 刷卡永远无效
参考 miguelbalboa/rfid Issue #229、#269、#125
三、数据完整性
1、serialPrintlnSafe:互斥锁 + flush 保护业务数据输出
2、卡号格式校验 (HA + 阿拉伯数字),非法数据不发送
3、命令末尾 trim 兼容 \r\n (CRLF) 和 \n (LF) 两种行尾符
四、命令接收(双向打通)
1、processCommand(cmd, Stream& resp):响应回到发送方串口
2、handleCommandFromStream:双串口独立缓冲,Windows 和 Android 都能下发命令
3、新增 RESET 软复位命令(设备封装后无法物理按 RST 时使用)
五、启动稳定性(防硬件冲击与虚假事件)
1、LED 开机全黑启动,避免 186 颗 WS2812 同时点亮产生 4.5A 瞬时电流
冲击电源导致刚初始化的 RC522 进入异常状态
2、按键任务 lastState 从硬编码改为读取实际 GPIO 电平作为初始值
避免 GPIO16/17/18 无上下拉浮空触发虚假 SO_WAKEUP/SO_BT 事件
六、性能优化
1、TaskRFID 从 Core 1 迁至 Core 0,与 WS2812 关中断窗口物理隔离
2、LED 刷新频率 30FPS 降至 20FPS,关中断时间减少 33%
3、RFID 认证失败后 delay 从 100ms 降至 30ms,提升刷卡响应速度
4、USB CDC TX 缓冲区扩容至 4KB,降低突发输出时的截断概率
七、新增文件
1、ESP32踩坑经验文档.md:记录 11 个踩坑点 + 修复方案(含 GitHub Issue 佐证)
2、01_HOLOMAIN_旧开发板代码.ino:旧开发板稳定版本代码存档
3、02_HOLOMAIN_香橙派CM5开发板代码.ino:香橙派 CM5 适配版本代码存档
4、docs/ESP32-S3-SCH-V1.4.pdf:ESP32-S3 核心板硬件原理图
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-21 16:52:08 +08:00 |
|
|
|
75662e102e
|
补充 OrangePi CM5 Android 13 实际编译踩坑记录与修复方法
1、Dockerfile 加入实测必需的兼容包:libncurses5(Clang 依赖)、python2(Rockchip U-Boot make.sh 硬依赖)、libssl-dev、imagemagick、protobuf-compiler 等预防性包
2、新增编译后的 U-Boot 手动修复步骤:-F 参数不自动生成 MiniLoaderAll 和 trust.img,需手动调用 u-boot/make.sh rk3588 + trust.img 副本伪装 + -Mu 重打包
3、新增完整镜像产物清单,说明 update.img 作为 Rockchip 固件打包格式已包含所有分区镜像,首次烧录只需 update.img
4、新增分区单独烧录对照表,指导开发调试时精确刷分区(boot/super/uboot 等)节省时间
5、新增 10 个踩坑速查表,覆盖 SDK 下载、合并、编译、打包全流程
6、新增新电脑复现完整命令流水线,换电脑后按序执行可避开所有已知坑
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-21 10:01:29 +08:00 |
|
|
|
c21c4d2547
|
新增 OrangePi CM5 Android 13 编译环境配置指南
1、新增 3.7 节 OrangePi CM5 编译环境(与 Radxa CM5 平级):基于 Ubuntu 22.04 Docker 镜像,对齐 OrangePi 官方推荐环境
2、新增 OrangePi 分卷压缩包合并解压踩坑记录:官方文档的管道流式解压会出错,改用先合并再解压的方式
3、新增 OrangePi Dockerfile 模板和构建步骤(android-builder-orangepi:13.x)
4、新增 Radxa / OrangePi 双环境关键差异对比表
5、更新环境信息表:标注 Radxa 和 OrangePi 双环境状态
6、3.6 节重命名为 Radxa CM5 Android 12 编译环境(明确区分)
7、docs/ 新增 OrangePi CM5 Base 两本官方用户手册(v1.3 + Tablet v1.0)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-17 18:25:44 +08:00 |
|
|
|
3373e88e5c
|
新增远程开发操作指南和官方参考文档
1、新增 Tailscale + SSH 远程开发操作指南:Mac 跨网络连接 Windows 虚拟机的完整配置(网络架构、ClashX Pro 增强模式与 Tailscale 共存、Docker Android 编译环境、换新电脑迁移方案、故障排除)
2、新增 Radxa 官方 Android 底层开发文档(Dockerfile 环境参考)
3、新增 .gitignore,排除 macOS 自动生成的 .DS_Store
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-04-17 17:03:46 +08:00 |
|
|
|
1402dc6dee
|
本次修改内容如下:
1、增加代码备注;
2、上传NFC卡片的数据刷写操作指南;
|
2026-04-15 11:55:27 +08:00 |
|
|
|
8693ee1d29
|
1、洛天依项目ESP32部分业务-项目初始化
|
2026-03-05 17:12:48 +08:00 |
|