● Public Beta LOCAL • APPLE HOME • SIRI

Your BMW,
integrated into
Apple Home.

Fed by BMW’s CarData Stream.

Native Apple Home
BMW CarData Stream
Siri Ready

Designed Around Real BMW CarData Behaviour

BMHome integrates supported BMW vehicle information into Apple Home using BMW’s CarData Stream. Vehicle updates may appear immediately or after charging, locking, driving or wake events depending on your BMW model and backend behaviour.

Battery & Range

View BMW battery state of charge and remaining range directly in Apple Home and Siri.

Doors, Windows, Boot

See vehicle access states alongside the rest of your HomeKit devices.

Tyre Status

Tyre pressure data from BMW enabling you to ask Siri if your tyres are ok.

BMW CarData Stream

BMHome works with the live vehicle information BMW publishes to CarData Stream.

Siri & Automations

Use Siri and Apple Home automations alongside your existing HomeKit setup.

Vehicle Commands

Send supported commands from Apple Home and Siri. Vehicle control depends on BMW CarData availability.

Setup BMHome

A clean Apple Home experience depends on correctly enabling BMW CarData Stream descriptors. The guide below is based on live BMHome beta testing and BMW documentation.

STEP 1

Prepare Your Raspberry Pi

Download the BMHome Raspberry Pi image and flash it using Raspberry Pi Imager or Balena Etcher.

  • Raspberry Pi 4 or Pi 5 recommended
  • 16GB+ SD card
  • Ethernet strongly recommended

Once BMHome boots, open:

http://givhome-pi.local

Create your Homebridge administrator account and sign in.

STEP 2

Enable BMW CarData Stream

Sign in to BMW CarData using the same BMW ID used in the MyBMW app.

https://www.bmw.co.uk/en-gb/mybmw/public/cardata-telematic-catalogue

Navigate to:

Login
My Vehicle Overview
BMW CarData
CarData API
CarData Stream

Enable and save these descriptors:

vehicle.drivetrain.batteryManagement.header
vehicle.drivetrain.electricEngine.kombiRemainingElectricRange
vehicle.drivetrain.lastRemainingRange

vehicle.cabin.door.row1.driver.isOpen
vehicle.cabin.door.row1.passenger.isOpen
vehicle.cabin.door.row2.driver.isOpen
vehicle.cabin.door.row2.passenger.isOpen

vehicle.body.trunk.isOpen
vehicle.body.trunk.door.isOpen

vehicle.cabin.window.row1.driver.status
vehicle.cabin.window.row1.passenger.status
vehicle.cabin.window.row2.driver.status
vehicle.cabin.window.row2.passenger.status
vehicle.cabin.sunroof.status

vehicle.chassis.axle.row1.wheel.left.tire.pressure
vehicle.chassis.axle.row1.wheel.right.tire.pressure
vehicle.chassis.axle.row2.wheel.left.tire.pressure
vehicle.chassis.axle.row2.wheel.right.tire.pressure

vehicle.body.chargingPort.status
vehicle.powertrain.electric.battery.charging.power

Some descriptors are model-dependent and may not be available on every BMW or MINI.

STEP 3

Configure BMHome

Inside Homebridge:

Plugins
BMHome
Plugin Config

Enter your:

  • BMW ConnectedDrive / MyBMW credentials
  • VIN
  • Client ID
  • Preferred distance units

Enable the BMHome child bridge using the purple bridge icon and restart Homebridge.

STEP 4

Pair with Apple Home

After Homebridge restarts, scan the HomeKit QR code shown on the BMHome accessory card.

Your BMW will then appear inside Apple Home alongside your HomeKit devices and Siri automations.

IMPORTANT

Understanding BMW Update Behaviour

BMW vehicles do not continuously publish all telemetry in real time.

Updates may appear:

  • after driving
  • after charging
  • after lock or unlock events
  • after the vehicle wakes
  • after BMW backend refreshes

Available data varies by:

  • vehicle generation
  • market/region
  • BMW software version
  • enabled telematics options
  • BMW backend behaviour

BMHome can only display data BMW publishes to CarData Stream for your vehicle.