Power management is critical to automotive applications, and power requirements differ vastly from mobile devices, including:
Near-zero power consumption while the vehicle is parked<. The vehicle should still have enough battery charge to start, even after many months.
Extremely fast power-on response for rear-view camera, audio, and splash screen (before Android itself boots).
Quick boot into Android home screen so that user can interact with the device.
Resume/restore application states (such as the radio station and navigation guidance) after power cycle.
The Android Automotive team is addressing automotive-specific power management issues with a new power management scheme, which includes:
Power Management. Defines the power state machine used by Android Automotive, provides example sleep/shutdown/wake sequences, and lists the Vehicle HAL properties related to power management.
Garage Mode. Defines a low power mode in which the vehicle executes necessary maintenance tasks (such as OS and application updates) while the vehicle is parked.
Managing Boot Time. Defines differences between the Android and Android Automotive boot processes, provides tips for optimizing boot time, and gives instructions for starting services such as the rear view camera early in the boot sequence.
As illustrated in the figure below, the Vehicle Microcontroller Unit (VMCU):
- Interfaces with the vehicle's native interface. For example, the Controller Area Network (CAN) bus.
- Controls the power of the Application Processor (AP), which handles infotainment, presuming the AP is powered by Android).
- Communicates to the AP through the data bus and General Purpose I/O (GPIO) pins to inform
activities such as state transitions.
Figure 1: Hardware blocks
On vehicle power off, the AP enters into one of the following states:
Sleep. Occurs when the VMCU decides to retain the AP's main power for instant wake-up. Typically, a wake-up signal would be sent to the AP through the GPIO.
Shutdown. Occurs when the VMCU decides to reserve battery. The AP must cold boot at next power on.
The VMCU-AP data bus must be a bidirectional interface such as Serial Peripheral Interface (SPI), and must be exposed in the Vehicle HAL. It may be used to send events such as:
- AP display On or Off.
- AP wake-up (can occur through the GPIO).
- AP rear-view camera display On or Off.
- AP shut-down complete (to the VMCU).