O gerenciamento de energia é fundamental para apps automotivos, e os requisitos de energia são muito diferentes dos dispositivos móveis, incluindo:
- Consumo de energia quase zero enquanto o veículo está estacionado. O veículo ainda precisa ter bateria suficiente para ligar, mesmo após muitos meses.
- Resposta de inicialização extremamente rápida para câmera traseira, áudio e tela de apresentação antes do próprio Android ser inicializado.
- Inicialização rápida na tela inicial do Android para que o usuário possa interagir com o dispositivo.
- Retomar/restaurar estados do app (como a estação de rádio e a orientação de navegação) após o ciclo de energia.
A equipe do Android Automotive está resolvendo problemas de gerenciamento de energia específicos de automóveis com um novo esquema de gerenciamento de energia, incluindo:
- Política de energia. Saiba como garantir que componentes de hardware e software (como tela, áudio e interação por voz) sejam ativados e desativados seletivamente conforme necessário.
- Gerenciamento de energia. Define a máquina de estado de energia usada pelo Android Automotive, fornece exemplos de sequências de suspensão/desligamento/ativação e lista as propriedades do HAL do veículo relacionadas ao gerenciamento de energia.
- Modo Garagem. Define um modo de baixo consumo em que o veículo executa as tarefas de manutenção necessárias (como atualizações do SO e do app) enquanto está estacionado.
- Como gerenciar o tempo de inicialização. Define as diferenças entre os processos de inicialização do Android e do Android Automotive, oferece dicas para otimizar o tempo de inicialização e fornece instruções para iniciar serviços, como a câmera traseira, no início da sequência de inicialização.
Arquitetura de hardware
Conforme ilustrado na figura abaixo, a unidade de microcontrolador do veículo (VMCU):
- Faz interface com a interface nativa do veículo. Por exemplo, a rede de área do controlador (CAN, na sigla em inglês).
- Controla a potência do processador de apps (AP), que processa o infoentretenimento, presumindo que o AP é executado pelo Android.
- Se comunica com o AP pelo barramento de dados e pinos de E/S de uso geral (GPIO, na sigla em inglês) para informar
atividades como transições de estado.
Figura 1. Blocos de hardware
Quando o veículo é desligado, o AP entra em um dos seguintes estados:
-
O modo de suspensão ocorre quando a VMCU decide manter a alimentação principal do AP para ativação instantânea. Normalmente, um sinal de ativação é enviado ao AP pelo GPIO.
-
A hibernação ocorre quando a VMCU decide manter o conteúdo da memória enquanto corta a energia principal. Normalmente, o AP carrega o conteúdo da memória salva na próxima vez que for ligado.
-
O desligamento ocorre quando a VMCU decide reservar a bateria. O AP precisa ser inicializado a frio na próxima vez que for ligado.
O barramento de dados da VMCU-AP precisa ser uma interface bidirecional, como a interface periférico serial (SPI), e precisa ser exposta no HAL do veículo. Ele pode ser usado para enviar eventos como:
- Mostrar ou ocultar o AP.
- Despertar do AP (pode ocorrer pelo GPIO).
- Tela da câmera traseira do AP ativada ou desativada.
- Desligamento do AP concluído (para a VMCU).