Skip to content

The cluster in an SDV

The cluster in a software-defined vehicle

The screen behind the wheel is the one with legal obligations. How it is architected when everything else is consolidating, and what Android is and is not allowed to own.

Advanced6 minCluster · Safety · Architecture

The instrument cluster is the screen the driver looks at most and trusts most. It is also the one with legal requirements attached, which makes it the hardest part of a consolidated cockpit.

What makes the cluster different#

The content splits into three tiers, and the split determines the architecture.

TierExamplesObligation
RegulatedSpeed, telltales, warning lampsLegal — colour, symbol, availability
Safety-relevantADAS state, gear, range-rated, must be correct
InformationalMedia, navigation card, phoneNone — nice to have

Why the cluster cannot simply run Android#

Three independent reasons, any one sufficient:

Availability. A telltale must appear within a bounded time of its condition occurring, every time. Android can be garbage collecting, updating, or restarting.

Boot time. Telltales are typically required within about two seconds of ignition. Android takes fifteen or more.

Certification. The rated content needs a safety argument. A general-purpose OS with dynamic memory allocation, preemptive scheduling and millions of lines of third-party code cannot practicably provide one.

The two architectures#

One computer, several screens, different safety obligations per screenCockpit domain controllerSafety guestcluster contentAndroid guestinfotainmenthypervisor · shared GPU · partitioned memoryone bill of materials, one thermal budgetClusterASIL-rated contentCentre stackinfotainmentPassengerinfotainmentHead-up displayminimal, criticalthe hard part is not the pixels — it is proving infotainment cannot disturb the cluster
Cluster and infotainment convergingOne cockpit controller, several displays, and a hypervisor proving that the infotainment guest cannot disturb the safety guest.

Separate systems#

The cluster has its own processor running its own safety-rated software. Infotainment sends content over a link — Ethernet, or shared memory if they are on the same board.

Advantages: clean safety argument, independent failure, straightforward certification. Costs: two systems to build, two bills of material, a link to design and version.

Consolidated with a hypervisor#

One processor, several guests. A safety guest owns the cluster display; an infotainment guest owns the centre screen. A provides .

Advantages: one chip, lower cost, shared GPU, a single thermal budget. Costs: the isolation argument is now a software argument and must be proven rather than assumed.

What Android actually sends#

Structured content, not pixels.

A cluster content message
message ClusterCard {
  uint32 version   = 1;    // versioned from the first message
  Zone   zone      = 2;    // which region of the cluster
  Type   type      = 3;    // NAVIGATION | MEDIA | PHONE | ASSISTANT
  string primary   = 4;    // "Turn right"
  string secondary = 5;    // "300 m"
  Icon   icon      = 6;    // an enumerated icon, not a bitmap
  uint32 progress  = 7;
}

Zones#

Clusters are divided into regions with different owners and criticality.

ZoneContentOwner
1Speedometer, tachometerSafety system
2Telltales and warningsSafety system
3Infotainment cardsAndroid
4ADAS visualisationADAS domain

Debugging across the boundary#

The Android side
adb shell dumpsys car_service --services ClusterHomeService
adb shell dumpsys display | grep -i cluster
adb logcat -b all | grep -i cluster

Next#

How the pixels actually get onto that screen.

References & further reading

Code links target the main branch on cs.android.com. AOSP moves — if a path 404s, search the symbol instead.