pNexus
|
d95cce5cf2
|
feat(ads1256): 添加 EMI 防护与寄存器自恢复机制
CS 引脚加内部上拉防止干扰误触发;新增 ads1256_recover() 在检测到
寄存器被改写时重写关键配置并验证恢复。
|
2026-05-19 14:50:04 +08:00 |
|
pNexus
|
0979866a7c
|
refactor(protocol): 新增 comm_protocol 协议收发解析层,ble_transport 退化为纯传输
- 删除 protocol.h,帧定义和标定命令码统一迁入 comm_protocol.h
- 新增 comm_protocol.c:上行组包(CoP/标定响应)、下行解析+msgq 分发
- ble_transport 剥离所有协议解析和参数 getter,仅保留字节收发+rx 回调注册
- main.c 初始化顺序:ble_transport → comm_protocol → adv_start → cal_init
- 更新 README 架构图和项目结构表,补充标定流程章节
- 更新 BALANCE_BOARD_PROTOCOL.md 增加标定命令/响应帧格式文档
|
2026-05-15 18:06:33 +08:00 |
|
pNexus
|
1a65bf0f22
|
feat(sensor): 增加 CoP 迟滞判定与 IIR 低通滤波,修复空载尖刺和负力对消
- 单通道负力钳零:压力传感器不可能产生负力,消除零漂通道对 total 的对消
- 迟滞阈值:进入 ≥5kg / 退出 <2kg,防止马达振动触发 VALID
- IIR 低通:重载(≥10kg)直通零延迟,轻载 alpha=0.3 平滑 2-3 帧
- 物理常量统一到 calibration.h,sensor.c 和 calibration.c 共享
- 新增 calibration 模块(L1/L2 标定状态机 + NVS 持久化)
|
2026-05-15 17:10:02 +08:00 |
|
pNexus
|
e5518ac17e
|
refactor(gml670x4): 将函数注释统一迁移到源文件
|
2026-05-14 21:30:24 +08:00 |
|
pNexus
|
93e7990fdf
|
refactor(ads1256): 修改等待 DRDY 和硬件复位函数返回值,增加超时处理
|
2026-05-14 21:17:53 +08:00 |
|
pNexus
|
ffafbc4c6a
|
refactor(protocol): 板面几何与 CoP 计算统一为 cm 单位,force 改 int16
compute_cop 直接输出 int16_t (cm/kg),消除打包时的浮点转换;
BOARD_HALF_WIDTH/LENGTH 从 mm 改 cm,传感器坐标表同步更新。
|
2026-05-12 16:23:55 +08:00 |
|
pNexus
|
f0072c3bd0
|
refactor(protocol): CoP 帧字段从 float 改为整型,单位 mm→cm / kg
cop_x/cop_y 改为 int16_t (cm),force 改为 uint16_t (kg),
帧长 17→11 字节,降低带宽占用;1 cm 精度满足平衡板场景需求。
|
2026-05-12 16:11:19 +08:00 |
|
pNexus
|
b72ea5334f
|
refactor(protocol): 移除上行帧 seq 字段,精简协议开销
BLE 链路层已有重传保序机制,应用层 seq 冗余且从未被接收端消费,
移除后 CoP 帧 18→17 字节、Encoder 帧 14→13 字节。
|
2026-05-12 15:58:46 +08:00 |
|
pNexus
|
353f9aca13
|
feat(button): 添加按键模块及初始化按键去皮功能
|
2026-05-11 14:23:05 +08:00 |
|
pNexus
|
dc525ea4e7
|
feat(gml670x4): 所有协议帧添加 CRC-8/MAXIM 校验
使用 Zephyr crc8() 对帧头之后的载荷计算 CRC,上行发送前填充、
下行接收时校验不通过则丢弃并告警。同步更新协议文档。
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-05-09 14:38:28 +08:00 |
|
pNexus
|
1e8809cf89
|
feat(gml670-v2): 添加传感器采集线程与主入口
- sensor: 独立 Zephyr 线程,4 通道×17 次均值采集→CoP→BLE 发送,
原子去皮请求,5Hz 调试日志
- main: 薄编排层,仅初始化 BLE 和传感器模块
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-30 17:37:38 +08:00 |
|
pNexus
|
1ad7a9d4ad
|
feat(gml670-v2): 添加 BLE NUS 传输层
BLE 广播/连接管理、NUS 上下行通信、下行参数解析
(Resistance/Spotter/Heartbeat),3 次重试发送机制。
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-30 17:39:22 +08:00 |
|
pNexus
|
97f0d65783
|
feat(gml670-v2): 添加二进制协议定义与 ADS1256 SPI 驱动
- protocol.h: CoP/Encoder/Resistance/Spotter/Heartbeat 帧定义,
GML670 50kg ADC→kg 标定参数
- ads1256: SPI 命令模式驱动,BUFEN=1 解决高阻抗负载误差,
3750 SPS 平衡精度与采样率,SELFCAL + 寄存器回读校验
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-30 17:39:05 +08:00 |
|