找回密码
 立即注册

微信扫码登录

搜索
查看: 2333|回复: 19

[技术探讨] 一汽大众ID.4 CROZZ接入Home Assistant分享

[复制链接]

3

主题

123

回帖

1949

积分

论坛技术达人

积分
1949
金钱
1818
HASS币
20
发表于 2025-1-19 17:52:30 | 显示全部楼层 |阅读模式
本帖最后由 yezivv 于 2025-7-5 23:03 编辑

将一汽大众ID.4 CROZZ接入Home Assistant,通过抓包分析一汽大众APP获取数据,利用Node-RED和MQTT实现了车辆状态信息、以及预约空调的接入。


一、实现功能
只测试了电车(油车接口可能不同),手机APP4.0版本及以上,实现了以下功能:
  • 车辆实时位置
  • 电量、续航里程
  • 车门关闭状态、锁定状态
  • 充电状态
  • 预约空调等



二、准备工作
  • 安装Node-RED和MQTT
    确保你的Home Assistant已经安装并配置好Node-RED和MQTT插件。
  • 申请高德地图Web服务API
    需要在高德开放平台申请用于Web服务的key,用于车辆位置信息的直接展示。
  • 一汽大众App账号
    由于一汽大众App不支持多终端登录,建议使用家人的账号注册App,并通过授权的方式共享车辆控制权限。(目前我已经切换为我个人的账号了,因为发现接入ha之后,我几乎不打开一汽的APP了。)
    我在nodered中设置了每天8点执行一次登录操作,登录成功后,会返回一个accessToken,后续请求都需要携带这个accessToken。之后每半小时获取一次车辆状态信息。这样设置就算手机APP使用主账号账号密码的方式登录过,也可以保证nodered在第二天能够正常获取数据。



三、接入步骤
1. 抓包获取关键数据
通过抓包工具(如Stream等)获取一汽大众APP的数据,抓包前先退出登录并且关闭APP。然后打开抓包工具开始抓包,选择账号密码方式登录,登录成功后就可以停止抓包了。在抓包工具中查看数据,注意这个域名:oneapp-api.faw-vw.com。
主要信息来自于以下请求,节点“设置参数”需要的信息都会在这条数据中获得
  • account/login/loginByPassword/v1?


2. Node-RED配置
  • 在Node-RED中导入我分享的流文件(见下文);
  • 修改nodered流中的“设置参数”节点,填写你的账号密码、请求头部信息(如Did、User-Agent);
  • 填写获取门窗灯状态、获取充电状态、获取车辆位置三个节点中,你车辆的vin码;
  • 填写“车辆位置”节点中的高德api key;
  • ID.月度报告只有主账号可以获取,如使用授权账号请删除相关节点。

3. Home Assistant配置
configuration.yaml中添加:
# MQTT 配置
mqtt: !include mqtt.yaml

  • 在\config文件夹中创建mqtt.yaml文件,定义MQTT传感器(见下文);
  • 添加辅助元素:按钮-立即刷新,开关-远程空调
  • 由于大众ID只有预约空调没有返回状态,预约时效只有半小时,因此通过创建自动化,当远程空调打开,半小时后自动切换远程空调开关为关闭状态。




四、注意事项
  • 账号限制一汽大众App同一个账号只能单终端登录,因此建议使用家人的账号注册App,并通过授权的方式共享车辆控制权限;
  • 测试使用半年以上securityCode仍有效。




五、Node-RED流和mqtt.yaml文件
更新就放在这吧
2025年5月19日更新:优化了一下nodered流代码,增加了device.tracker,将原车获取的经纬度转换为GPS坐标系 ,可以追踪车辆经纬度在地图显示了。UI界面改了一下觉得现在更合适。
2025年6月13日更新:继续优化nodered流代码,需要修改的节点更少。增加ID.月度报告、增加预约空调相关设置。
未来认证方式不变,应该不会再更新了,也没啥可更新的了。这车本来用户也不多~

flows mqtt.rar (9.49 KB, 下载次数: 8)



六、贴几张图
以下是实现过程中的一些截图,供大家参考:
汽车.png device.tracker.png nodered.png vin.png 设置参数.png



高德key.png

评分

参与人数 3金钱 +40 HASS币 +20 收起 理由
admin + 20 + 20 高手,这是高手!
隔壁的王叔叔 + 12 论坛有你更精彩!
xsteel + 8 论坛有你更精彩!

查看全部评分

回复

使用道具 举报

14

主题

1593

回帖

5234

积分

论坛元老

积分
5234
金钱
3627
HASS币
0
发表于 2025-1-19 20:33:15 | 显示全部楼层
大佬玩的666哦。
回复

使用道具 举报

6

主题

127

回帖

785

积分

高级会员

积分
785
金钱
652
HASS币
0
发表于 2025-1-20 10:22:24 | 显示全部楼层
666666666666
回复

使用道具 举报

flim 手机认证

5

主题

143

回帖

1018

积分

金牌会员

积分
1018
金钱
870
HASS币
0
发表于 2025-1-21 23:54:27 | 显示全部楼层
好开心有你们在论坛
回复

使用道具 举报

4

主题

82

回帖

863

积分

高级会员

积分
863
金钱
777
HASS币
0
发表于 2025-2-27 18:01:04 | 显示全部楼层
上海大众ID4 能用吗?
回复

使用道具 举报

3

主题

123

回帖

1949

积分

论坛技术达人

积分
1949
金钱
1818
HASS币
20
 楼主| 发表于 2025-2-28 10:47:32 | 显示全部楼层
kuoyeh 发表于 2025-2-27 18:01
上海大众ID4 能用吗?

app是一汽大众的话应该就没问题~
回复

使用道具 举报

1

主题

67

回帖

599

积分

高级会员

积分
599
金钱
531
HASS币
10
发表于 2025-4-8 20:51:48 | 显示全部楼层
大佬 众享管家可以对接吗 想把电子钥匙对接到SIRI
回复

使用道具 举报

3

主题

123

回帖

1949

积分

论坛技术达人

积分
1949
金钱
1818
HASS币
20
 楼主| 发表于 2025-4-9 09:04:59 | 显示全部楼层
h542199349 发表于 2025-4-8 20:51
大佬 众享管家可以对接吗 想把电子钥匙对接到SIRI

不好意思,没有用过众享管家,你可以自己抓包试试。
回复

使用道具 举报

1

主题

92

回帖

1725

积分

金牌会员

积分
1725
金钱
1632
HASS币
0
发表于 2025-5-18 11:48:14 | 显示全部楼层
同样的一汽大众app,抓不到oneapp-api.faw-vw.com这个域名,我是油车
回复

使用道具 举报

3

主题

123

回帖

1949

积分

论坛技术达人

积分
1949
金钱
1818
HASS币
20
 楼主| 发表于 2025-5-19 08:50:13 | 显示全部楼层
lucienyida 发表于 2025-5-18 11:48
同样的一汽大众app,抓不到oneapp-api.faw-vw.com这个域名,我是油车

你看下你的app版本,4.0以上的才是这个域名,4.0以下是另外一个域名。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-7-18 13:03 , Processed in 0.762722 second(s), 15 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表