feat: 新增 reTerminal E1002(800×480 六色 E Ink)目标设备支持

- 新增 renderer_e1002.py:E1002Renderer 继承 DashboardRenderer,以 k=2 整数倍缩放复用全部组件,重排为 800×480 四段版式(时钟/天气、Claude Usage、今日实时、六色测试色条)
- DashboardRenderer 改造为支持 k 缩放系数(字体按 k 倍创建,组件像素常量随 k 缩放),k=1 保持 400×300 原版不变
- main.py 新增 --target e1002 参数:渲染 800×480 六色图 + 固定尺寸 index.html 到 output/e1002/,供 SenseCraft HMI 的 HTML 控件云端周期性抓取(不推送)
- config.py 新增 E1002 画布尺寸与输出路径常量
- README.md / CLAUDE.md 补充新设备的架构说明与用法
This commit is contained in:
2026-09-10 10:49:26 +08:00
parent 097b9d1d64
commit eab90bf3b5
6 changed files with 214 additions and 27 deletions

View File

@@ -19,7 +19,8 @@
```
eink-push/
├── main.py # 入口:取数据 → 渲染 → 推送
├── main.py # 入口:取数据 → 渲染 → 推送--target e1002 时改为产出 HTML 页)
├── renderer_e1002.py# reTerminal E1002800x480 六色版式 + 固定尺寸 index.html 生成
├── config.py # 配置:设备、天气、用量、字体、尺寸、推送参数、缓存路径
├── data.py # 数据层:拉真实数据并映射,失败回退占位 "--"(不回退 mock天气/趋势缓存
├── jm_api.py # jm-devops 后端统计接口客户端(设备密钥 client_secret 授权 + token 缓存)
@@ -45,6 +46,8 @@ pip install -r requirements.txt # 仅 Pillow>=10.0;网络请求用标准库
```bash
python3 main.py # 渲染并推送(设备取 .env 的 ZECTRIX_DEVICE_ID
python3 main.py --render-only # 只渲染到 output/dashboard.png不推送本地调试渲染用
python3 main.py --target e1002 # reTerminal E1002800x480 六色):产出 output/e1002/index.html + dashboard.png
# 部署到公网 HTTPS 后填入 SenseCraft HMI 的 HTML 控件(云端每周期重新抓取)
```
环境变量可覆盖配置(详见 `config.py`