CAN box for BMW E81 — request for a richer decoding profile / raw firmware

Post Reply
manausgerm
Posts: 1
Joined: Thu Oct 01, 2026 1:18 pm

CAN box for BMW E81 — request for a richer decoding profile / raw firmware

Post by manausgerm »

Hallo,

I am a private owner building a custom Android launcher for my own car. This is a personal, non‑commercial project — I am not reselling anything and not asking for source code of your applications.

My setup

Car: BMW 116i, body E81, 2008, Europe.
Head unit: MTK MT8163, Android 9, 1280×480, running your software stack (com.hcn.autocan, com.hcn.autoradio, com.hcn.autosource).
CAN box: Hiworld. In the head unit's menu it is configured as Hiworld → BMW/MINI → X1_W02.

What works today

The box publishes 14 Android system properties and nothing else:

persist.vendor.cem.angle — steering angle
persist.vendor.cem.cardoor1…5 — door states
persist.vendor.cem.radar0…7 — PDC slots

The gateway daemon is healthy (init.svc.mcud running, log.mcud.statistics shows rx increasing with err:0), so the physical link and the box are working correctly. This is a decoding scope question, not a fault.

What I need, and why

I need these signals to display them on the driver's screen:

Signal Purpose
Fuel level (litres or %) fuel gauge and range calculation
Odometer / trip distance trip computer
Outside temperature ice warning
Lights state (side, low beam, high beam, indicators) vehicle status view
Wiper state vehicle status view
Window positions vehicle status view
Tailgate / bonnet state vehicle status view

All of these exist on the car's K‑CAN and are read by the instrument cluster, so the data is present on the bus the box is connected to.

What I observed in your own decoder

The same application contains a second BMW profile, com.hcn.autocan.hiworld.bmw.HW_Bmw_MB03, which decodes considerably more — fuel quantity, mileage, window state, TPMS, climate and seat heating. My configuration does not reach that code path.

My questions

Is there a CAN box configuration or profile for E81 / E87 (1 Series, 2004–2011) that publishes fuel level and odometer? If yes, which menu entry should I select?
Is the richer MB03 decoding a property of different hardware, or is it a firmware option that my current box could run? If it is different hardware, which model should I buy for an E81?
The head unit ships AutoCanUpgrade (com.hcn.canupgrade), which flashes the box from a file named can_app.bin placed on a USB stick. Can you supply the appropriate can_app.bin for my box and an E81 profile? I am willing to provide the box's exact model and serial number, and photographs of its label, on request.
If the firmware cannot be supplied: can you provide documentation of the serial protocol between the CAN box and the head unit (frame format and the identifiers used for the signals above)? With that I can decode the data the box already forwards, without any change to your firmware.
Alternatively, a list of which persist.vendor.cem.* properties each BMW profile publishes would already let me choose the correct profile myself.

I understand that firmware and protocol documentation may be restricted. If so, I would appreciate knowing which of the options above is possible, so that I do not keep trying a route that is closed.

Thank you for your time.
Attachments
photo_2026-10-01 15.21.57.jpeg
photo_2026-10-01 15.21.57.jpeg (115.02 KiB) Viewed 13 times
Post Reply