Sno Station
Sno Station은 AI 에이전트를 하나의 팀으로 묶는 오픈소스 워크스테이션으로, 로컬 머신에서 에이전트 협업을 가능하게 함
BMW·MINI 차량 데이터를 MQTT로 Home Assistant에 연동, 충전 이력·여행 기록·배터리 상태 제공, HACS 무료
Home Assistant integration for BMW CarData: live data from your BMW or MINI over MQTT, charging history with cost, a trip journal and battery health. Free, from HACS.
플러그인Python · HTMLGitHub @JustChr온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
BMW CarData for Home Assistant, in the HACS default store: live MQTT stream + REST API for your BMW or MINI, with charging history & cost, trip journal and battery health. The replacement for the Connected Drive / MyBMW integration.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
BavarianData: Connect Home Assistant to BMW CarData
Bring your BMW's live data into Home Assistant — straight from BMW CarData,
no third-party cloud in between.
BMW CarData is BMW's own telematics service: an MQTT stream that pushes vehicle
data in real time and a REST API for on-demand snapshots. This integration talks
to both directly, using your personal BMW client ID. There is no intermediate
server and no MyBMW screen-scraping — Home Assistant is the only client, and it's
read-only (CarData cannot command the car).README 전문 보기 ↗BMW CarData is BMW's own telematics service: an MQTT stream that pushes vehicle data in real time and a REST API for on-demand snapshots. This integration talks to both directly, using your personal BMW client ID. There is no intermediate server and no MyBMW screen-scraping — Home Assistant is the only client, and it's read-only (CarData cannot command the car).
Every descriptor BMW sends becomes a native entity — charge level, doors, tire pressures, the 12 V battery — each with a proper device class, unit and translated states. On top of that the integration derives a charging history & cost ledger, battery-health learning, a trip journal, a real-range figure measured from your own driving rather than predicted, long-term statistics for the Energy dashboard, and CSV and printable-HTML export (the report prints to PDF from any browser) — all from the stream, spending no API quota. A bundled Lovelace card and a cached vehicle image put a good-looking dashboard one card away — the card registers itself, you just place it.
It can also hand that live charge level to your charge controller: the evcc / wallbox bridge publishes the car's state of charge over MQTT, so evcc or openWB can charge on a figure that arrives as the car reports it instead of polling a rate-limited vendor API — and it reads your wallbox's own meter back, to record what each charge really drew from the grid.
And you can simply ask: with an AI conversation agent behind Assist, "Do I need to charge before driving to Munich and back?" or "Is the car locked?" get an answer, by voice, in the chat or from a desktop AI app over MCP (Ask Assist & AI).
Status — actively developed. A spare-time project, verified against a limited number of vehicles and Home Assistant versions, so expect the odd rough edge on a model it hasn't met yet. It is read-only by design — CarData cannot command the car — so treat what it reports as informational rather than as the trigger for a safety-critical automation. Track
main; other branches may be broken at any time.
The complete manual — every screen, card view, setting, service and feature — lives on the website (also in the Wiki; German: Handbuch). The website also runs the real card on a demo car and lists every descriptor BMW CarData can send. This README is the quick overview.
Five steps — the Wiki has the detail and screenshots for each.
cardata:api:read and
cardata:streaming:read). Don't touch Data Selection yet.Stream selection ("Datenauswahl") has no CarData API. Guided setup and
Configure → Choose streamed data hide this behind the one-click Activate
BMW data bookmarklet, which flips the fields on for you in the browser. If you
instead want to drive it yourself, the bavariandata.activate_stream_fields
service replays the exact request the portal sends when you save, replacing
the whole selection in one call. Because that endpoint authenticates with your
browser session (not the integration's token, and behind BMW's bot-defense),
you supply a captured portal session — a manual, occasional tool that spends
no API quota. See
Services → activate_stream_fields.
The descriptor catalogue, metadata, translations and reference docs are all
generated from BMW's exports by the pipeline in tools/ — see
tools/README.md before hand-editing any generated file.
Released under the MIT License. This integration began as a
continuation of the public-domain
bmw-cardata-ha by JjyKsi;
that project carried no licensing restrictions, and the original author is
credited in NOTICE out of respect for their work.
The MIT License covers the code, not the name "BavarianData" or its logo. A
modified copy published as its own project needs its own name, domain and logo;
see NOTICE.
"BMW", "Mini", "Rolls-Royce", and "CarData" are trademarks of their respective owners. This is an independent, community-built integration and is not affiliated with, endorsed by, or sponsored by BMW Group. Use at your own risk; see the warranty disclaimer in the LICENSE.