【免费下载链接】ha_washdata
Home Assistant integration for smart-plug appliance monitoring: detects cycles, matches programs, estimates time remaining. Supports washing machines, dryers, dishwashers and more.
Home Assistant WashData 是一款通过智能插座监测洗衣机、烘干机、洗碗机等家电的本地优先(Local-first)集成:它能识别洗衣程序、估算剩余时间并统计能耗,且检测与匹配全部在你的 Home Assistant 内完成。本文将讲清 WashData 收集哪些数据、哪些数据永远不会离开你的设备,并给出 Community Store(社区商店)从开启、采纳到分享的完整使用指南。
Home Assistant WashData 是什么?
WashData 是一个 Home Assistant 自定义集成,核心功能包括:
- 自动检测周期:从智能插座的功率曲线识别洗衣机/烘干机/洗碗机何时开始、何时结束;
- 程序匹配:通过曲线形状、时长和能耗识别你正在运行的程序(如"40° 棉麻 2小时");
- 剩余时间估算:基于已学习的程序档案给出分阶段倒计时;
- 能耗与费用统计:每个周期的电量、动态电价计费、历史趋势。
它支持 HACS 一键安装,也可以手动把 custom_components/ha_washdata 目录拷入 Home Assistant 的custom_components目录后重启。
本地优先设计:WashData 收集哪些数据?
这是很多新手最关心的问题。答案可以一句话概括:所有数据都保存在你自己的 Home Assistant 实例中,WashData 本身不向任何第三方发送使用统计或遥测数据。
本地存储的数据(都在你家里)
WashData 会在本地记录以下数据:
| 数据类型 | 内容 | 用途 |
|---|---|---|
| 功率历史 | 每次采样的功率读数(瓦特) | 周期检测与曲线匹配 |
| 周期记录 | 每次运行的起止时间、时长、能耗、匹配的程序 | 历史记录与统计 |
| 程序档案(Profile) | 你录制或标注的参考曲线 | 程序识别与倒计时 |
| 调试数据 | 匹配调试轨迹(可选) | 排错与调参 |
| 配置 | 每台设备的阈值与偏好 | 个性化检测 |
你可以在面板的Advanced > Diagnostics页面随时查看本地存储占用,并执行导出/导入备份:
💡备份技巧:
Export to JSON可以一键备份某台设备的全部档案与周期数据,换机迁移时再Import from JSON即可,全程不经过任何云端。
永远不会上传的数据
根据项目安全文档 SECURITY.md,WashData 明确不做这些事:
- ❌ 不发送使用分析或遥测数据到任何云服务;
- ❌ 不会"打电话回家"(phone home);
- ❌ 不下载外部程序档案或固件更新;
- ❌ 实体 ID、设备序列号、家庭地址、能耗统计等敏感信息永不外传。
唯一的例外是你主动开启并操作Community Store(见下文)——它默认关闭,不开启时所有网络调用都处于休眠状态(主控开关见 custom_components/ha_washdata/const.py 中的CONF_ENABLE_ONLINE_FEATURES,默认值为False)。
Community Store 完整使用指南
Community Store 是 WashData 唯一的网络功能:一个社区维护的家电设置目录,按品牌和型号组织。如果有人在用同款机器,你可以直接"采纳"(adopt)他的程序档案,省去自己录制的麻烦。
第一步:开启在线功能
- 打开侧边栏的WashData面板;
- 进入Advanced标签,点击右上角齿轮图标;
- 在Online & Community区域勾选Enable online features(每次安装只需开一次)。
这一步只是打开总开关,不会立即发送任何数据。该操作受管理员权限保护,详见 docs/internal/reference/11-community-store.md。
第二步:声明你的品牌与型号
每个设备的品牌/型号需要在设备级设置中声明:
Settings > Basic > Device info,分别选择Brand和Model。这两个字段支持输入时实时搜索目录,也就是说——声明家电本身就是找档案的过程:
⚠️ 注意:品牌/型号选择器不在齿轮菜单里,而是在 Settings 页。只有声明之后,Store标签页才有内容可显示(它只展示你品牌+设备类型下的条目)。
第三步:浏览并采纳同款设置
开启后,Store标签页会按你的品牌和设备类型展示社区目录:
- 浏览品牌 → 型号 → 程序档案 → 参考曲线,可以看到时长、峰值功率、平均功率、能耗等统计信息,以及下载量、评分等社区反馈;
- **采纳(Adopt)**单个参考周期:导入到你选定的档案(或新建同名档案);
- 下载整个设备包(Device Bundle):一次导入多台程序的曲线、阶段划分,甚至包括其他用户调好的检测参数。
如果找不到完全相同的型号,试试邻近型号——很多条目是别人申报但尚未贡献曲线的机器,同一台机器在不同地区常只是后缀不同(例如WM-100A与WM-100A-UK),通常是很好的起点。
分享你自己的程序数据
你录制的高质量参考曲线也可以回馈社区。分享前请了解上传了什么、没上传什么(完整说明见 SECURITY.md 的 Data Privacy 一节):
| ✅ 上传的内容 | ❌ 永不上传的内容 |
|---|---|
| 降采样后的功率曲线(≤10000 个点,custom_components/ha_washdata/store.py 用 LTTB 算法压缩) | 实体 ID、HA 地址、设备序列号 |
| 程序名称、时长、峰值/平均功率、能耗、特征值 | 日常运行历史(past_cycles) |
| 品牌、型号、设备类型(用于目录归类) | 终身能耗、费用等使用统计 |
| 数据质量代码(1-3);你的 GitHub 昵称(需勾选同意才显示) | 检测设置白名单以外的任何配置 |
🔒双重过滤:设置分享采用白名单机制,只有 20 个与"型号本身相关"的识别/匹配阈值(如
min_power、off_delay等,定义见 const.py)可以随设备包传播;实体 ID、通知服务、电价、采样频率等涉及你环境拓扑的配置被设计性排除。过滤在上传和下载时各执行一次(纵深防御)。
下载的数据存在哪?会不会污染统计?
采纳的曲线会被写入独立的reference_cycles存储区,永远不会混入你的真实运行历史(past_cycles)。因此:
- 导入的周期不会计入你的终身能耗/次数统计;
- 它只提供"形状"用于匹配,使用统计(平均能耗、次数、费用)永远只来自你自己的真实周期;
- 导入是幂等的:重复下载同一曲线不会重复计数;
- 你也不能把下载来的曲线二次分享给别人(防止目录数据倒卖式复制)。
账号与凭据安全细节
Community Store 的浏览和下载完全匿名,不需要任何账号。只有执行写入操作(分享、点赞、确认设备)时才需要连接 GitHub 账号:
- 面板的 Store 页面会引导你通过 GitHub 登录(浏览器弹窗授权);
- 集成获得一个 Firebaserefresh token,仅用于换取短期访问令牌;
- 该令牌存储在本地
ha_washdata_online配置文件中(custom_components/ha_washdata/store_account.py 管理)。
安全设计要点:
- 🔐关闭在线功能会立即清除已存储的令牌——被禁用的安装永远不会在磁盘上留下有效凭据;
- 🔐 令牌不写入日志、不出现在 Home Assistant 事件里,导出诊断时会被自动打码;
- 🔐 令牌只通过 Home Assistant 的认证 WebSocket 传输(见 custom_components/ha_washdata/store_client.py)。
如果家里有多名 Home Assistant 用户,还可在Advanced > Access Control中按用户设置权限(View / Edit / None),社区商店的所有账号与在线功能操作强制要求管理员身份:
常见问题 FAQ
Q1:我不开 Community Store,会有任何数据外发吗?
不会。检测、匹配、估算全部本地运行;唯一可能外发的是你自己配置的通知(如推送到手机 App),那取决于你选的通知目标,与 WashData 无关。
Q2:智能插座的数据会经过第三方服务器吗?
WashData 只读取 Home Assistant 内部的传感器实体(瓦特读数),数据链路是"插座 → 你自己的 HA"。是否经过云端取决于你智能插座的协议(Zigbee/Matter 本地组网最佳)。
Q3:实验性的 ML 子系统会上传数据吗?
不会。ML 子系统仅用 NumPy 实现,完全在本地运行,不下载模型、不调用外部服务,且默认关闭。
Q4:如何彻底移除我的共享数据?
分享是幂等写入,重复上传相同曲线不会产生重复条目。关闭在线功能即停止一切网络活动,令牌同步清除。
总结
- 🏠本地优先:WashData 的全部检测、匹配、统计都在你的 Home Assistant 本地完成,无遥测、无"电话回家";
- 🔒隐私边界清晰:唯一网络功能 Community Store 默认关闭,上传内容受白名单严格控制,敏感信息被设计性排除;
- 🤝Community Store 三步上手:开启在线功能 → 声明品牌型号 → 浏览/采纳同款设置,秒级获得他人调好的程序档案;
- 📦数据可掌控:JSON 一键导出/导入备份,本地存储占用随时可在 Diagnostics 页面审计。
WashData 用"默认全关、显式开启、最小上传"的设计证明:智能家居的便利与数据隐私可以兼得。
【免费下载链接】ha_washdata
Home Assistant integration for smart-plug appliance monitoring: detects cycles, matches programs, estimates time remaining. Supports washing machines, dryers, dishwashers and more.
相关推荐
ClaudePrism 数据与隐私安全指南:哪些数据留在本地、哪些会发送到 API
ClaudePrism 数据与隐私安全指南:哪些数据留在本地、哪些会发送到 API ClaudePrism 是一个本地优先(offline first)的科学写
HACS (Home Assistant Community Store) 集成项目安装与使用教程
HACS Home Assistant Community Store 集成项目安装与使用教程 一、项目目录结构及介绍 HACS(Home Assistant
包管理器智能家居后端Home Assistant:智能家居的本地控制与隐私保护先锋
Home Assistant:智能家居的本地控制与隐私保护先锋 在智能家居设备日益普及的今天,你是否曾担忧过数据隐私?是否厌倦了每个设备都需要独立APP的繁琐?
智能家居物联网后端工作流自动化
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考