Halaman ini mencantumkan properti sistem yang didukung di VHAL. Properti yang didukung oleh VHAL
harus berupa properti sistem dari daftar di bawah atau properti vendor. Di Android 14 dan
yang lebih tinggi, definisi properti ditentukan di
hardware/interfaces/automotive/vehicle/aidl_property/android/hardware/automotive/vehicle/VehicleProperty.aidl
.
Definisi properti ditentukan di antarmuka AIDL,
android.hardware.automotive.vehicle.property
, yang terpisah dari antarmuka
VHAL (android.hardware.automotive.vehicle
). Implementasi VHAL dan klien
VHAL harus bergantung pada kedua antarmuka.
Mode akses dan mode perubahan yang dibuat secara otomatis
Di Android 14 dan yang lebih tinggi, untuk mendukung implementasi VHAL, kami menyediakan file header C++ dan file class Java yang dibuat secara otomatis dengan mode perubahan atau mode akses yang diizinkan untuk properti sistem. Implementasi VHAL vendor dapat menggunakannya untuk memastikan konfigurasi properti memenuhi spesifikasi.
A ke D
ADAPTIVE_CRUISE_CONTROL_LEAD_VEHICLE_MEASURED_DISTANCE
Measured distance from leading vehicle when using Adaptive Cruise Control (ACC) or Predictive
Cruise Control (PCC). Returns the measured distance in millimeters between the rear-most point
of the leading vehicle and the front-most point of the ACC vehicle. The maxInt32Value
and minInt32Value
in VehicleAreaConfig
must be defined. The
minInt32Value
should be 0. The maxInt32Value
should be populated with
the maximum range the distance sensor can support. This value should be non-negative.
When no lead vehicle is detected (that is, when there is no leading vehicle or the leading
vehicle is too far away for the sensor to detect), this property should return
StatusCode.NOT_AVAILABLE
When this property is not available because CC is disabled (for example,
StatusCode#NOT_AVAILABLE_DISABLED
is false), this property must return
StatusCode#NOT_AVAILABLE_DISABLED
If CRUISE_CONTROL_STATE
is implemented and the state is set to an ErrorState
value, then this property
must return a StatusCode
that aligns with the ErrorState
value. For
example, if CRUISE_CONTROL_STATE
is set to
ErrorState#NOT_AVAILABLE_SPEED_LOW
, then this property must return
StatusCode#NOT_AVAILABLE_SPEED_LOW
Change mode: CONTINUOUS
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:MILLIMETER
Release: Android 14
ADAPTIVE_CRUISE_CONTROL_TARGET_TIME_GAP
Current target time gap for ACC or PCC in milliseconds. This property should specify the target time gap to a leading vehicle. This gap is defined as the time to travel the distance between the leading vehicle's rear-most point to the ACC vehicle's front-most point. The actual time gap from a leading vehicle can be above or below this value.
The possible values to set for the target time gap should be specified in configArray in
ascending order. All values must be positive. If the property is writable, all values must be
writable. When this property is not available because CC is disabled (for example,
CRUISE_CONTROL_ENABLED
is false), this property must return
StatusCode#NOT_AVAILABLE_DISABLED
If CRUISE_CONTROL_STATE
is implemented and the state is set to an
ErrorState
value, then this property must return a StatusCode
that
aligns with the ErrorState
value. For example,
if CRUISE_CONTROL_STATE
is set to ErrorState#NOT_AVAILABLE_SPEED_LOW
,
then this property must return StatusCode#NOT_AVAILABLE_SPEED_LOW
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: VehicleUnit:MILLI_SECS
Release: Android 14
ABS_ACTIVE
The automatic brake system (ABS) is active. Set to true when ABS is active and reset to false when ABS is off. This property can be intermittently set (pulse) based on the real-time state of the ABS system.
Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
ANDROID_EPOCH_TIME
Current date and time, encoded as Epoch time (in milliseconds). This value denotes the number of milliseconds seconds that have elapsed since 1/1/1970 UTC.
This value denotes the number of milliseconds seconds that have elapsed since 1/1/1970 UTC.
CarServices WRITE
s to this value to give VHAL the Android system's time, if the VHAL
supports this property. This can be useful to synchronize other vehicle systems (dash clock) with
Android's time.
AAOS WRITE
s to this property once during boot, and thereafter WRITE
only when time-source changes are propagated. AAOS will fill in VehiclePropValue.timestamp
correctly. AAOS does not send updates for natural elapse of time. int64Values[0] = provided Unix
time (in milliseconds).
The property may take more than 0 ms to get propagated through the stack and, having a
timestamped property helps reduce any time drift. So, for all WRITE
s to the property,
the timestamp can be used to negate this drift:
drift = elapsedTime - PropValue.timestamp effectiveTime = PropValue.value.int64Values[0] + drift
Change mode: ON_CHANGE
Access mode: WRITE
Enum type: N/A
Unit type: VehicleUnit:MILLI_SECS
Release: Android 13
AP_POWER_BOOTUP_REASON
Property to report bootup reason for the current power on. This is a STATIC
property
that won't change for the whole duration until power off. For example, even if the user presses
the power button after automatic power on with door unlock, the bootup reason must stay with
VehicleApPowerBootupReason#USER_UNLOCK
int32Values[0]
must be
VehicleApPowerBootupReason
Change mode: STATIC
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
AP_POWER_STATE_REPORT
Property to report power state of app processor. It is assumed that AP's power state is controller by separate power controller.
int32Values[0]
VehicleApPowerStateReport enum valueint32Values[1]
Time in ms to wake up, if necessary (otherwise 0)
Change mode: ON_CHANGE
Access mode: READ_WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
AP_POWER_STATE_REQ
Property to control power state of app processor. It is assumed that AP's power state is
controlled by a separate power controller. For configuration information,
VehiclePropConfig.configArray
must have bit flag combining values in
VehicleApPowerStateConfigFlag
int32Values[0]
VehicleApPowerStateReq enum valueint32Values[1]
Aadditional parameter relevant for each state, 0 if not used.
Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
AUTOMATIC_EMERGENCY_BRAKING_ENABLED
Enable or disable Automatic Emergency Braking (AEB).
Set true to enable AEB and false to disable AEB. When AEB is enabled, the ADAS system in the
vehicle should be turned on and monitoring to avoid potential collisions. This property should
apply for higher speed applications only. For enabling low speed automatic emergency braking,
LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_ENABLED
should be used.
In general, AUTOMATIC_EMERGENCY_BRAKING_ENABLED
should always return true or false.
If the feature is not available due to some temporary state, such as the vehicle speed being too
low, that information must be conveyed through the ErrorState
values in the
AUTOMATIC_EMERGENCY_BRAKING_STATE
property.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but
OEMs can implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
AUTOMATIC_EMERGENCY_BRAKING_STATE
Automatic Emergency Braking (AEB) state. Returns the current state of AEB. This property must
always return a valid state defined in AutomaticEmergencyBrakingState or ErrorState
It must not surface errors through StatusCode
and must use the supported error states
instead. This property should apply for higher speed applications only. For representing the state
of the low speed automatic emergency braking system,
LOW_SPEED_AUTOMATIC_EMERGENCY_BRAKING_STATE
should be used.
If AEB includes forward collision warnings before activating the brakes, those warnings must be surfaced through the Forward Collision Warning (FCW) properties.
For the global area ID (0), the StatusCode#VehicleAreaConfig#supportedEnumValues
array must be defined unless all states of both AutomaticEmergencyBrakingState
(including OTHER
, which is not recommended) and ErrorState
are
supported.
Change mode: ON_CHANGE
Access mode: READ
Enun type: ForwardCollisionWarningState/ErrorState
Unit type: N/A
Release: Android 14
BLIND_SPOT_WARNING_ENABLED
Enable and disable Blind Spot Warning (BSW). Set true to enable BSW and false to disable BSW. When BSW is enabled, the ADAS system in the vehicle should be turned on and monitoring for objects in the vehicle's blind spots.
In general, BLIND_SPOT_WARNING_ENABLED
should always return true or false. If the
feature is not available due to some temporary state, such as the vehicle speed being too low,
that information must be conveyed through the ErrorState
values in the
BLIND_SPOT_WARNING_STATE
property.
This property is defined as VehiclePropertyAccess.READ_WRITE
,
but OEMs can implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
BLIND_SPOT_WARNING_STATE
Blind Spot Warning (BSW) state. Returns the current state of BSW. This property must always
return a valid state defined in BlindSpotWarningState
or ErrorState
It must not surface errors through StatusCode
and must use the supported error states
instead.
For each supported area ID, StatusCode#VehicleAreaConfig#supportedEnumValues
array must be defined unless all states of both BlindSpotWarningState
(including
OTHER
, which is not recommended) and ErrorState
are supported.
Change mode: ON_CHANGE
Access mode: READ
Enum type: BlindSpotWarningState/ErrorState
Unit type: N/A
Release: Android 14
CABIN_LIGHTS_STATE
Returns the state for the cabin lights.
Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleLightState
Unit type: N/A
Release: Android 13
CABIN_LIGHTS_SWITCH
Cabin lights switch. The position of the physical switch which controls the cabin lights.
This might differ than the CABIN_LIGHTS_STATE
if the lights are on because a door is
open or because of a voice command. For example, when the switch is in the off or
automatic position.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but
OEMs can implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: VehicleLightSwitch
Unit type: N/A
Release: Android 13
CLUSTER_DISPLAY_STATE
Changes the state of the cluster display.
- Bounds: Area to render the cluster Activity.
- Inset: Area that Activity should not place important information.
Possible values:
int32[0]
On, Off: 0 - off, 1 - on, -1 - don't careint32[1]
Bounds - left: positive number - left position in pixels -1 - don't care (should set all Bounds fields)int32[2]
Bounds - top: same format with 'left'int32[3]
Bounds - right: same format with 'left'int32[4]
Bounds - bottom: same format with 'left'int32[5]
Inset - left: positive number - actual left inset value in pixels -1 - don't care (should set "don't care" all Inset fields)int32[6]
Inset - top: same format with 'left'int32[7]
Inset - right: same format with 'left'int32[8]
Inset - bottom: same format with 'left'
Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
CLUSTER_NAVIGATION_STATE
Informs the current navigation state. bytes: the serialized message of NavigationStateProto.
Change mode: ON_CHANGE
Access mode: WRITE
Enum type:
Unit type: N/A
Release: Android 13
CLUSTER_REPORT_STATE
Reports the current display state and ClusterUI state.
ClusterHome
sends this message when it handles CLUSTER_SWITCH_UI
,
CLUSTER_DISPLAY_STATE
In addition, ClusterHome
should send this
message when it starts for the first time. When ClusterOS receives this message and if the
internal expectation is different with the received message, then it should send
CLUSTER_SWITCH_UI
, CLUSTER_DISPLAY_STATE
again to match the state.
int32[0]
on/off: 0 - off, 1 - onint32[1]
Bounds - leftint32[2]
Bounds - topint32[3]
Bounds - rightint32[4]
Bounds - bottomint32[5]
Inset - leftint32[6]
Inset - topint32[7]
Inset - rightint32[8]
Inset - bottomint32[9]
Type of ClusterUI in the fullscreen or main screen. 0 indicatesClusterHome
. Other values are followed by the OEM's definition.int32[10]
Type of ClusterUI in subscreen if the currently two UIs are shown. -1 indicates the area is no longer used. bytes: the array to represent the availability of ClusterUI. 0 indicates non-available and 1 indicates available. For example, if a car supports three OEM-defined ClusterUI such as HOME, MAPS, and CALL and only supports the CALL UI only when the cellular network is available. Then, if the nework is available, it sends [1 1 1] and, if out of network, sends [1 1 0].
Change mode: ON_CHANGE
Access mode: WRITE
Enum type: VehicleLightSwitch
Unit type: N/A
Release: Android 13
CLUSTER_REQUEST_DISPLAY
Requests to change the cluster display state to show some ClusterUI. When the current display
state is off and ClusterHome
sends this message to ClusterOS to request to turn
the display on to show a specific ClusterUI. ClusterOS should response this with
CLUSTER_DISPLAY_STATE
int32
Type of ClusterUI to show
Change mode: ON_CHANGE
Access mode: WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
CLUSTER_SWITCH_UI
Starts the ClusterUI in cluster display.
int32
Type of ClusterUI to show 0 indicatesClusterHome
, the Home screen of the cluster display, and provides the default UI and a kind of launcher functionality for the cluster display. Other values are per the OEM's definition.
Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
CREATE_USER
Called by the Android System after an Android user was created. The HAL can use this property to create its equivalent user. This is an async request: Android makes the request by setting a VehiclePropValue, and HAL must respond with a property change indicating whether the request succeeded or failed. If it failed, the Android system removes the user.
The format of the request is defined by CreateUserRequest and the format of the response by CreateUserResponse. For example, if system had two users (0 and 10) and a third one (which is an ephemeral guest) was created, the request would be:
int32[0]
42 // request idint32[1]
11 // Android id of the created userint32[2]
6 // Android flags (ephemeral guest) of the created userint32[3]
10 // current userint32[4]
0 // current user flags (none)int32[5]
3 // number of usersint32[6]
0 // first user (user 0)int32[7]
0 // first user flags (none)int32[8]
10 // second user (user 10)int32[9]
0 // second user flags (none)int32[10]
11 // third user (user 11)int32[11]
6 // third user flags (ephemeral guest) string: "ElGuesto" // name of the new user
If the request succeeded, the HAL returns:
int32[0]
42 // request idint32[1]
1 // CreateUserStatus::SUCCESS
But if it fails:
int32[0]
42 // request idint32[1]
2 // CreateUserStatus::FAILURE string: "D'OH!" //
The meaning is a blackbox and is passed to the caller (such as the Settings UI), which takes the proper action.
Change mode: ON_CHANGE
Access mode: READ_WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
CRITICALLY_LOW_TIRE_PRESSURE
This property indicates the critically low pressure threshold for each tire. It indicates when it to replace or to fix a tire. The value must be less than or equal to minFloatValue in TIRE_PRESSURE. The minimum and maximum property values (minFloatValue and maxFloatValue) do not apply to this property.
Change mode: STATIC
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:KILOPASCAL
Release: Android 13
CRUISE_CONTROL_COMMAND
WRITE
Cruise Control (CC) commands.
See CruiseControlCommand for the details about each supported command. For the global area ID (0),
the StatusCode#VehicleAreaConfig#supportedEnumValues
array must be defined unless all
states of CruiseControlState
are supported. Any unsupported commands sent through
this property must return StatusCode#INVALID_ARG
When this property is not available
because CC is disabled (for example, CRUISE_CONTROL_ENABLED
is false), this property
must return StatusCode#NOT_AVAILABLE_DISABLED
If CRUISE_CONTROL_STATE
is implemented and the state is set to an ErrorState
value, then this
property must return a StatusCode
that aligns with the ErrorState
value.
For example, if CRUISE_CONTROL_STATE
is set to
ErrorState#NOT_AVAILABLE_SPEED_LOW
, then this property must return
StatusCode#NOT_AVAILABLE_SPEED_LOW
Change mode: ON_CHANGE
Access mode: WRITE
Enum type: CruiseControlCommand
Unit type: N/A
Release: Android 14
CRUISE_CONTROL_ENABLED
Enable or disable cruise control (CC). Set true to enable CC and false to disable CC. This
property is shared by all forms of CruiseControlType(s). When CC is enabled, the ADAS system in
the vehicle should be turned on and responding to commands. In general,
CRUISE_CONTROL_ENABLED
should always return true or false. If the feature is not available due to some temporary state,
such as the vehicle speed being too low, that information must be conveyed through the
ErrorState
values in the CRUISE_CONTROL_STATE
property. This property is defined as
VehiclePropertyAccess.READ_WRITE
, but OEMs can implement it as
VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
CRUISE_CONTROL_STATE
Current state of Cruise Control (CC). This property returns the current state of CC. Generally,
this property should return a valid state defined in the CruiseControlState or
ErrorState
For example, if the feature is not available due to some temporary state, that information
should be conveyed through ErrorState
For the global area ID (0), the
VehicleAreaConfig#supportedEnumValue
array must be defined unless all states of
CruiseControlState (including OTHER, which is not recommended) and ErrorState
are supported.
Change mode: ON_CHANGE
Access mode: READ
Enum type: CruiseControlState/ErrorState
Unit type: N/A
Release: Android 14
CRUISE_CONTROL_TARGET_SPEED
Current target speed for Cruise Control (CC). OEMs should set the minFloatValue and
maxFloatValue values for this property to define the min and max target speed values. These
values must be non-negative. The maxFloatValue represents the upper bound of the target speed.
The minFloatValue represents the lower bound of the target speed.
When this property is not available because CC is disabled (for example,
CRUISE_CONTROL_ENABLED
is false), this property must return StatusCode#NOT_AVAILABLE_DISABLED
If
CRUISE_CONTROL_STATE
is
implemented and the state is set to an ErrorState value, then this property must return a
StatusCode
that aligns with the ErrorState value. For example, if
CRUISE_CONTROL_STATE
is set
to ErrorState#NOT_AVAILABLE_SPEED_LOW
, then this property must return
StatusCode#NOT_AVAILABLE_SPEED_LOW
Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:METER_PER_SEC
Release: Android 14
CRUISE_CONTROL_TYPE
Current type of Cruise Control (CC). When CRUISE_CONTROL_ENABLED
is true,
this property returns
the type of CC that is currently enabled (for example, standard CC and adaptive CC, predictive).
enerally, this property should return a valid state defined in the CruiseControlType
or
ErrorState
For example, if the feature is not available due to some temporary state,
that
information should be conveyed through ErrorState
For the global area ID (0), the StatusCode#VehicleAreaConfig#supportedEnumValues
array must be defined
unless all states of CruiseControlType
(including OTHER
, which is not
recommended) and
ErrorState
are supported. Trying to WRITE
CruiseControlType#OTHER
or an ErrorState
to this
property throws an IllegalArgumentException
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: CruiseControlType
ErrorState
Unit type: N/A
Release: Android 14
CURRENT_GEAR
Current gear. In a non-manual case, the selected gear might not match the current gear. For
example, if the selected gear is GEAR_DRIVE
, the current gear will be one of
GEAR_1
, GEAR_2
and so on, which reflects the actual gear the
transmission is running in. Values in the config data must represent the list of supported gears
for this vehicle. For example, config data for an automatic transmission must contain
{GEAR_NEUTRAL, GEAR_REVERSE, GEAR_PARK, GEAR_1, GEAR_2,...}
and, for manual
transmission, the list must be {GEAR_NEUTRAL, GEAR_REVERSE, GEAR_1, GEAR_2,...}
This list need not be the same as that of the supported gears reported in
GEAR_SELECTION
Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleGear
Unit type: N/A
Release: Android 13
CURRENT_POWER_POLICY
Notifies the current power policy to VHAL layer. Car power policy service sets this property when the current power policy is changed
string: "sample_policy_id" // power policy ID
Change mode: ON_CHANGE
Access mode: READ_WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
DISABLED_OPTIONAL_FEATURES
Allow the disabling of optional features in VHAL. This property reports optional features that
should be disabled. All allowed optional features for the system is declared in the Car service
overlay, config_allowed_optional_car_features
This property allows disabling features defined in the overlay. Without this property, all
features declared in the overlay will be enabled.
Value READ
should include all features disabled with a comma (,
)
separation.
For example, com.android.car.user.CarUserNoticeService,storage_monitoring
Change mode: STATIC
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
DISPLAY_BRIGHTNESS
Property to represent brightness of the display. Some cars have a single control for the
brightness of all displays. This property is to share changes in that control. In cars that have
displays whose brightness is controlled separately, they must use
PER_DISPLAY_BRIGHTNESS
Only one of DISPLAY_BRIGHTNESS
and PER_DISPLAY_BRIGHTNESS
should be
implemented. If both are
available, PER_DISPLAY_BRIGHTNESS
is used by AAOS. If this is writable, Android can
set this
value when the user changes display brightness from Settings. If this is READ
-only,
user can still
change display brightness from Settings, but the change must not be reflected on other displays.
Change mode: ON_CHANGE
Access mode: READ_WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
DISTANCE_DISPLAY_UNITS
Distance units for display. Indicates which units the car is using to display distances to the
user. For example, Mile, Meter, or Kilometer. Distance units are defined in VehicleUnit.
VehiclePropConfig.configArray is used to indicate the supported distance display units.
For example, configArray[0] = METER configArray[1] = KILOMETER configArray[2] = MILE
If updating DISTANCE_DISPLAY_UNITS
affects the values of other
*_DISPLAY_UNITS
properties, then their values must be updated and communicated to the AAOS framework, too.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: VehicleUnit
Unit type: N/A
Release: Android 13
DOOR_CHILD_LOCK_ENABLED
Door child lock feature enabled. Returns true if the door child lock feature is enabled and
false if disabled. If enabled, the door can't be opened from the inside. This property is defined
as VehiclePropertyAccess.READ_WRITE
, but OEMs can implement it as
VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
DOOR_LOCK
Door lock true indicates the door is locked. This property is defined as
VehiclePropertyAccess.READ_WRITE
, but OEMs can implement it as
VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
DOOR_MOVE
The maxInt32Value
and minInt32Value
in each VehicleAreaConfig must be
defined. All integers between minInt32Value
and maxInt32Value
must be
supported. The maxInt32Value
represents the maximum movement speed of the door while
opening. The minInt32Value
represents the maximum movement speed of the door while
closing.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once the
door reaches the positional limit, the value must reset to 0. If the value of
DOOR_MOVE
is 0,
then that means there is no movement currently occurring.
This property is not in any particular unit but in a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
DOOR_POS
Door position. The maxInt32Value
and minInt32Value
in
VehicleAreaConfig
must be defined.
All integers between minInt32Value
and maxInt32Value
must be supported.
The minInt32Value
indicates the door is closed. The minInt32Value
must be 0.
The maxInt32Value
indicates the door is fully open. Values between
minInt32Value
and
maxInt32Value
indicate a transition state between the closed and fully
open positions.
This property is not in any particular unit but in a specified range of relative positions.
Some vehicles (minivans) can open the door electronically. Hence, the ability to
WRITE
this property. This property is defined as VehiclePropertyAccess
READ_WRITE
, but OEMs can implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
E ke G
ELECTRONIC_TOLL_COLLECTION_CARD_STATUS
Status kartu Pengumpulan Tol Elektronik. Properti ini menunjukkan status kartu ETC di
kendaraan ini. Jika head unit mengetahui kartu ETC yang terpasang ke kendaraan,
ELECTRONIC_TOLL_COLLECTION_CARD_TYPE
akan memberikan status kartu tersebut. Jika tidak, properti ini harus berupa UNAVAILABLE
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: ElectronicTollCollectionCardStatus
Jenis unit: T/A
Rilis: Android 13
ELECTRONIC_TOLL_COLLECTION_CARD_TYPE
Jenis kartu Pengumpulan Tol Elektronik (ETC). Properti ini menunjukkan jenis kartu ETC di
kendaraan ini. Jika head unit mengetahui kartu ETC yang terpasang ke kendaraan, properti ini harus
menampilkan jenis kartu yang terpasang; jika tidak, properti ini harus berupa UNAVAILABLE
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: ElectronicTollCollectionCardType
Jenis unit: T/A
Rilis: Android 13
EMERGENCY_LANE_KEEP_ASSIST_ENABLED
Mengaktifkan atau menonaktifkan Bantuan Tetap di Jalur Darurat (ELKA). Tetapkan ke true untuk mengaktifkan ELKA dan false untuk
menonaktifkan ELKA. Jika ELKA diaktifkan, sistem ADAS di kendaraan harus aktif dan memantau
perubahan jalur yang tidak aman oleh pengemudi. Saat manuver yang tidak aman terdeteksi, ELKA akan memberi tahu
pengemudi dan menerapkan koreksi kemudi untuk menjaga kendaraan tetap berada di jalur aslinya.
Secara umum, EMERGENCY_LANE_KEEP_ASSIST_ENABLED
harus selalu menampilkan true atau false.
Jika fitur tidak tersedia karena beberapa status sementara, seperti kecepatan kendaraan terlalu
rendah, informasi tersebut harus disampaikan melalui nilai ErrorState
di
properti EMERGENCY_LANE_KEEP_ASSIST_STATE
. Properti ini ditentukan sebagai
VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat menerapkannya sebagai
VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
EMERGENCY_LANE_KEEP_ASSIST_STATE
Status Bantuan Pertahanan Jalur Darurat (ELKA). Menampilkan status ELKA saat ini. Umumnya, properti
ini akan menampilkan status yang valid yang ditentukan dalam EmergencyLaneKeepAssistState
atau
ErrorState
Misalnya, jika fitur tidak tersedia karena beberapa status sementara, informasi tersebut
harus disampaikan melalui ErrorState
Untuk ID area global (0), array VehicleAreaConfig#supportedEnumValues
harus ditentukan kecuali jika semua status
EmergencyLaneKeepAssistState
(termasuk OTHER, yang tidak direkomendasikan) dan
ErrorState
didukung.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: EmergencyLaneKeepAssistState/ErrorState
Jenis unit: T/A
Rilis: Android 14
ENGINE_COOLANT_TEMP
Suhu pendingin mesin.
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:CELSIUS
Rilis: Android 13
ENGINE_IDLE_AUTO_STOP_ENABLED
Mewakili fitur untuk penghentian otomatis mesin saat tidak ada aktivitas. Jika benar, kendaraan dapat otomatis mematikan
mesin saat tidak diperlukan, lalu otomatis memulai ulang saat diperlukan.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
ENGINE_OIL_LEVEL
Tingkat oli mesin.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: VehicleOilLevel
Jenis unit: T/A
Rilis: Android 13
ENGINE_OIL_TEMP
Suhu oli mesin.
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:CELSIUS
Rilis: Android 13
ENGINE_RPM
Revolusi mesin per menit (RPM).
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:RPM
Rilis: Android 13
ENV_OUTSIDE_TEMPERATURE
Suhu di luar ruangan. Properti ini harus menyampaikan pembacaan suhu lingkungan di luar kendaraan. Jika ada beberapa sensor untuk mengukur suhu luar, properti ini harus diisi dengan rata-rata atau rata-rata berbobot yang bermakna dari pembacaan yang paling mewakili suhu lingkungan luar.
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:CELSIUS
Rilis: Android 13
EV_BATTERY_DISPLAY_UNITS
Unit baterai Kendaraan Listrik Umum untuk ditampilkan. Menunjukkan unit yang digunakan mobil untuk menampilkan informasi baterai
EV kepada pengguna. Misalnya, watt-hour (Wh), kilowatt-hour (kWh), atau ampere-hour (Ah).
VehiclePropConfig.configArray
digunakan untuk menunjukkan energi listrik yang didukung.
unit. Unit energi listrik ditentukan dalam VehicleUnit
Misalnya:
configArray[0] = WATT_HOUR configArray[1] = AMPERE_HOURS configArray[2] = KILOWATT_HOUR
Jika memperbarui EV_BATTERY_DISPLAY_UNITS
memengaruhi nilai properti
*_DISPLAY_UNITS
lainnya,
nilainya juga harus diperbarui dan dikomunikasikan ke framework AAOS.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: VehicleUnit
Jenis unit: T/A
Rilis: Android 13
EV_BATTERY_INSTANTANEOUS_CHARGE_RATE
Kecepatan pengisian daya instan EV dalam miliwat. Nilai positif menunjukkan bahwa baterai sedang diisi dayanya. Nilai negatif menunjukkan baterai sedang dikosongkan.
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:MW
Rilis: Android 13
EV_BATTERY_LEVEL
Menampilkan level baterai saat ini, baik kendaraan listrik atau hibrida. Nilai ini tidak akan melebihi
EV_CURRENT_BATTERY_CAPACITY
Untuk menghitung persentase baterai, gunakan
(EV_BATTERY_LEVEL
, EV_CURRENT_BATTERY_CAPACITY
)*100.
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:WH
Rilis: Android 13
EV_BRAKE_REGENERATION_LEVEL
Tingkat pengereman regeneratif kendaraan elektronik. maxInt32Value
dan
minInt32Value
di VehicleAreaConfig harus ditentukan. Semua nilai antara
minInt32Value
dan maxInt32Value
harus
didukung. minInt32Value
harus 0. maxInt32Value
menunjukkan
setelan untuk jumlah maksimum energi yang dihasilkan dari pengereman. minInt32Value
menunjukkan setelan untuk tidak
melakukan pengereman regeneratif. Properti ini adalah bentuk yang lebih terperinci dari
EV_REGENERATIVE_BRAKING_STATE
Properti ini memungkinkan pengguna menetapkan tingkat pengereman regeneratif yang lebih spesifik jika status di
EvRegenerativeBrakingState
tidak cukup terperinci untuk OEM. Properti ini
ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat menerapkannya sebagai
VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
EV_CHARGE_CURRENT_DRAW_LIMIT
Menunjukkan nilai minimum arus maksimum untuk pengisian daya yang ditetapkan oleh pengguna.
EvChargeState::configArray[0]
digunakan untuk menentukan arus maksimum yang diizinkan oleh kendaraan dalam Ampere. Properti ini ditentukan
sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat menerapkannya sebagai
VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITEREAD
Jenis enum: T/A
Jenis unit: VehicleUnit:AMPERE
Rilis: Android 13
EV_CHARGE_PERCENT_LIMIT
Menunjukkan nilai minimum persentase tagihan maksimum yang ditetapkan oleh pengguna. Menunjukkan nilai minimum persentase
tagihan maksimum yang ditetapkan oleh pengguna. Menampilkan nilai float dari 0 hingga 100.
configArray digunakan untuk menentukan nilai yang valid. Misalnya, jika kendaraan mendukung
nilai batas persentase pengisian daya berikut: [20, 40, 60, 80, 100], configArray harus berupa
{20, 40, 60, 80, 100}. Jika configArray kosong, semua nilai dari 0 hingga 100 harus valid.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE,
, READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
EV_CHARGE_PORT_CONNECTED
Port pengisian daya kendaraan listrik terhubung. Jika kendaraan memiliki beberapa port pengisian daya, properti ini harus menampilkan
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
EV_CHARGE_PORT_OPEN
Port pengisian daya kendaraan listrik terbuka. Jika kendaraan memiliki beberapa port pengisian daya, properti ini harus menampilkan
benar jika salah satu port pengisian daya terbuka. Properti ini ditentukan sebagai
VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat menerapkannya sebagai
VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITEREAD
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
EV_CHARGE_STATE
Status pengisian daya mobil
Menampilkan status pengisian daya mobil saat ini.
Jika kendaraan memiliki persentase pengisian daya target selain 100, properti ini harus menampilkan
EvChargeState::STATE_FULLY_CHARGED
saat tingkat pengisian daya baterai telah mencapai
tingkat target. Lihat EvChargeState::EV_CHARGE_PERCENT_LIMIT
untuk konteks selengkapnya.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: EvChargeState
Jenis unit: T/A
Rilis: Android 13
EV_CHARGE_SWITCH
Mulai atau hentikan pengisian daya baterai Kendaraan Listrik. Setelan yang diinginkan pengguna. Menetapkan properti ini
ke benar akan memulai pengisian daya baterai, dan salah untuk menghentikan pengisian daya. Properti ini ditentukan sebagai
VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat menerapkannya sebagai
VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITEREAD
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
EV_CHARGE_TIME_REMAINING
Estimasi sisa waktu pengisian daya dalam detik. Menampilkan 0 jika kendaraan tidak mengisi daya.
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:SECS
Rilis: Android 13
EV_CURRENT_BATTERY_CAPACITY
Kapasitas baterai saat ini yang dapat digunakan untuk kendaraan listrik (EV) atau hybrid. Menampilkan nilai aktual
kapasitas baterai, saat EV atau hybrid. Properti ini menangkap kapasitas baterai yang dapat digunakan secara real time
dengan mempertimbangkan faktor-faktor seperti penuaan baterai dan dependensi suhu. Nilai ini mungkin
berbeda dengan INFO_EV_BATTERY_CAPACITY
karena INFO_EV_BATTERY_CAPACITY
menampilkan kapasitas baterai nominal dari saat kendaraan masih baru.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:WH
Rilis: Android 14
EV_REGENERATIVE_BRAKING_STATE
Rem regeneratif atau setelan mengemudi satu pedal mobil. Menampilkan setelan saat ini
yang terkait dengan setelan pengereman regeneratif di mobil. Jika OEM memerlukan lebih banyak setelan
daripada yang disediakan di EvRegenerativeBrakingState
, properti
EV_BRAKE_REGENERATION_LEVEL
dapat digunakan sebagai gantinya, yang memberikan informasi
yang lebih terperinci.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: EvRegenerativeBrakingState
Jenis unit: T/A
Rilis: Android 13
EV_STOPPING_MODE
Mewakili properti untuk mode perhentian kendaraan saat ini. Untuk ID area global (0),
VehicleAreaConfig#supportedEnumValues
harus ditentukan kecuali jika semua nilai enum
EvStoppingMode
didukung. Enum EvStoppingMode
dapat diperluas untuk
menyertakan lebih banyak status di masa mendatang. Properti ini ditentukan sebagai
VehiclePropertyAccess.READ_WRITE
, tetapi OEM memiliki opsi untuk menerapkannya sebagai
VehiclePropertyAccess.READ
saja.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: EvStoppingMode
Jenis unit: T/A
Rilis: Android 14
EVS_SERVICE_REQUEST
Mengaktifkan dan meminta layanan EVS. Properti ini menyediakan cara untuk memicu layanan EVS. VHAL harus menggunakan properti ini untuk meminta Android memulai atau menghentikan layanan EVS.
int32Values[0]
Jenis layanan EVS. Nilainya harus berupa enum di EvsServiceType.int32Values[1]
Status layanan EVS. Nilainya harus berupa salah satu enum di EvsServiceState.
Misalnya, untuk mengaktifkan layanan EVS tampilan belakang, Android dapat menetapkan nilai properti sebagai:
[EvsServiceType::REAR_VIEW, EvsServiceState::ON]
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
EXTERNAL_CAR_TIME
Saran tanggal dan waktu saat ini untuk cr, yang dienkode sebagai waktu Epoch (dalam milidetik). Nilai ini menunjukkan jumlah detik milidetik yang telah berlalu sejak 1/1/1970 UTC. Properti ini menandakan perubahan CarTime ke Android. Jika properti didukung, VHAL harus melaporkan CarTime saat ini yang paling akurat saat properti ini dibaca, dan memublikasikan perubahan pada properti ini saat nilai CarTime telah berubah.
Peristiwa on-change untuk properti ini harus dipublikasikan saat CarTime berubah karena alasan apa pun selain berlalunya waktu secara alami (delta waktu yang lebih kecil dari 500 md tidak boleh memicu peristiwa on change). Android akan membaca dan berlangganan properti ini untuk mengambil waktu dari VHAL. Hal ini dapat berguna untuk menyinkronkan waktu Android dengan sistem kendaraan lainnya (jam dasbor). int64Values[0] = waktu Epoch yang diberikan (dalam milidetik) Setiap kali Nilai baru untuk properti diterima, AAOS akan membuat dan mengirim ExternalTimeSuggestion ke TimeDetectorService.
Jika sumber lain tidak memiliki prioritas yang lebih tinggi, Android akan menggunakannya untuk menyetel waktu sistem. Untuk informasi tentang cara menyesuaikan prioritas sumber waktu dan cara saran waktu ditangani (termasuk cara Android menangani gitter, drift, dan resolusi minimum), lihat dokumentasi Layanan Time Detector.
drift = elapsedTime - PropValue.timestamp effectiveTime = PropValue.value.int64Values[0] + drift
Sebaiknya properti ini tidak digunakan untuk mengambil waktu dari ECU menggunakan protokol (seperti GNSS, NTP, dan Telepon). Karena protokol ini sudah didukung oleh Android, sebaiknya gunakan sistem Android, bukan menghubungkan melalui VHAL dengan properti ini.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:MILLI_SECS
Rilis: Android 13
FOG_LIGHTS_STATE
Status lampu kabut. Menampilkan status lampu kabut saat ini. Jika:
- Mobil memiliki lampu kabut depan dan belakang. Lampu kabut depan dan belakang hanya dapat dikontrol
secara bersamaan.
FOG_LIGHTS_STATE
harus diimplementasikan.FRONT_FOG_LIGHTS_STATE
danREAR_FOG_LIGHTS_STATE
tidak boleh diimplementasikan. - Lampu kabut depan dan belakang hanya dapat dikontrol secara terpisah.
FOG_LIGHTS_STATE
tidak boleh diterapkan danFRONT_FOG_LIGHTS_STATE
sertaREAR_FOG_LIGHTS_STATE
harus diterapkan. - Mobil hanya memiliki lampu kabut depan. Hanya salah satu dari
FOG_LIGHTS_STATE
atauFRONT_FOG_LIGHTS_STATE
yang harus diterapkan (bukan keduanya).REAR_FOG_LIGHTS_STATE
tidak boleh diterapkan. - Mobil hanya memiliki lampu kabut belakang. Hanya salah satu dari
FOG_LIGHTS_STATE
atauREAR_FOG_LIGHTS_STATE
yang harus diterapkan (bukan keduanya).FRONT_FOG_LIGHTS_STATE
tidak boleh diterapkan.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: VehicleLightState
Jenis unit: T/A
Rilis: Android 13
FOG_LIGHTS_SWITCH
Tombol lampu kabut. Setelan yang diinginkan pengguna. Jika:
- Mobil memiliki lampu kabut depan dan belakang. Jika lampu kabut depan dan belakang hanya dapat dikontrol
secara bersamaan,
FOG_LIGHTS_SWITCH
harus diterapkan.FRONT_FOG_LIGHTS_SWITCH
danREAR_FOG_LIGHTS_SWITCH
tidak boleh diimplementasikan. - Lampu kabut depan dan belakang hanya dapat dikontrol secara terpisah.
FOG_LIGHTS_SWITCH
tidak boleh diterapkan.FRONT_FOG_LIGHTS_SWITCH
danREAR_FOG_LIGHTS_SWITCH
harus diterapkan. - Mobil hanya memiliki lampu kabut depan. Hanya salah satu dari
FOG_LIGHTS_SWITCH
atauFRONT_FOG_LIGHTS_SWITCH
yang harus diterapkan (bukan keduanya).REAR_FOG_LIGHTS_SWITCH
tidak boleh diterapkan. - Mobil hanya memiliki lampu kabut belakang. Hanya salah satu dari
FOG_LIGHTS_SWITCH
atauREAR_FOG_LIGHTS_SWITCH
yang harus diterapkan (dan bukan keduanya).FRONT_FOG_LIGHTS_SWITCH
tidak boleh diterapkan.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: VehicleLightSwitch
Jenis unit: T/A
Rilis: Android 13
FORWARD_COLLISION_WARNING_ENABLED
Aktifkan atau nonaktifkan Peringatan Tabrakan Depan (FCW). Tetapkan ke true untuk mengaktifkan FCW dan false untuk
menonaktifkan FCW. Jika FCW diaktifkan, sistem ADAS di kendaraan harus diaktifkan dan
memantau potensi tabrakan. Secara umum, FORWARD_COLLISION_WARNING_ENABLED
harus selalu menampilkan true atau false. Jika fitur tidak tersedia karena beberapa status sementara,
seperti kecepatan kendaraan yang terlalu rendah, informasi tersebut harus disampaikan melalui
nilai ErrorState
di properti FORWARD_COLLISION_WARNING_STATE
.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
FORWARD_COLLISION_WARNING_STATE
Status Peringatan Tabrakan Depan (FCW). Menampilkan status FCW saat ini. Properti ini harus
selalu menampilkan status yang valid yang ditentukan dalam ForwardCollisionWarningState
atau
ErrorState
. Properti ini tidak boleh
menampilkan error melalui StatusCode dan harus menggunakan status error yang didukung.
Untuk ID area global (0), array VehicleAreaConfig#supportedEnumValues
harus ditentukan kecuali jika semua status ForwardCollisionWarningState
(termasuk OTHER, yang tidak direkomendasikan) dan ErrorState
didukung.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enun: ForwardCollisionWarningState/ErrorState
Jenis unit: T/A
Rilis: Android 14
FRONT_FOG_LIGHTS_STATE
Status lampu kabut depan. Menampilkan status lampu kabut depan saat ini. Hanya salah satu dari
FOG_LIGHTS_STATE
atau FRONT_FOG_LIGHTS_STATE
yang harus diterapkan.
Lihat dokumentasi tentang FOG_LIGHTS_STATE
untuk mengetahui informasi selengkapnya.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: VehicleLightState
Jenis unit: T/A
Rilis: Android 13
FRONT_FOG_LIGHTS_SWITCH
Tombol lampu kabut depan. Setelan yang diinginkan pengguna. Hanya salah satu dari
FOG_LIGHTS_SWITCH
atau FRONT_FOG_LIGHTS_SWITCH
yang harus diterapkan. Lihat
dokumentasi tentang FOG_LIGHTS_SWITCH
untuk mengetahui informasi selengkapnya.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: VehicleLightSwitch
Jenis unit: T/A
Rilis: Android 13
FUEL_CONSUMPTION_UNITS_DISTANCE_OVER_VOLUME
Unit konsumsi bahan bakar untuk ditampilkan.
Menunjukkan jenis unit yang digunakan mobil untuk menampilkan informasi konsumsi bahan bakar kepada pengguna
Benar menunjukkan unit adalah jarak per volume seperti MPG. Salah menunjukkan bahwa unit adalah volume
berdasarkan jarak seperti L/100KM. Properti ini ditentukan sebagai
VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
FUEL_DOOR_OPEN
Pintu bahan bakar terbuka. Properti ini harus menyampaikan apakah pintu bahan bakar pada kendaraan terbuka atau tidak.
Properti ini tidak berlaku untuk Kendaraan Listrik. Artinya, jika INFO_FUEL_TYPE
hanya
berisi FuelType::FUEL_TYPE_ELECTRIC
, properti ini tidak boleh diterapkan. Untuk
Kendaraan Listrik, terapkan EV_CHARGE_PORT_OPEN
. Properti ini ditentukan sebagai
VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat menerapkannya sebagai
VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
FUEL_LEVEL
Bahan bakar yang tersisa di kendaraan, dalam mililiter. Properti ini harus menyampaikan jumlah
bahan bakar yang tersisa di kendaraan saat ini dalam mililiter. Properti ini tidak berlaku untuk kendaraan
listrik. Artinya, jika INFO_FUEL_TYPE
hanya berisi
FuelType::FUEL_TYPE_ELECTRIC
, properti ini tidak boleh diterapkan. Untuk Kendaraan Listrik, terapkan
EV_BATTERY_LEVEL
Nilai tidak boleh melebihi INFO_FUEL_CAPACITY
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:MILLILITER
Rilis: Android 13
FUEL_LEVEL_LOW
Peringatan untuk level bahan bakar yang rendah. Properti ini sesuai dengan peringatan bahan bakar rendah di dasbor.
Setelah ditetapkan, FUEL_LEVEL_LOW
tidak boleh dihapus hingga lebih banyak bahan bakar ditambahkan ke
kendaraan. Properti ini dapat memperhitungkan semua sumber bahan bakar di kendaraan. Misalnya, dalam:
- Kendaraan bertenaga bensin, properti ini hanya didasarkan pada level bensin.
- Kendaraan bertenaga baterai, properti ini hanya didasarkan pada level baterai.
- Kendaraan hibrida, properti ini dapat didasarkan pada kombinasi level bahan bakar dan baterai, sesuai kebijaksanaan OEM.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
FUEL_VOLUME_DISPLAY_UNITS
Unit volume bahan bakar untuk ditampilkan. Menunjukkan unit yang digunakan mobil untuk menampilkan volume bahan bakar
kepada pengguna. Misalnya, Liter atau Galon. VehiclePropConfig.configArray
digunakan untuk
menunjukkan unit tampilan volume bahan bakar yang didukung. Satuan volume ditentukan dalam
VehicleUnit
Misalnya, configArray[0] = LITER configArray[1] = GALLON
Jika memperbarui FUEL_VOLUME_DISPLAY_UNITS
memengaruhi nilai properti
*_DISPLAY_UNITS
lainnya,
nilainya juga harus diperbarui dan dikomunikasikan ke framework AAOS.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: VehicleUnit
Jenis unit: T/A
Rilis: Android 13
GEAR_SELECTION
Roda gigi yang dipilih oleh pengguna. Nilai dalam data konfigurasi harus mewakili daftar roda gigi
yang didukung untuk kendaraan ini. Misalnya, data konfigurasi untuk transmisi otomatis harus berisi
{GEAR_NEUTRAL, GEAR_REVERSE, GEAR_PARK,
dan untuk
transmisi manual, daftarnya harus GEAR_DRIVE
, GEAR_1, GEAR_2,...}{GEAR_NEUTRAL, GEAR_REVERSE, GEAR_1, GEAR_2,...}
Untuk kendaraan transmisi otomatis yang memungkinkan pengemudi memilih gigi tertentu sesuai permintaan
(misalnya, mode manual), nilai untuk GEAR_SELECTION
harus ditetapkan ke gear
tertentu yang dipilih oleh pengemudi, bukan GEAR_DRIVE
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: VehicleGear
Jenis unit: T/A
Rilis: Android 13
GENERAL_SAFETY_REGULATION_COMPLIANCE_REQUIREMENT
Persyaratan kepatuhan terhadap General Data Protection Regulation Uni Eropa. Menampilkan nilai untuk menunjukkan apakah kepatuhan terhadap peraturan keamanan umum diperlukan dan, jika ya, jenis persyaratannya.
Mode perubahan: STATIC
Mode akses: READ
Jenis enum: GsrComplianceRequirementType
Jenis unit: T/A
Rilis: Android 14
GLOVE_BOX_DOOR_POS
Properti yang mewakili posisi pintu laci penyimpanan saat ini. maxInt32Value
dan minInt32Value
di VehicleAreaConfig harus ditentukan.
Semua bilangan bulat antara minInt32Value
dan maxInt32Value
harus didukung.
minInt32Value
menunjukkan bahwa pintu kotak sarung tangan tertutup.
minInt32Value
harus 0. maxInt32Value
menunjukkan bahwa pintu glove box berada dalam posisi terbuka sepenuhnya. Nilai di antara minInt32Value
dan
maxInt32Value
menunjukkan status transisi antara posisi tertutup dan sepenuhnya terbuka.
Properti ini tidak berada dalam unit tertentu, tetapi dalam rentang posisi relatif yang ditentukan.
ID area harus cocok dengan kursi tempat kotak sarung tangan dimaksudkan untuk digunakan. Misalnya, jika
dasbor kanan depan memiliki kotak sarung tangan yang disematkan di dalamnya, ID area harus
SEAT_1_RIGHT
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
GLOVE_BOX_LOCKED
Mengunci atau membuka kunci glove box. Jika true (benar), kotak sarung tangan terkunci. Jika salah, kotak sarung tangan
tidak terkunci. ID area harus cocok dengan kursi tempat kotak sarung tangan dimaksudkan untuk digunakan. Misalnya, jika dasbor kanan depan memiliki kotak sarung tangan yang disematkan, ID area harus
VehicleAreaSeat#ROW_1_RIGHT
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
H hingga I
HANDS_ON_DETECTION_DRIVER_STATE
Hands On Detection (HOD) driver state. Returns whether the driver's hands are on the steering
wheel. Generally, this property should return a valid state defined in the
HandsOnDetectionDriverState
or ErrorState
For example, if the feature
is not available due to
some temporary state, that information should be conveyed through ErrorState
If the vehicle wants to send a warning to the user because the driver's hands have been off the
steering wheel for too long, the warning should be surfaced through
HANDS_ON_DETECTION_WARNING
For the global area ID (0), the VehicleAreaConfig#supportedEnumValues
array must
be defined
unless all states of both HandsOnDetectionDriverState
(including OTHER, which is
not recommended)
and ErrorState
are supported.
Change mode: ON_CHANGE
Access mode: READ
Enum type: HandsOnDetectionDriverState/ErrorState
Unit type: N/A
Release: Android 14
HANDS_ON_DETECTION_ENABLED
Enable or disable Hands On Detection (HOD). Set true to enable HOD and false to disable HOD.
When HOD is enabled, a system inside the vehicle should be monitoring the presence of the driver's
hands on the steering wheel and send a warning if it detects that the driver's hands are no longer
on the steering wheel. In general, HANDS_ON_DETECTION_ENABLED
should always return
true or false.
If the feature is not available due to some temporary state, that information must be conveyed
through the ErrorState
values in the HANDS_ON_DETECTION_STATE
property.
This property is defined as minInt32Value
VehiclePropertyAccess.READ_WRITE
, but OEMs can implement it is
VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
HANDS_ON_DETECTION_WARNING
Hands On Detection (HOD) warning. Returns whether a warning is being sent to the driver for
having their hands off the wheel for too long a duration. Generally, this property should return
a valid state defined in HandsOnDetectionWarning
or ErrorState
For
example, if the feature is not available due to some temporary state, that information should
be conveyed through an ErrorState
For the global area ID (0), the
VehicleAreaConfig#supportedEnumValues
array must be defined unless all states
of both HandsOnDetectionWarning
(including OTHER, which is not recommended) and
ErrorState
are supported.
Change mode: ON_CHANGE
Access mode: READ
Enum type: HandsOnDetectionWarning/ErrorState
Unit type: N/A
Release: Android 14
HAZARD_LIGHTS_STATE
Hazard light status. Return the current status of hazard lights.
Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleLightState
Unit type: N/A
Release: Android 13
HAZARD_LIGHTS_SWITCH
Hazard light switch. The setting that the user wants. This property is defined as
VehiclePropertyAccess.READ_WRITE
, but OEMs can implement it as
VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: VehicleLightSwitch
Unit type: N/A
Release: Android 13
HEADLIGHTS_STATE
Headlights state. Returns the current state of headlights.
Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleLightState
Unit type: N/A
Release: Android 13
HEADLIGHTS_SWITCH
Headlight switch. The setting that the user wants. This property is defined as
VehiclePropertyAccess.READ_WRITE
, but OEMs can implement it as
VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: VehicleLightSwitch
Unit type: N/A
Release: Android 13
HIGH_BEAM_LIGHTS_STATE
High beam lights state. Returns the current state of high beam lights.
Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleLightState
Unit type: N/A
Release: Android 13
HIGH_BEAM_LIGHTS_SWITCH
High beam light switch. The setting that the user wants. This property is defined as
VehiclePropertyAccess.READ_WRITE
, but OEMs can implement it as
VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: VehicleLightSwitch
Unit type: N/A
Release: Android 13
HVAC_AC_ON
Turn AC on and off AC for the designated areaId. This property is defined as
VehiclePropertyAccess.READ_WRITE
, but OEMs can implement it as
VehiclePropertyAccess.READ
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_ACTUAL_FAN_SPEED_RPM
Actual fan speed.
Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_AUTO_ON
Turn automatic climate control on and off.
If true, automatic climate control is on. If false, automatic climate control is off.
If the vehicle does not support directly turning off automatic climate control, then OEMs should
add logic in their VHAL implementation to set HVAC_AUTO_ON
to false, which changes
the necessary HVAC settings to indirectly turn off HVAC_AUTO_ON
Ideally, this
should not disrupt the user. OEMs should revert to the previous state any settings that were
modified when automatic climate control is off. This way, the only outcome should be that
HVAC_AUTO_ON
is off. If restoring HVAC settings to previous settings is not possible,
then the OEM should implement the least disruptive change.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_AUTO_RECIRC_ON
Automatic recirculation on or off. When automatic recirculation is on, the HVAC system may
automatically switch to recirculation mode if the vehicle detects poor incoming air quality.
This property is defined as VehiclePropertyAccess.READ_WRITE
but OEMs can implement it as
VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_DEFROSTER
Fan-based defrost for designated window. This property is defined as
VehiclePropertyAccess.READ_WRITE
but OEMs can implement it as
VehiclePropertyAccess.READ
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_DUAL_ON
Enable temperature coupling between areas. The AreaIDs
for the
HVAC_DUAL_ON
property
shall contain a combination of HVAC_TEMPERATURE_SET
AreaIDs
that can be
coupled
together. If HVAC_TEMPERATURE_SET
is mapped to AreaIDs
[a_1, a_2, ..., a_n]
and if HVAC_DUAL_ON
can be enabled to couple a_i and a_j, then
HVAC_DUAL_ON
property must be mapped to [a_i | a_j]. Further, if
a_k and a_l can also be coupled together separately, then
HVAC_DUAL_ON
must be mapped to [a_i | a_j, a_k | a_l].
For example, a car has two front seats (ROW_1_LEFT
and ROW_1_RIGHT
) and
three back seats (ROW_2_LEFT, ROW_2_CENTER, and ROW_2_RIGHT).
There are two temperature control units, driver side and passenger side, which can be optionally
synchronized. This can be expressed this way in the AreaIDs
:
HVAC_TEMPERATURE_SET > [ROW_1_LEFT | ROW_2_LEFT, ROW_1_RIGHT | ROW_2_CENTER | ROW_2_RIGHT] HVAC_DUAL_ON > [ROW_1_LEFT | ROW_2_LEFT | ROW_1_RIGHT | ROW_2_CENTER | ROW_2_RIGHT]
When the property is enabled, the ECU must synchronize the temperature for the affected areas.
Any parameters modified as a side effect of turning on or off the DUAL_ON parameter shall generate
onPropertyEvent()
callbacks to the VHAL. In addition, if setting a temperature
(for example, driver temperature) changes another temperature (such as front passenger
temperature), then the appropriate onPropertyEvent()
callbacks must be generated.
If a user changes a temperature that breaks the coupling (for example, sets passenger temperature
independently), then the VHAL must send the appropriate onPropertyEvent()
callbacks
(including HVAC_DUAL_ON = false and HVAC_TEMPERATURE_SET[AreaID] = xxx
).
This property is defined as VehiclePropertyAccess.READ_WRITE
but OEMs can implement
it as VehiclePropertyAccess.READ
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_ELECTRIC_DEFROSTER_ON
Electric defrosters' status.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can implement
it as VehiclePropertyAccess.READ
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_FAN_DIRECTION
Fan direction setting. This property is defined as VehiclePropertyAccess.READ_WRITE
,
but OEMs can implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: VehicleHvacFanDirection
Unit type: N/A
Release: Android 13
HVAC_FAN_DIRECTION_AVAILABLE
Fan positions available. This is a bit mask of fan positions available for the zone. Each
available fan direction is denoted by a separate entry in the vector. A fan direction can have
multiple bits from vehicle_hvac_fan_direction
set. For instance, a typical car may have these
fan positions:
- FAN_DIRECTION_FACE (0x1) - FAN_DIRECTION_FLOOR (0x2) - FAN_DIRECTION_FACE | FAN_DIRECTION_FLOOR (0x3) - FAN_DIRECTION_DEFROST (0x4) - FAN_DIRECTION_FLOOR | FAN_DIRECTION_DEFROST (0x6)
Change mode: STATIC
Access mode: READ
Enum type: VehicleHvacFanDirection
Unit type: N/A
Release: Android 13
HVAC_FAN_SPEED
Fan speed setting. The maxInt32Value
and minInt32Value
in
VehicleAreaConfig must be defined. All integers between minInt32Value
and
maxInt32Value
must be supported.
minInt32Value
lowest fan speedmaxInt32Value
highest fan speed
This property is not in any specific unit but in a specified range of relative speeds. This
property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can elect to
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_MAX_AC_ON
MAX AC on or off. When MAX AC is on, the ECU can adjust items such as vent position, fan speed,
and temperature as needed to cool the vehicle as quickly as possible. Any parameters modified as
a side effect of turning on or off the MAX AC parameter generates onPropertyEvent()
callbacks to the VHAL. This property is defined as VehiclePropertyAccess.READ_WRITE
but OEMs can implement it as VehiclePropertyAccess.READ
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_MAX_DEFROST_ON
Turn MAX DEFROST on and off. When MAX DEFROST is on, the ECU can adjust items such as vent
position, fan speed, and temperature as needed to defrost the windows as quickly as possible.
Any parameters modified as a side effect of turning on or off MAX DEFROST parameter generates
onPropertyEvent()
callbacks to the VHAL. The AreaIDs
for
HVAC_MAX_DEFROST_ON
indicate MAX DEFROST can be controlled in the area. For example,
areaConfig.areaId = {ROW_1_LEFT | ROW_1_RIGHT}
indicates that
HVAC_MAX_DEFROST_ON
can only be controlled for the front rows. This property is
defined as VehiclePropertyAccess.READ_WRITE
but OEMs can implement it
as VehiclePropertyAccess.READ
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_POWER_ON
Represents the global power state for HVAC. Setting this property to false MAY mark some properties that control individual HVAC features and subsystems in the UNAVAILABLE state. Setting this property to true MAY mark some properties that control individual HVAC features and subsystems to the AVAILABLE state (unless any or all of the properties are UNAVAILABLE on their own individual merits).
HvacPower_DependentProperties
are those properties that require HVAC to be powered
on to enable functionality. In some cars, for example, to turn on the AC, HVAC must first be
powered on. The HvacPower_DependentProperties
list must be set in the
VehiclePropConfig.configArray
HvacPower_DependentProperties
must only
contain those properties associated with VehicleArea:SEAT
AreaID mapping for HVAC_POWER_ON
property must contain all AreaIDs
that
HvacPower_DependentProperties
are mapped to. For example, a car has two:
- Front seats (
ROW_1_LEFT
,ROW_1_RIGHT
) and three back seats (ROW_2_LEFT, ROW_2_CENTER, ROW_2_RIGHT). If the HVAC features (AC, Temperature etc.) throughout the car are dependent on a single HVAC power controller, thenHVAC_POWER_ON
must be mapped to [ROW_1_LEFT | ROW_1_RIGHT | ROW_2_LEFT | ROW_2_CENTER | ROW_2_RIGHT]
- Seats in the front row (
ROW_1_LEFT
,ROW_1_RIGHT
) and three seat in the second (ROW_2_LEFT, ROW_2_CENTER, ROW_2_RIGHT
) and third rows (ROW_3_LEFT, ROW_3_CENTER, ROW_3_RIGHT
). If the car has temperature controllers in the front row that can operate entirely independently of temperature controllers in the back of the vehicle, thenHVAC_POWER_ON
must be mapped to a two element array:- ROW_1_LEFT | ROW_1_RIGHT - ROW_2_LEFT | ROW_2_CENTER | ROW_2_RIGHT | ROW_3_LEFT | ROW_3_CENTER | ROW_3_RIGHT
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs have the
option to implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_RECIRC_ON
Recirculation on and off. Controls the supply of exterior air to the cabin. Recirc
on means most of the airflow into the cabin originates in the cabin. Recirc
off means most of the airflow into the cabin comes from outside the car. This
property is defined as VehiclePropertyAccess.READ_WRITE
but OEMs can implement it as
VehiclePropertyAccess.READ
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_SEAT_TEMPERATURE
Seat heating and cooling. The maxInt32Value
and minInt32Value
in
VehicleAreaConfig
must be defined. All integers between minInt32Value
and maxInt32Value
must be supported.
The maxInt32Value
indicates the maximum seat temperature heating setting.
The minInt32Value
must be 0, unless the vehicle supports seat cooling. In this case,
minInt32Value
indicates the maximum seat temperature cooling setting.
This property is not in any specific unit, but in a specified range of relative temperature
settings. This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs
can implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_SEAT_VENTILATION
Seat ventilation. The maxInt32Value
and minInt32Value
in
VehicleAreaConfig
must be defined. All integers between minInt32Value
and maxInt32Value
must be supported. The minInt32Value
must be 0. The
maxInt32Value
indicates the maximum ventilation setting available for the seat.
This property is not in any particular unit but in the specified range of ventilation settings.
Used by HVAC apps and Assistant to enable, change, or read state of seat ventilation. This is different than seating cooling. It can be on at the same time as cooling, or not.
This property is defined as >VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_SIDE_MIRROR_HEAT
Side mirror heat. Increasing values denote higher heating levels for side mirrors.
You must define maxInt32Value
and minInt32Value
in
VehicleAreaConfig
All integers between minInt32Value
and
maxInt32Value
must be supported. In config data:
maxInt32Value
represents maximum heating level.minInt32Value
MUST be 0 and indicates no heating.
This property is not in any particular unit but in a specified range of relative heating settings.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs have the
option to implement it as VehiclePropertyAccess.READ
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_STEERING_WHEEL_HEAT
Sets the amount of heating and cooling for the steering wheel. The maxInt32Value
and
minInt32Value
in VehicleAreaConfig
must be defined. All integers between
minInt32Value
and maxInt32Value
must be supported.
The maxInt32Value
indicates the maximum steering wheel heating setting. The
minInt32Value
should be 0, unless the vehicle supports steering wheel
cooling, too. In this case, the minInt32Value
indicates the maximum steering wheel
cooling setting. This property is not in any particular unit but in a specified range of heating
settings. This property is defined as VehiclePropertyAccess.READ
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HVAC_TEMPERATURE_CURRENT
HVAC current temperature.
Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:CELSIUS
Release: Android 13
HVAC_TEMPERATURE_DISPLAY_UNITS
Temperature units for display. Indicates if temperature is displayed in Celsius or Fahrenheit.
VehiclePropConfig.configArray
indicates the supported temperature display units. For
example,
configArray[0] = CELSIUS configArray[1] = FAHRENHEIT
This parameter MAY be used to
display any HVAC temperature in the system. Values must be one of
VehicleUnit.CELSIUS
or VehicleUnit.FAHRENHEIT
If updating HVAC_TEMPERATURE_DISPLAY_UNITS affects the values of other
*_DISPLAY_UNITS
properties, then their values must be updated and communicated to
the AAOS framework.
This property is defined as
VehiclePropertyAccess.READ_WRITE
, but OEMs can implement
it is VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: VehicleUnit
Unit type: N/A
Release: Android 13
HVAC_TEMPERATURE_SET
HVAC target temperature set in Celsius.
The minFloatValue
and maxFloatValue
in VehicleAreaConfig
must be defined:
minFloatValue
minimum temperature setting in Celsius.maxFloatValue
maximum temperature setting in Celsius.
If all the values between minFloatValue
and maxFloatValue
are not
supported, use the configArray
to list the valid temperature values that can be set.
This also describes a lookup table to convert the temperature from Celsius to Fahrenheit (and
vice versa) for the vehicle. The configArray
must be defined if standard unit
conversion is not supported on the vehicle.
The configArray
is set as follows:
configArray[0]
[lower bound of supported temperature in Celsius] * 10configArray[1]
[upper bound of supported temperature in Celsius] * 10configArray[2]
[increment in Celsius] * 10configArray[3]
[lower bound of the supported temperature in Fahrenheit] * 10configArray[4]
[upper bound of the supported temperature in Fahrenheit] * 10configArray[5]
[increment in Fahrenheit] * 10
The minFloatValue
and maxFloatValue
in VehicleAreaConfig
must be equal to configArray[0]
and
configArray[1]
respectively. For example, if the vehicle supports temperature values
as [16.0, 16.5, 17.0 ,..., 28.0] in Celsius [60.5, 61.5, 62.5 ,..., 84.5]
in
Fahrenheit, the configArray
should be
configArray = {160, 280, 5, 605, 845, 10}
Ideally, the ratio of the Celsius increment to the Fahrenheit increment should be as close to
the actual ratio of 1 degree Celsius to 1.8 degrees Fahrenheit. There must be a one-to-one mapping
of all Celsius values to Fahrenheit values defined by the configArray
The
configArray
is used by
clients to convert this property's temperature from Celsius to Fahrenheit. Also, it lets clients
know what Celsius value to set the property to achieve their desired Fahreneheit value for the
system. If the ECU does not have a one-to-one mapping of all Celsius values to Fahrenheit values,
then the configArray
should only define the list of Celsius and Fahrenheit values
that have a one-to-one mapping.
For example, if the ECU supports Celsius values from 16 to 28 and Fahrenheit values from 60 to
85, each with an increment of 1, then one possible configArray
is
code>{160, 280, 10, 600, 840, 20}In this case, 85 is not a supported temperature.
Any value set in between a valid value should be rounded to the closest valid value. We highly
recommended that the OEM also implement the HVAC_TEMPERATURE_VALUE_SUGGESTION
vehicle property because it provides applications with a simple method for determining temperature
values that can be set for a vehicle and for converting values between Celsius and Fahrenheit.
This property is defined as VehiclePropertyAccess.READ
, but OEMs can implement it as
VehiclePropertyAccess.READ
Change mode: ON_CHANGE
Access mode: READ_WRITE/READ
Enum type: N/A
Unit type: VehicleUnit:CELSIUS
Release: Android 13
HVAC_TEMPERATURE_VALUE_SUGGESTION
Suggested values for setting HVAC temperature.
Implement the property to help applications understand the closest supported temperature value in Celsius or Fahrenheit.
floatValues[0]
Requested value that an app wants to set a temperature to.floatValues[1]
Unit forfloatValues[0]
and should be one of{VehicleUnit.CELSIUS, VehicleUnit.FAHRENHEIT}
floatValues[2]
Value OEMs suggested in CELSIUS (this value is not included in the request).floatValues[3]
Value OEMs suggested in FAHRENHEIT (this value is not included in the request).
An application calls set(VehiclePropValue propValue)
with the requested value
and unit for the value. OEMs need to return the suggested values in
floatValues[2]
and floatValues[3]
by onPropertyEvent()
callbacks.
The suggested values must conform to the values that can be derived from the
HVAC_TEMPERATURE_SET
configArray
In other words, the suggested values
and the table of values
from the configArray
should be the same.
We recommended that the OEM add custom logic in their VHAL implementation to avoid making requests to the HVAC ECU. The logic can be as follows. To convert temperature from Celsius to Fahrenheit:
// Given tempC and the configArray float minTempC = configArray[0] / 10.0; float temperatureIncrementCelsius = configArray[2] / 10.0; float minTempF = configArray[3] / 10.0; float temperatureIncrementFahrenheit = configArray[5] / 10.0; // Round to the closest increment int numIncrements = round((tempC - minTempC) / temperatureIncrementCelsius); tempF = temperatureIncrementFahrenheit * numIncrements + minTempF;
For example, when a driver uses the voice assistant to set HVAC temperature to 66.2 in Fahrenheit.
First, an application sets this property with the value
[66.2, (float)VehicleUnit.FAHRENHEIT,0,0]
If an OEM suggests to set 19.0 in Celsius or 66.5 in Fahrenheit at the user's request, then VHAL
must generate a callback with a property value
[66.2, (float)VehicleUnit.FAHRENHEIT, 19.0, 66.5]
After the voice assistant gets the callback, it informs the user and sets the HVAC temperature to
the suggested value.
Another example, an app receives 21 Celsius as the current temperature value by querying
HVC_TEMPERATURE_SET
but the app needs to know what value is displayed on the car's
UI in Fahrenheit. For this, the app sets the property to
[21, (float)VehicleUnit.CELSIUS, 0, 0]
If the suggested value by the OEM for 21 Celsius is 70 Fahrenheit, then VHAL must generate a
callback with property value [21, (float)VehicleUnit.CELSIUS, 21.0, 70.0]
In this
case, the app can know that the value is 70.0 Fahrenheit in the car's UI.
Change mode: ON_CHANGE
Access mode: READ_WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
HW_CUSTOM_INPUT
Defines a custom OEM partner input event. This input event must be used by OEM partners who want to propagate events not supported by Android. It is composed by an array of int32 values only. The Android properties are:
int32Values[0]
Input code identifying the function representing this event. Valid event types are defined byCustomInputType.CUSTOM_EVENT_F1
up toCustomInputType.CUSTOM_EVENT_F10
They represent the custom event to be defined by OEM partners.int32Values[1]
Target display type defined inVehicleDisplay
Events not tied to a specific display must be sent toVehicleDisplay#MAIN
int32Values[2]
Repeat counter, if 0 then event is not repeated. Values 1 or higher indicate how many times this event has been repeated.
Change mode: ON_CHANGE
Access mode: READ
Enum type: CustomInputType
Unit type: N/A
Release: Android 13
HW_KEY_INPUT
Property to feed hardware input events to Android.
int32Values[0]
Action defined by VehicleHwKeyInputActionint32Values[1]
Key code, must use standard android key codeint32Values[2]
Target display defined inVehicleDisplay
Events not tied to specific display must be sent toVehicleDisplay#MAIN
int32Values[3]
(Optional) Number of ticks. The value must be equal o greater than 1. When omitted, Android defaults to 1.
Change mode: .ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
HW_KEY_INPUT_V2
Property to feed hardware input events to Android.
int32array[0]
Target display defined byVehicleDisplay
such as:
VehicleDisplay::MAIN, VehicleDisplay::INSTRUMENT_CLUSTER, VehicleDisplay::AUX
int32array[1]
Key code, must use the standard Android key code, such asKEYCODE_HOME
andKEYCODE_BACK
int32array[2]
action defined in VehicleHwKeyInputAction, such as:
VehicleHwKeyInputAction::ACTION_UP
,VehicleHwKeyInputAction::ACTION_UP
int32array[3]
Repeat count of the event. For key down events, this is the repeat count with the first down starting at 0 and counting up from there. For key up events, this is always equal to 0.int64array[0]
Down time in elapsed nanoseconds since the last boot. Denotes the time of the most recent key down event. For the down event, this is the event time of the down event.
Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 14
HW_MOTION_INPUT
Property to feed hardware input events to Android.
int32array[0]
Target display defined byVehicleDisplay
, such as:
VehicleDisplay::MAIN, VehicleDisplay::INSTRUMENT_CLUSTER
,VehicleDisplay::AUX
int32array[1]
Input type defined in VehicleHwMotionInputSource, such as:
VehicleHwMotionInputSource::SOURCE_KEYBOARD
,VehicleHwMotionInputSource::SOURCE_DPAD
int32array[2]
Action code defined in VehicleHwMotionInputAction, such as:
VehicleHwMotionInputAction::ACTION_UP
,VehicleHwMotionInputAction::ACTION_DOWN
int32array[3]
Button state flag defined in VehicleHwMotionButtonStateFlag, such as:
VehicleHwMotionButtonStateFlag::BUTTON_PRIMARY
,VehicleHwMotionButtonStateFlag::BUTTON_SECONDARY
int32array[4]
Pointer events count, N. N must be a positive integer.int32array[5:5+N-1]
Pointer id, length Nint32array[5+N:5+2*N-1]
Tool type, length N. As defined inVehicleHwMotionToolType
, such as:
VehicleHwMotionToolType::TOOL_TYPE_FINGER
,VehicleHwMotionToolType::TOOL_TYPE_STYLUS
floatArray[0:N-1]
x data, length NfloatArray[N:2*N-1]
y data, length NfloatArray[2*N:3*N-1]
pressure data, length NfloatArray[3*N:4*N-1]
size data, length Nint64array[0]
Down time, elapsed nanoseconds since boot. Denotes the time when the user originally pressed down to start a stream of position events. For the down event, it is the event time of the down event.
Change mode: ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 14
HW_ROTARY_INPUT
Property to feed hardware rotary events to Android.
int32Values[0]
RotaryInputType to identify which rotary knob is rotated.int32Values[1]
Number of detents (clicks), positive for clockwise, negative for counterclockwise.int32Values[2]
Target display defined inVehicleDisplay
Events not tied to a specific display must be sent toVehicleDisplay#MAIN
int32values[3 .. 3 + abs(number of detents) - 2]
Nanosecond deltas between pairs of consecutive detents when the number of detents is more than 1 or less than -1.VehiclePropValue.timestamp
When the rotation took place. If the number of detents is more than 1 or less than -1, when the first detent of rotation took place.
Change mode: ON_CHANGE
Access mode: READ
Enum type: RotaryInputType
Unit type: N/A
Release: Android 13
IGNITION_STATE
Represents ignition state.
Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleIgnitionState
Unit type: N/A
Release: Android 13
INFO_DRIVER_SEAT
Driver's seat location VHAL implementations must ignore the areaId. Use
VehicleArea:GLOBAL
Change mode: STATIC
Access mode: READ
Enum type: VehicleAreaSeat
Unit type: N/A
Release: Android 13
INFO_EV_BATTERY_CAPACITY
Nominal battery capacity for EV or hybrid vehicle. Returns the nominal battery capacity, EV
or hybrid. This is the total usable battery capacity when the vehicle is new. This value may
differ from EV_CURRENT_BATTERY_CAPACITY
because
EV_CURRENT_BATTERY_CAPACITY
returns the real-time usable battery capacity taking
into account factors such as battery aging and temperature dependency.
Change mode: STATIC
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:WH
Release: Android 13
INFO_EV_CONNECTOR_TYPE
List of connectors this EV may use. If the vehicle has multiple charging ports, this property must return all possible connector types that can be used by at least one charging port on the vehicle.
Change mode: STATIC
Access mode: READ
Enum type: EvConnectorType
Unit type: N/A
Release: Android 13
INFO_EV_PORT_LOCATION
This property must communicate the location of the charging port on the EV using the
PortLocationType enum. If a vehicle has multiple ports, this property must return
the port that allows the fastest charging. To communicate all port locations, use
INFO_MULTI_EV_PORT_LOCATIONS
Access mode: READ
Enum type:
PortLocationType
Unit type: N/A
Release: Android 13
INFO_EXTERIOR_DIMENSIONS
Exterior dimensions of vehicle:
- Height:
int32Values[0]
- Length:
int32Values[1]
- Width:
int32Values[2]
- Width, including mirrors:
int32Values[3]
- Wheel base, including mirrors:
int32Values[4]
- Track width front:
int32Values[5]
- Track width rear:
int32Values[6]
- Curb-to-curb turning diameter:
int32Values[7]
Change mode: STATIC
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:MILLIMETER
Release: Android 13
INFO_FUEL_CAPACITY
Fuel capacity of the vehicle in milliliters. This property must communicate the maximum amount
of fuel that can be stored in the vehicle in milliliters. This property does not apply to electric
vehicles (EV). That is, if INFO_FUEL_TYPE
only contains
FuelType::FUEL_TYPE_ELECTRIC
, INFO_FUEL_CAPACITY must not be implemented.
For EVs, implement INFO_EV_BATTERY_CAPACITY.
Change mode: STATIC
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:MILLILITER
Release: Android 13
INFO_FUEL_DOOR_LOCATION
Fuel door location. This property must communicate the location of the fuel door on the vehicle.
This property does not apply to EVs. That is, if INFO_FUEL_TYPE
only contains
FuelType::FUEL_TYPE_ELECTRIC
, this property must not be implemented. For EVs,
implement INFO_EV_PORT_LOCATION
or INFO_MULTI_LOCATIONS
Change mode: STATIC
Access mode: READ
Enum type: PortLocationType
Unit type: N/A
Release: Android 13
INFO_FUEL_TYPE
List of fuels the vehicle may use. FuelType::FUEL_TYPE_ELECTRIC
must only be
included if the vehicle can plug-in rechargeable. For example, a Fully Hybrid Electric Vehicle
(FHEV) must not include FuelType::FUEL_TYPE_ELECTRIC
as the INT32_VEC
value for INFO_FUEL_TYPE
INFO_FUEL_TYPE
can be populated as such.
int32Values = { FuelType::FUEL_TYPE_UNLEADED }
FuelType::FUEL_TYPE_ELECTRIC
as the INT32_VEC value for
INFO_FUEL_TYPE
INFO_FUEL_TYPE
can be populated as such,
int32Values = { FuelType::FUEL_TYPE_UNLEADED, FuelType::FUEL_TYPE_ELECTRIC }
Change mode: STATIC
Access mode: READ
Enum type: FuelType
Unit type: N/A
Release: Android 13
INFO_MAKE
Manufacturer of vehicle. This property must communicate the vehicle's public brand name.
Change mode: STATIC
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
INFO_MODEL
Model of vehicle. This property must communicate the vehicle's public model name.
Change mode: STATIC
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
INFO_MODEL_YEAR
Model year of vehicle in `YYYY` format based on the Gregorian calendar.
Change mode: STATIC
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:YEAR
Release: Android 13
INFO_MULTI_EV_PORT_LOCATIONS
Multiple EV port locations. Implement this property if the vehicle has multiple EV ports. Port locations are defined in PortLocationType. For example, a car has one port front left and one port rear left:
int32Values[0] = PortLocationType::FRONT_LEFT int32Values[1] = PortLocationType::REAR_LEFT
If a vehicle has only one port, this property's value should list one element. To describe one port location, see INFO-EV-PORT-LOCATION
.
Change mode: STATIC
Access mode: READ
Enum type: PortLocationType
Unit type: N/A
Release: Android 13
INFO_VIN
VIN of vehicle.
Change mode: STATIC
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
INITIAL_USER_INFO
Defines the Android user to be used during initialization. This property is called by
the Android system when it initializes and lets the HAL define which Android user should be
started. This request is made by setting a VehiclePropValue (defined by
InitialUserInfoRequest
), and the HAL must respond with a property change event (defined
by InitialUserInfoResponse).
If the HAL doesn't respond after a time defined by the Android system, the Android system proceeds
as if HAL returned a response of action InitialUserInfoResponseAction:DEFAULT.
For example, on first boot, the request could be:
int32[0] 42 // request id (arbitrary number set by Android system) int32[1] 1 // InitialUserInfoRequestType::FIRST_BOOT int32[2] 0 // id of current user (usersInfo.currentUser.userId) int32[3] 1 // flag of current user (usersInfo.currentUser.flags = SYSTEM) int32[4] 1 // number of existing users (usersInfo.numberUsers); int32[5] 0 // user #0 (usersInfo.existingUsers[0].userId) int32[6] 1 // flags of user #0 (usersInfo.existingUsers[0].flags)
int32[0] 42 // must match the request id from the request int32[1] 2 // action = InitialUserInfoResponseAction::CREATE int32[2] -10000 // userToSwitchOrCreate.userId (not used as user will be created) int32[3] 8 // userToSwitchOrCreate.flags = ADMIN string: "||Owner" // userLocales + separator + userNameToCreate
InitialUserInfoResponseAction:CREATE
). For example, to create the
same Owner user with en-US and pt-BR locales, the string value of the response is
en-US,pt-BR||Owner. As such, neither the locale nor the name can contain two vertical bars
(||
) in their values, although you can use a single vertical bar (|
).
Change mode: ON_CHANGE
Access mode: READ_WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
J ke R
LANE_CENTERING_ASSIST_COMMAND
Perintah Lane Centering Assist (LCA). Perintah untuk mengaktifkan dan menangguhkan LCA.
Saat perintah ACTIVATE
dari LaneCenteringAssistCommand
dikirim,
LANE_CENTERING_ASSIST_STATE
harus ditetapkan ke LaneCenteringAssistState#ACTIVATION_REQUESTED
. Saat
perintah ACTIVATE
berhasil,
LANE_CENTERING_ASSIST_STATE
harus ditetapkan ke LaneCenteringAssistState#ACTIVATED
.
Saat perintah
DEACTIVATE
dari LaneCenteringAssistCommand
berhasil,
LANE_CENTERING_ASSIST_STATE
harus ditetapkan ke
LaneCenteringAssistState#ENABLED
Untuk ID area global (0), VehicleAreaConfig#supportedEnumValues
harus ditentukan kecuali jika semua
nilai enum LaneCenteringAssistCommand
didukung. Jika properti ini tidak tersedia
karena LCA dinonaktifkan (misalnya, LANE_CENTERING_ASSIST_ENABLED
bernilai salah), properti
ini harus
menampilkan StatusCode#NOT_AVAILABLE_DISABLED
. Jika LANE_CENTERING_ASSIST_STATE
diterapkan dan
status ditetapkan ke nilai ErrorState
, properti ini harus menampilkan StatusCode
yang selaras dengan
nilai ErrorState
. Misalnya, jika LANE_CENTERING_ASSIST_STATE
ditetapkan ke
ErrorState#NOT_AVAILABLE_SPEED_LOW
, properti ini harus menampilkan
StatusCode#NOT_AVAILABLE_SPEED_LOW
Mode perubahan: ON_CHANGE
Mode akses: WRITE
Jenis enum: LaneCenteringAssistCommand
Jenis unit: T/A
Rilis: Android 14
LANE_CENTERING_ASSIST_ENABLED
Aktifkan atau nonaktifkan Bantuan Pemusatan Jalur (LCA). Tetapkan ke true untuk mengaktifkan LCA dan false untuk menonaktifkan LCA. Saat LCA diaktifkan, sistem ADAS di kendaraan harus diaktifkan dan menunggu sinyal aktivasi dari pengemudi. Setelah fitur diaktifkan, sistem ADAS akan mengemudikan kendaraan agar tetap berada di tengah jalurnya saat ini.
Fitur ini berbeda dengan Lane Keep Assist (LKA) yang memantau apakah pengemudi tidak sengaja
menyimpang ke arah atau melewati marka jalan. Jika penyimpangan jalur yang tidak disengaja terdeteksi, sistem akan menerapkan kontrol kemudi untuk mengembalikan kendaraan ke jalur saat ini.
Secara umum, LANE_CENTERING_ASSIST_ENABLED
harus selalu menampilkan true atau false. Jika
fitur tidak tersedia karena beberapa status sementara, seperti kecepatan kendaraan terlalu rendah atau
terlalu tinggi, informasi tersebut harus disampaikan melalui nilai ErrorState
di
properti LANE_CENTERING_ASSIST_STATE
.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
LANE_CENTERING_ASSIST_STATE
Status Lane Centering Assist (LCA). Menampilkan status LCA saat ini. Properti ini harus selalu
menampilkan status yang valid yang ditentukan dalam LaneCenteringAssistState
atau ErrorState
Properti ini tidak boleh menampilkan error melalui StatusCode
dan harus menggunakan status error
yang didukung.
Jika LCA menyertakan peringatan penyimpangan jalur, peringatan tersebut harus ditampilkan melalui properti Peringatan Penyimpangan Jalur (LDW).
Untuk ID area global (0), array VehicleAreaConfig#supportedEnumValues
harus ditentukan kecuali jika semua status LaneCenteringAssistState
(termasuk OTHER, yang tidak direkomendasikan) dan ErrorState
didukung.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: LaneCenteringAssistState/ErrorState
Jenis unit: T/A
Rilis: Android 14
LANE_DEPARTURE_WARNING_ENABLED
Aktifkan atau nonaktifkan Peringatan Penyimpangan Jalur (LDW). Tetapkan ke true untuk mengaktifkan LDW dan false untuk menonaktifkan LDW. Jika LDW diaktifkan, sistem ADAS di kendaraan harus diaktifkan dan memantau apakah kendaraan mendekati atau melintasi garis lajur, jika demikian, peringatan akan diberikan.
Secara umum, LANE_DEPARTURE_WARNING_ENABLED
harus selalu menampilkan true atau false. Jika
fitur tidak tersedia karena beberapa status sementara, seperti kecepatan kendaraan terlalu rendah
atau terlalu tinggi, informasi tersebut harus disampaikan melalui nilai ErrorState
di
properti LANE_DEPARTURE_WARNING_STATE
.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
LANE_DEPARTURE_WARNING_STATE
Status Peringatan Penyimpangan Jalur (LDW). Menampilkan status LDW saat ini. Properti ini harus selalu
menampilkan status yang valid yang ditentukan dalam LaneDepartureWarningState
atau ErrorState
Properti ini tidak boleh menampilkan error melalui StatusCode
dan harus menggunakan status error yang didukung
sebagai gantinya.
Untuk ID area global (0), array VehicleAreaConfig#supportedEnumValues
harus ditentukan kecuali jika semua status LaneDepartureWarningState
(termasuk OTHER, yang tidak direkomendasikan) dan ErrorState
didukung.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: LaneDepartureWarningState/ErrorState
Jenis unit: T/A
Rilis: Android 14
LANE_KEEP_ASSIST_ENABLED
Aktifkan atau nonaktifkan Lane Keep Assist (LKA). Tetapkan ke true untuk mengaktifkan LKA dan false untuk menonaktifkan LKA. Jika LKA diaktifkan, sistem ADAS di kendaraan harus diaktifkan dan memantau apakah pengemudi secara tidak sengaja menyimpang ke arah atau melewati marka jalan. Jika penyimpangan jalur yang tidak disengaja terdeteksi, sistem akan menerapkan kontrol kemudi untuk mengembalikan kendaraan ke jalur saat ini. Hal ini berbeda dengan Lane Centering Assist (LCA) yang, saat diaktifkan, menerapkan kontrol kemudi berkelanjutan untuk menjaga kendaraan tetap berada di tengah jalur saat ini.
Secara umum, LANE_KEEP_ASSIST_ENABLED
harus selalu menampilkan true atau false. Jika
fitur tidak tersedia karena beberapa status sementara, seperti kecepatan kendaraan terlalu rendah atau
terlalu tinggi, informasi tersebut harus disampaikan melalui nilai ErrorState
di
properti LANE_KEEP_ASSIST_STATE
.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
LANE_KEEP_ASSIST_STATE
Status Lane Keep Assist (LKA). Menampilkan status LKA saat ini. Properti ini harus selalu menampilkan
status yang valid yang ditentukan di LaneKeepAssistState
atau ErrorState
. Properti ini tidak boleh
menampilkan error melalui StatusCode
dan harus menggunakan status error yang didukung
Jika LKA menyertakan peringatan penyimpangan jalur sebelum menerapkan koreksi kemudi, peringatan tersebut harus ditampilkan melalui properti Peringatan Penyimpangan Jalur (LDW).
Untuk ID area global (0), array VehicleAreaConfig#supportedEnumValues
harus ditentukan
kecuali jika semua status LaneKeepAssistState
(termasuk OTHER, yang tidak direkomendasikan) dan
ErrorState
didukung.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: LaneKeepAssistState/ErrorState
Jenis unit: T/A
Rilis: Android 14
LOCATION_CHARACTERIZATION
Karakterisasi input yang digunakan untuk menghitung lokasi. Properti ini harus menunjukkan data dan input sensor apa (jika ada) yang dipertimbangkan oleh sistem saat menghitung lokasi kendaraan yang dibagikan ke Android melalui HAL GNSS.
Nilai harus menampilkan kumpulan flag bit. Flag bit ditentukan di
LocationCharacterization. Nilai juga harus menyertakan tepat satu dari DEAD_RECKONED
atau
RAW_GNSS_ONLY
di antara kumpulan flag bitnya.
Jika properti ini tidak didukung, diasumsikan bahwa tidak ada input sensor tambahan yang digabungkan ke dalam update GNSS yang disediakan melalui HAL GNSS. Kecuali jika ditentukan lain melalui antarmuka HAL GNSS.
Mode perubahan: STATIC
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
MIRROR_AUTO_FOLD_ENABLED
Merepresentasikan properti untuk fitur Lipat Otomatis Cermin. Properti ini bernilai benar jika fitur untuk melipat spion samping kendaraan secara otomatis (misalnya, saat spion dilipat ke dalam secara otomatis saat seseorang keluar dan mengunci kendaraan) diaktifkan.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
MIRROR_AUTO_TILT_ENABLED
Merepresentasikan properti untuk fitur Mirror Auto Tilt. Properti ini bernilai benar jika fitur untuk memiringkan spion samping kendaraan secara otomatis (misalnya, saat spion miring ke bawah secara otomatis saat kendaraan dimundurkan) diaktifkan.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
MIRROR_FOLD
Lipat cermin. True menunjukkan spion dilipat. Properti ini ditentukan sebagai
VehiclePropertyAccess.READ_WRITE
, tetapi OEM dapat menerapkannya sebagai
VehiclePropertyAccess.READ
saja.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
MIRROR_LOCK
Kunci cermin. Benar menunjukkan posisi pencerminan dikunci dan tidak dapat diubah.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
MIRROR_Y_MOVE
Mencerminkan gerakan Y. maxInt32Value
dan minInt32Value
di setiap
VehicleAreaConfig
harus ditentukan.
Semua bilangan bulat antara minInt32Value
dan maxInt32Value
harus didukung.
maxInt32Value
mewakili kecepatan gerakan maksimum cermin saat miring
ke kanan. minInt32Value
mewakili kecepatan gerakan maksimum cermin saat
miring ke kiri.
Nilai absolut yang lebih besar, baik positif maupun negatif, menunjukkan kecepatan gerakan yang lebih cepat. Setelah mirror mencapai batas posisi, nilai harus direset ke 0. Jika nilai MIRROR_Y_MOVE saat ini adalah 0, berarti tidak ada gerakan yang terjadi saat ini.
Properti ini tidak dalam unit tertentu, tetapi dalam rentang kecepatan gerakan relatif yang ditentukan.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
MIRROR_Y_POS
Mencerminkan posisi Y. maxInt32Value
dan minInt32Value
di
VehicleAreaConfig
harus ditentukan.
Semua bilangan bulat antara minInt32Value
dan maxInt32Value
harus didukung.
minInt32Value
menunjukkan bahwa cermin miring sepenuhnya ke kiri.
Nilai ini harus berupa nilai non-positif. maxInt32Value
menunjukkan bahwa cermin miring
sepenuhnya
ke kanan. Nilai ini harus berupa nilai positif. 0 menunjukkan bahwa cermin tidak miring ke salah satu
arah.
Nilai di antara minInt32Value
dan maxInt32Value
menunjukkan status transisi
antara posisi ekstrem kiri
dan ekstrem kanan.
Properti ini tidak berada dalam unit tertentu, tetapi dalam rentang posisi relatif yang ditentukan.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
MIRROR_Z_MOVE
Gerakan Z cermin. maxInt32Value
dan minInt32Value
di setiap
VehicleAreaConfig
harus ditentukan.
Semua bilangan bulat antara minInt32Value
dan maxInt32Value
harus didukung.
maxInt32Value
mewakili kecepatan gerakan maksimum cermin saat dimiringkan ke atas.
minInt32Value
mewakili kecepatan gerakan maksimum cermin saat dimiringkan ke bawah.
Nilai absolut yang lebih besar, baik positif maupun negatif, menunjukkan kecepatan gerakan yang lebih cepat. Setelah mirror mencapai batas posisi, nilai harus direset ke 0. Jika nilai MIRROR_Z_MOVE saat ini adalah 0, berarti tidak ada gerakan yang terjadi saat ini.
Properti ini tidak dalam unit tertentu, tetapi dalam rentang kecepatan gerakan relatif yang ditentukan.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
MIRROR_Z_POS
Mencerminkan posisi Z. maxInt32Value
dan minInt32Value
di
VehicleAreaConfig
harus ditentukan. Semua bilangan bulat antara minInt32Value
dan maxInt32Value
harus didukung. minInt32Value
menunjukkan
cermin dimiringkan sepenuhnya ke bawah. Nilai ini harus berupa nilai non-positif. maxInt32Value
menunjukkan bahwa cermin dimiringkan sepenuhnya ke atas. Nilai ini harus berupa
nilai positif. 0 menunjukkan bahwa cermin tidak miring ke salah satu arah.
Nilai di antara minInt32Value
dan maxInt32Value
menunjukkan
status transisi antara posisi sepenuhnya ke bawah dan sepenuhnya ke atas.
Properti ini tidak berada dalam unit tertentu, tetapi dalam rentang posisi relatif yang ditentukan.
Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
, tetapi OEM hanya dapat
menerapkannya sebagai VehiclePropertyAccess.READ
.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
NIGHT_MODE
Benar menunjukkan bahwa sensor mode malam telah mendeteksi lingkungan kabin mobil memiliki cahaya redup. Platform ini dapat menggunakannya untuk, misalnya, mengaktifkan UI yang sesuai untuk tampilan yang lebih baik di lingkungan gelap atau minim cahaya.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
OBD2_FREEZE_FRAME
Melaporkan snapshot nilai sensor OBD2 yang tersedia pada saat terjadi kerusakan
dan terdeteksi. configArray harus diberikan dengan arti yang sama seperti yang ditentukan untuk
OBD2_LIVE_FRAME
Nilai properti ini harus ditafsirkan dengan cara yang serupa dengan yang digunakan untuk
OBD2_LIVE_FRAME
, dengan pengecualian bahwa kolom stringValue dapat berisi
kode pemecahan masalah diagnostik (DTC) yang tidak kosong.
Permintaan IVehicle#get dari properti ini harus memberikan nilai untuk int64Values[0]. Ini ditafsirkan
sebagai stempel waktu frame beku yang akan diambil. Daftar stempel waktu dapat diperoleh dengan
IVehicle#get dari OBD2_FREEZE_FRAME_INFO
Jika tidak ada frame beku yang tersedia pada stempel waktu yang diberikan, respons
NOT_AVAILABLE
harus ditampilkan oleh implementasi. Karena kendaraan mungkin memiliki
penyimpanan terbatas untuk frame beku, permintaan frame dapat merespons dengan
NOT_AVAILABLE
meskipun stempel waktu terkait baru saja diperoleh melalui
OBD2_FREEZE_FRAME_INFO
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
OBD2_FREEZE_FRAME_CLEAR
Freeze frame dihapus. Melaporkan snapshot nilai sensor OBD2 yang tersedia pada saat
terjadi dan terdeteksi kerusakan. configArray harus diberikan dengan arti yang sama seperti yang ditentukan untuk OBD2_LIVE_FRAME
Nilai properti ini harus ditafsirkan dengan cara yang serupa dengan yang digunakan untuk
OBD2_LIVE_FRAME
, dengan pengecualian bahwa kolom stringValue dapat berisi kode pemecahan masalah
diagnostik (DTC) yang tidak kosong.
Permintaan IVehicle#get dari properti ini harus memberikan nilai untuk int64Values[0]. Ini akan
ditafsirkan sebagai stempel waktu frame beku yang akan diambil. Daftar stempel waktu dapat diperoleh oleh IVehicle#get dari OBD2_FREEZE_FRAME_INFO
Jika tidak ada frame beku yang tersedia pada stempel waktu yang diberikan, respons NOT_AVAILABLE
harus
ditampilkan oleh implementasi. Karena kendaraan mungkin memiliki penyimpanan terbatas untuk frame beku,
permintaan frame dapat merespons dengan NOT_AVAILABLE
meskipun stempel waktu
terkait baru-baru ini diperoleh melalui OBD2_FREEZE_FRAME_INFO
Mode perubahan: ON_CHANGE
Mode akses: WRITE
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
OBD2_FREEZE_FRAME_INFO
Properti ini menjelaskan frame beku saat ini yang disimpan dalam memori kendaraan dan tersedia untuk
pengambilan melalui OBD2_FREEZE_FRAME
Nilainya harus ditafsirkan sebagai berikut. Setiap elemen
int64Values harus berupa stempel waktu saat kode error telah terdeteksi dan frame beku
yang sesuai disimpan, dan setiap elemen tersebut dapat digunakan sebagai kunci ke OBD2_FREEZE_FRAME
untuk
mengambil frame beku yang sesuai.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
OBD2_LIVE_FRAME
Melaporkan ringkasan nilai sensor OBD2 saat ini (live) yang tersedia. configArray ditetapkan sebagai berikut:
configArray[0]
Jumlah sensor bernilai bilangan bulat khusus vendorconfigArray[1]
Jumlah sensor bernilai float khusus vendor
Nilai properti ini harus ditafsirkan seperti dalam contoh berikut. Mengingat
configArray = {2,3} int32Values
harus berupa vektor yang berisi
Obd2IntegerSensorIndex.LAST_SYSTEM_INDEX
ditambah dua elemen (atau, 33 elemen).
floatValues
harus berupa vektor yang berisi
Obd2FloatSensorIndex.LAST_SYSTEM_INDEX
ditambah tiga elemen (atau, 73 elemen).
Setiap frame dapat berisi subset nilai sensor yang berbeda, baik sensor
yang disediakan sistem, maupun sensor khusus vendor. Untuk mendukung hal ini, elemen byte dari
nilai properti digunakan sebagai bitmask. Byte harus memiliki jumlah byte yang memadai untuk mewakili
jumlah total kemungkinan sensor (dalam hal ini, 14 byte untuk mewakili 106 kemungkinan nilai).
Nilai ini harus dibaca sebagai bitmask yang berurutan sehingga setiap bit menunjukkan keberadaan atau tidak adanya
sensor dari frame, dimulai dengan jumlah bit sebanyak ukuran int32Values
,
yang segera diikuti dengan jumlah bit sebanyak ukuran floatValues.
Misalnya, jika bytes[0] = 0x4C (0b01001100)
, artinya:
int32Values[0 and 1]
bukan nilai sensor yang validint32Values[2 and 3]
adalah nilai sensor yang validint32Values[4 and 5]
bukan nilai sensor yang validint32Values[6]
adalah nilai sensor yang validint32Values[7]
bukan nilai sensor yang validint32Values[0 and 1]
bukan nilai sensor yang validint32Values[2 and 3]
adalah nilai sensor yang validint32Values[4 and 5]
bukan nilai sensor yang validint32Values[6]
adalah nilai sensor yang validint32Values[7]
bukan nilai sensor yang valid
Jika bytes[5] = 0x61 (0b01100001)
, maka:
int32Values[32]
adalah nilai sensor yang validfloatValues[0 thru 3]
adalah nilai sensor yang tidak validfloatValues[4 and 5]
adalah nilai sensor yang validfloatValues[6]
bukan nilai sensor yang valid.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
ON_CHANGE
Mode perubahan:
Mode akses: READ_WRITE/READ
Jenis enum:
VehicleLightSwitch
Jenis unit:T/A
Rilis: Android 13
PARKING_BRAKE_AUTO_APPLY
Menerapkan rem parkir secara otomatis. Jika benar, properti ini menunjukkan bahwa rem parkir otomatis
mobil diaktifkan. Salah menunjukkan bahwa fitur rem parkir otomatis
mobil dinonaktifkan. Properti ini sering kali dikacaukan dengan PARKING_BRAKE_ON
. Perbedaannya adalah PARKING_BRAKE_ON
menunjukkan apakah rem parkir sebenarnya
aktif atau nonaktif, sedangkan PARKING_BRAKE_AUTO_APPLY
menunjukkan apakah fitur rem parkir otomatis
diaktifkan atau dinonaktifkan dan tidak menjelaskan status rem parkir
sebenarnya saat ini.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
PARKING_BRAKE_ON
Status rem parkir. Jika benar, properti ini menunjukkan bahwa rem parkir mobil aktif. Salah menunjukkan bahwa rem parkir mobil dilepas.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
PER_DISPLAY_BRIGHTNESS
Properti untuk merepresentasikan kecerahan layar yang dikontrol secara terpisah.
Beberapa mobil memiliki satu atau beberapa layar yang kecerahannya dikontrol secara terpisah dan properti ini
untuk menginformasikan kecerahan setiap layar penumpang. Di mobil yang kecerahan semua layarnya
dikontrol secara bersamaan, mobil tersebut harus menggunakan DISPLAY_BRIGHTNESS
Hanya salah satu dari PER_DISPLAY_BRIGHTNESS
danPER_DISPLAY_BRIGHTNESS
yang harus diterapkan. Jika keduanya
tersedia, PER_DISPLAY_BRIGHTNESS
akan digunakan oleh AAOS.
Port tampilan secara unik mengidentifikasi konektor fisik di perangkat untuk output tampilan, yang berkisar dari 0 hingga 255.
int32Values[0]
Port tampilanint32Values[1]
Kecerahan
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 14
PERF_ODOMETER
Nilai odometer kendaraan saat ini.
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:KILOMETER
Rilis: Android 13
PERF_REAR_STEERING_ANGLE
Sudut kemudi model sepeda belakang untuk kendaraan. Sudut diukur dalam derajat. Kiri adalah negatif. Properti ini tidak bergantung pada sudut kemudi. Properti ini harus menyampaikan sudut roda belakang sehubungan dengan kendaraan, bukan sudut kemudi.
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:DEGREES
Rilis: Android 13
PERF_STEERING_ANGLE
Sudut kemudi model sepeda depan untuk kendaraan. Sudut diukur dalam derajat. Kiri adalah negatif. Properti ini tidak bergantung pada sudut kemudi. Properti ini harus menyampaikan sudut roda depan sehubungan dengan kendaraan, bukan sudut kemudi.
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:DEGREES
Rilis: Android 13
PERF_VEHICLE_SPEED
Kecepatan kendaraan, Nilai harus positif saat kendaraan bergerak maju dan
negatif saat kendaraan mundur. Nilai ini tidak bergantung pada nilai roda gigi
(CURRENT_GEAR
atau GEAR_SELECTION
). Misalnya, jika
GEAR_SELECTION
adalah GEAR_NEUTRAL
, PERF_VEHICLE_SPEED
positif saat kendaraan bergerak maju, negatif saat mundur, dan nol saat tidak bergerak.
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis unit: T/A
Jenis unit: VehicleUnit:METER_PER_SEC
Rilis: Android 13
PERF_VEHICLE_SPEED_DISPLAY
Kecepatan kendaraan untuk layar, Beberapa mobil menampilkan kecepatan yang sedikit lebih lambat di speedometer daripada kecepatan sebenarnya.
Mode perubahan: CONTINUOUS
Mode akses: READ
Jenis enum: T/A
Jenis unit: VehicleUnit:METER_PER_SEC
Rilis: Android 13
POWER_POLICY_GROUP_REQ
Menentukan permintaan untuk menetapkan grup kebijakan daya yang digunakan untuk menentukan kebijakan daya default per transisi status daya.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
POWER_POLICY_REQ
Menentukan permintaan untuk menerapkan kebijakan daya. VHAL menetapkan properti ini untuk mengubah kebijakan daya mobil.
Layanan kebijakan daya mobil berlangganan properti ini dan benar-benar mengubah kebijakan daya. Permintaan
dibuat dengan menetapkan VehiclePropValue dengan ID kebijakan daya yang ditentukan di
/vendor/etc/automotive/power_policy.xml
Jika ID yang diberikan tidak ditentukan, layanan kebijakan daya mobil
akan mengabaikan permintaan dan kebijakan daya saat ini akan dipertahankan.
string: "sample_policy_id" // power policy ID
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
POWER_POLICY_GROUP_REQ
Menentukan permintaan untuk menetapkan grup kebijakan daya yang digunakan untuk menentukan kebijakan daya default per transisi status daya. VHAL menetapkan properti ini dengan ID grup kebijakan daya untuk menetapkan kebijakan daya default yang diterapkan pada transisi status daya. Grup kebijakan daya ditentukan di /vendor/etc/power_policy.xml. Jika ID yang diberikan tidak ditentukan, layanan kebijakan daya mobil akan mengabaikan permintaan. Layanan kebijakan daya mobil berlangganan properti ini dan menetapkan grup kebijakan daya. Penerapan kebijakan daya yang sebenarnya terjadi saat status daya sistem berubah dan ada kebijakan daya yang dipetakan dan valid untuk status daya baru.
string: "sample_policy_group_id" // power policy group ID
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
RANGE_REMAINING
Jarak yang tersisa. Meter yang tersisa dari bahan bakar dan daya. Rentang yang tersisa harus memperhitungkan semua
sumber energi dalam kendaraan. Misalnya, jangkauan mobil hibrida adalah jumlah jangkauan berdasarkan
bahan bakar dan baterai. Properti ini ditentukan sebagai VehiclePropertyAccess.READ_WRITE
karena aplikasi navigasi dapat memperbarui rentang jika memiliki estimasi yang lebih akurat berdasarkan
rute mendatang. Properti ini hanya dapat diimplementasikan sebagai VehiclePropertyAccess.READ
atas pertimbangan OEM.
Mode perubahan: CONTINUOUS
Mode akses: READ_WRITE
Jenis enum: T/A
Jenis unit: VehicleUnit:METER
Rilis: Android 13
READING_LIGHTS_STATE
Menampilkan status lampu baca saat ini.
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: VehicleLightState
Jenis unit: T/A
Rilis: Android 13
READING_LIGHTS_SWITCH
Tombol untuk mengontrol lampu baca. Hal ini mungkin berbeda dengan READING_LIGHTS_STATE
jika lampu menyala karena pintu terbuka atau karena perintah suara. Misalnya, saat tombol
berada dalam posisi nonaktif atau otomatis. Properti ini ditentukan sebagai
VehiclePropertyAccess.READ_WRITE
, tetapi OEM dapat menerapkannya sebagai
VehiclePropertyAccess.READ
saja.
REAR_FOG_LIGHTS_STATE
Menampilkan status lampu kabut belakang saat ini. Hanya salah satu dari FOG_LIGHTS_STATE
atau
REAR_FOG_LIGHTS_STATE
yang dapat diterapkan. Lihat FOG_LIGHTS_STATE
Mode perubahan: ON_CHANGE
Mode akses: READ
Jenis enum: VehicleLightState
Jenis unit: T/A
Rilis: Android 13
REAR_FOG_LIGHTS_SWITCH
Setelan yang diinginkan pengguna. Hanya salah satu dari FOG_LIGHTS_SWITCH
atau
REAR_FOG_LIGHTS_SWITCH
yang harus
diterapkan. Lihat FOG_LIGHTS_SWITCH
untuk mempelajari lebih lanjut. Properti ini ditentukan sebagai
VehiclePropertyAccess.READ_WRITE
, tetapi OEM dapat menerapkannya sebagai
VehiclePropertyAccess.READ
saja.
Mode perubahan: ON_CHANGE
Mode akses: READ_WRITE/READ
Jenis enum: VehicleLightSwitch
Jenis unit: T/A
Rilis: Android 13
REMOVE_USER
Dipanggil oleh Sistem Android setelah pengguna Android dihapus. HAL dapat menggunakan properti ini untuk menghapus pengguna yang setara. Ini adalah panggilan hanya tulis. Sistem Android tidak mengharapkan balasan dari HAL. Oleh karena itu, permintaan ini tidak akan gagal. Jika pengguna HAL yang setara tidak dapat dihapus, HAL harus menandainya sebagai tidak aktif atau memulihkan dengan cara lain.
Permintaan dibuat dengan menetapkan VehiclePropValue dengan konten yang ditentukan oleh
RemoveUserRequest
Misalnya, jika sistem memiliki 3 pengguna (0, 10, dan 11) dan pengguna 11
dihapus, permintaannya adalah:
int32[0]
42 // request idint32[1]
11 // (ID pengguna Android dari pengguna yang dihapus)int32[2]
0 // (Flag pengguna Android dari pengguna yang dihapus)int32[3]
10 // pengguna saat iniint32[4]
0 // flag pengguna saat ini (tidak ada)int32[5]
2 // jumlah penggunaint32[6]
0 // pengguna pertama (pengguna 0)int32[7]
0 // flag pengguna pertama (tidak ada)int32[8]
10 // pengguna kedua (pengguna 10)int32[9
] 0 // flag pengguna kedua (tidak ada)
Mode perubahan: STATIC
Mode akses: WRITE
Jenis enum: T/A
Jenis unit: T/A
Rilis: Android 13
S ke Z
SEAT_AIRBAG_ENABLED
Represents feature to enable and disable a seat's ability to deploy airbag(s) when triggered
(for example, in a collision). If true
, it means the seat's airbags are enabled and,
if triggered, they deploy. If true
, the seat's airbags are disabled, and they do
not deploy in any circumstances. This property does not indicate if the airbags are deployed.
This property can be set to VehiclePropertyAccess.READ
read only for the purpose of
regulation or safety concerns.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
SEAT_BACKREST_ANGLE_1_MOVE
Seat backrest angle 1 move. The maxInt32Value
and minInt32Value
in
each VehicleAreaConfig
must be defined. All integers between
minInt32Value
and maxInt32Value
must be supported.
The maxInt32Value
represents the maximum movement speed of the seat backrest while
angling forward. The minInt32Value
represents the maximum movement speed of the seat
backrest when reclining.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once the
seat backrest reaches the positional limit, the value must reset to 0. If the value for
SEAT_BACKREST_ANGLE_1_MOVE
is 0, no movement is occurring.
This property is represented in a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_BACKREST_ANGLE_1_POS
Seat backrest angle 1 position. Backrest angle 1 is the actuator closest to the bottom of the
seat. The maxInt32Value
and minInt32Value
in
VehicleAreaConfig
must be defined. All integers between minInt32Value
and maxInt32Value
must be supported. The minInt32Value
indicates the
seat backrest's full recline position with regard to the actuator at the bottom of the seat. The
maxInt32Value
indicates the seat backrest's most upright or forward position with
regard to the actuator at the bottom of the seat.
Values between minInt32Value
and maxInt32Value
indicate a transition
state between the full recline and the upright and forward positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_BACKREST_ANGLE_2_MOVE
Seat backrest angle 2 move. The maxInt32Value
and minInt32Value
in each
VehicleAreaConfig
must be defined. All integers between minInt32Value
and maxInt32Value
must be supported.
The maxInt32Value
represents the maximum movement speed of the seat backrest while
angling forward. The minInt32Value
represents the maximum movement speed of the seat
backrest while reclining.
Larger absolute values, positive or negative, indicate a faster movement speed. Once the
seat backrest reaches the positional limit, the value must reset to 0. If the value for
SEAT_BACKREST_ANGLE_2_MOVE
is currently 0, no movement is underway.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_BACKREST_ANGLE_2_POS
Seat backrest angle 2 position. Backrest angle 2 is the next actuator up from the bottom of the seat.
The maxInt32Value
and minInt32Value
in VehicleAreaConfig
must be defined. All integers between minInt32Value
and maxInt32Value
must be #0supported.
The minInt32Value
indicates the seat backrest's full recline position with regard
to the next actuator in the backrest from the one at the bottom of the seat (see
SEAT_BACKREST_ANGLE_1_POS
for details). maxInt32Value
indicates the
seat backrest's most upright and forward position with regard to the next actuator in the backrest
from the one at the bottom of the seat (see SEAT_BACKREST_ANGLE_1_POS
for details).
Values between minInt32Value
and maxInt32Value
indicate a transition
state between the full recline and upright and forward positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_BELT_BUCKLED
Seatbelt buckled. True indicates belt is buckled. Write access indicates automatic seat buckling
capabilities. This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs
can implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_BELT_HEIGHT_MOVE
Seatbelt height move. The maxInt32Value
and minInt32Value
in each
VehicleAreaConfig
must be defined. All integers between minInt32Value
and maxInt32Value
must be supported.
The maxInt32Value
represents the maximum movement speed of the seat belt's shoulder
anchor while moving up. The minInt32Value
represents the maximum movement speed of
the seat belt's shoulder anchor while moving down.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once the
seat belt reaches the positional limit, the value must reset to 0. If the value of
SEAT_BELT_HEIGHT_MOVE
is 0, no movement is underway.
This property is represented as a a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_BELT_HEIGHT_POS
Seatbelt height position. Adjusts the shoulder belt anchor point.
The maxInt32Value
and minInt32Value
in VehicleAreaConfig must be
defined. All integers between minInt32Value
and maxInt32Value
must be
supported.
The minInt32Value
indicates the seat belt's shoulder anchor is at its lowest
position. The maxInt32Value
indicates the seat belt's shoulder anchor is at its
highest position.
Values between minInt32Value
and maxInt32Value
indicate a transition
state between the lowest and highest positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_CUSHION_SIDE_SUPPORT_MOVE
Represents property for movement direction and speed of seat cushion side support.
The maxInt32Value
and minInt32Value
in each VehicleAreaConfig must be
defined. All integers between minInt32Value
and maxInt32Value
must be
supported.
The maxInt32Value
represents the maximum movement speed of the seat cushion side
support when growing wider (for example, support is decreasing). The minInt32Value
represents the maximum movement speed of the seat cushion side support when growing narrower
(for example, support is increasing).
Larger absolute values, either positive or negative, indicate a faster movement speed. Once the
seat cushion side support reaches the positional limit, the value must reset to 0. If the value of
SEAT_CUSHION_SIDE_SUPPORT_MOVE
is 0, then no movement is occurring.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
SEAT_CUSHION_SIDE_SUPPORT_POS
Represents property for seat's hipside (bottom cushion's side) support position.
The maxInt32Value
and minInt32Value
in each VehicleAreaConfig must be defined. All integers
between minInt32Value
and maxInt32Value
must be supported.
The maxInt32Value
indicates the seat cushion side support is in its widest position (for example,
least support). The minInt32Value
indicates the seat cushion side support is in its thinnest
position (for example, most support).
Values in between minInt32Value
and maxInt32Value
indicate a transition state between the
thinnest and widest positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
SEAT_DEPTH_MOVE
Seat depth move.
The maxInt32Value
and minInt32Value
in each VehicleAreaConfig must be
defined. All integers between minInt32Value
and maxInt32Value
must be
supported.
The maxInt32Value
represents the maximum movement speed of the seat while getting
deeper The minInt32Value
represents the maximum movement speed of the seat while
getting shallower.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once the
seat backrest reaches the positional limit, the value must reset to 0. If the value for
SEAT_DEPTH_MOVE
is currently 0, no movement is underway.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_DEPTH_POS
Seat depth position. Sets the seat depth, distance from back rest to front edge of seat.
The maxInt32Value
and minInt32Value
in VehicleAreaConfig must be defined. All integers
between minInt32Value
and maxInt32Value
must be supported.
The minInt32Value
indicates the seat is in its shallowest position (for example, the position with
the smallest distance between the front edge of the seat cushion and the rear end of the seat).
The maxInt32Value
indicates the seat is in its deepest position (for example, the position with the
largest distance between the front edge of the seat cushion and the rear end of the seat).
Values in between minInt32Value
and maxInt32Value
indicate a transition state between the
shallowest and deepest positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_EASY_ACCESS_ENABLED
Represents property for Seat easy access feature. If true, the seat is automatically adjusted
to make it easier for the occupant to enter and exit the vehicle. Each area ID must map to the
seat that the user is trying to enter/exit with the help of the easy access feature.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
SEAT_FOOTWELL_LIGHTS_STATE
Represents property for the seat footwell lights state. SEAT_FOOTWELL_LIGHTS_STATE
reflects the
current state of the lights at any point in time. This is different from the function of
SEAT_FOOTWELL_LIGHTS_SWITCH
which represents the position of the switch controlling the lights.
Therefore, SEAT_FOOTWELL_LIGHTS_STATE
may not match the value of SEAT_FOOTWELL_LIGHTS_SWITCH
(for example, SEAT_FOOTWELL_LIGHTS_SWITCH=AUTOMATIC
and SEAT_FOOTWELL_LIGHTS_SWITCH=ON
).
This property should only be implemented if SEAT_FOOTWELL_LIGHTS_STATE
's value may be different
from that of CABIN_LIGHTS_STATE.
For each supported area ID, the VehicleAreaConfig#supportedEnumValues must be defined unless all enum values of VehicleLightState are supported.
Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleLightState
Unit type: N/A
Release: Android 14
SEAT_FOOTWELL_LIGHTS_SWITCH
Represents property for the seat footwell lights switch. SEAT_FOOTWELL_LIGHTS_SWITCH
represents
the position of the switch controlling the lights. This is different from the function of
SEAT_FOOTWELL_LIGHTS_STATE which reflects the current state of the lights at any point in time.
Therefore, SEAT_FOOTWELL_LIGHTS_SWITCH
may not match the value of SEAT_FOOTWELL_LIGHTS_STATE
(for example, SEAT_FOOTWELL_LIGHTS_SWITCH=AUTOMATIC
and SEAT_FOOTWELL_LIGHTS_SWITCH=ON
).
This property should only be implemented if SEAT_FOOTWELL_LIGHTS_SWITCH's value may be different from that of CABIN_LIGHTS_SWITCH.
For each supported area ID, the VehicleAreaConfig#supportedEnumValues must be defined unless all enum values of VehicleLightSwitch are supported.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: VehicleLightSwitch
Unit type: N/A
Release: Android 13
SEAT_FORE_AFT_MOVE
Seat fore and aft move. This property moves the entire seat forward/backward in the direction that it is facing.
The maxInt32Value
and minInt32Value
in each VehicleAreaConfig must be
defined. All integers between minInt32Value
and maxInt32Value
must be
supported.
The maxInt32Value
represents the maximum movement speed of the seat while moving
forward. The minInt32Value
represents the maximum movement speed of the seat while
moving backward.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once the
seat reaches the positional limit, the value must reset to 0. If the value of
SEAT_FORE_AFT_MOVE
is 0, no movement is occurring.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_FORE_AFT_POS
Seat fore and aft position. Sets the seat position forward and backward.
The maxInt32Value
and minInt32Value
in VehicleAreaConfig must be defined.
All integers between minInt32Value
and maxInt32Value
must be supported.
The minInt32Value
indicates the seat is at its rearward-most linear position.
The maxInt32Value
indicates the seat is at its forward-most linear position. Values
between minInt32Value
and maxInt32Value
indicate a transition state
between the closest and farthest positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_HEADREST_ANGLE_MOVE
Headrest angle move. The maxInt32Value
and minInt32Value
in each
VehicleAreaConfig
must be defined. All integers between minInt32Value
and maxInt32Value
must be supported.
The maxInt32Value
represents the maximum movement speed of the seat's headrest while
moving into an upright or forward position. The minInt32Value
represents the maximum
movement speed of the seat's headrest while moving into a shallow position.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once
the seat's headrest reaches the positional limit, the value must reset to 0. If the value of
SEAT_HEADREST_ANGLE_MOVE
is 0, thenno movement is occurring.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_HEADREST_ANGLE_POS
Headrest angle position. The maxInt32Value
and minInt32Value
in
VehicleAreaConfig
must be defined. All integers between minInt32Value
and maxInt32Value
must be supported.
The minInt32Value
indicates the headrest is in its full recline position. The
maxInt32Value
indicates the headrest is in its most upright and forward position.
Values in between minInt32Value
and maxInt32Value
indicate a
transition state between the full recline and most upright and forward positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_HEADREST_FORE_AFT_MOVE
Headrest fore and aft move. The maxInt32Value
and minInt32Value
in
each VehicleAreaConfig
must be defined. All integers between
minInt32Value
and maxInt32Value
must be supported.
The maxInt32Value
represents the maximum movement speed of the seat's headrest
while moving forward. The minInt32Value
represents the maximum movement speed of
the seat's headrest while moving backward.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once
the seat's headrest reaches the positional limit, the value must reset to 0. If the value of
SEAT_HEADREST_FORE_AFT_MOVE
is 0, then no movement is occurring.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_HEADREST_FORE_AFT_POS
Headrest fore and aft position. The maxInt32Value
and minInt32Value
in VehicleAreaConfig
must be defined. All integers between minInt32Value
and maxInt32Value
must be supported.
The minInt32Value
indicates the headrest is in its rearward-most linear position.
The maxInt32Value
indicates the headrest is in its forward-most linear position.
Values between minInt32Value
and maxInt32Value
indicate a transition
state between the forward and backward positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_HEADREST_HEIGHT_MOVE
Headrest height move. The maxInt32Value
and minInt32Value
in each
VehicleAreaConfig
must be defined. All integers between minInt32Value
and maxInt32Value
must be supported.
The maxInt32Value
represents the maximum movement speed of the seat's headrest while
moving up. The minInt32Value
represents the maximum movement speed of the seat's
headrest while moving down.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once
the seat's headrest reaches the positional limit, the value must reset to 0. If the value for
SEAT_HEADREST_HEIGHT_MOVE
is 0, then no movement is occurring.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_HEADREST_HEIGHT_POS
(Deprecated) Headrest height position.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_HEADREST_HEIGHT_POS_V2
Headrest height position. Sets the headrest height for supported seats. VehiclePropConfig.areaConfigs specifies which seats are supported.
The maxInt32Value
and minInt32Value
in VehicleAreaConfig must be
defined. All integers between minInt32Value
and maxInt32Value
must be
supported.
The minInt32Value
indicates the headrest is in its lowest position. The
maxInt32Value
indicates the headrest is in its highest position.
Values in between minInt32Value
and maxInt32Value
indicate a transition
state between the lowest and highest positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
SEAT_HEIGHT_MOVE
Seat height move. The maxInt32Value
and minInt32Value
in each
VehicleAreaConfig must be defined. All integers between minInt32Value
and
maxInt32Value
must be supported.
maxInt32Value
represents the maximum movement speed of the seat when moving up.
minInt32Value
represents the maximum movement speed of the seat when moving down.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once the
seat reaches the positional limit, the value must reset to 0. If the value of
SEAT_HEIGHT_MOVE
value is 0, no movement is occurring.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_HEIGHT_POS
Seat height position. The maxInt32Value
and minInt32Value
in
VehicleAreaConfig must be defined. All integers between minInt32Value
and
maxInt32Value
must be supported.
The minInt32Value
indicates the seat is in its lowest position. The
maxInt32Value
indicates the seat is in its highest position.
Values in between minInt32Value
and maxInt32Value
indicate a transition
state between the lowest and highest positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_LUMBAR_FORE_AFT_MOVE
Lumbar fore and aft move. The maxInt32Value
and minInt32Value
in each
VehicleAreaConfig must be defined. All integers between minInt32Value
and
maxInt32Value
must be supported.
The maxInt32Value
represents the maximum movement speed of the seat's lumbar support
while moving forward. The minInt32Value
represents the maximum movement speed of
the seat's lumbar support while moving backward.
Larger absolute values, either positive or negative, indicate a faster movement speed.
Once the seat's lumbar support reaches the positional limit, the value must reset to 0.
If the value of SEAT_LUMBAR_FORE_AFT_MOVE
is 0, then no movement is occurring.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_LUMBAR_FORE_AFT_POS
Lumber fore and aft position. The maxInt32Value
and minInt32Value
in
VehicleAreaConfig must be defined. All integers between minInt32Value
and
maxInt32Value
must be supported.
The minInt32Value
indicates the lumbar support is in its rearward most position
(for example, least supportive position). The maxInt32Value
indicates the lumbar
support is in its forward most position (for example, most supportive position).
Values in between minInt32Value
and maxInt32Value
indicate a transition
state between the forward and rearward positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access type: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_LUMBAR_SIDE_SUPPORT_MOVE
Lumbar side support move. The maxInt32Value
and minInt32Value
in each
VehicleAreaConfig
must be defined. All integers between minInt32Value
and maxInt32Value
must be supported.
The maxInt32Value
represents the maximum movement speed of the seat's lumbar side
support while getting wider. The minInt32Value
represents the maximum movement
speed of the seat's lumbar side support while getting thinner.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once
the seat's lumbar side support reaches the positional limit, the value must reset to 0. If the
value of SEAT_LUMBAR_SIDE_SUPPORT_MOVE
0, then no movement is occurring.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access type: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_LUMBAR_SIDE_SUPPORT_POS
Lumbar side support position. The maxInt32Value
and minInt32Value
in
VehicleAreaConfig must be defined. All integers between minInt32Value
and
maxInt32Value
must be supported. The minInt32Value
indicates the lumbar side support is in its thinnest position (for example, most support). The
maxInt32Value
indicates the lumbar side support is in its widest position (for
example, least support).
Values in between minInt32Value
and maxInt32Value
indicate a transition
state between the thinnest and widest positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access type: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
SEAT_LUMBAR_VERTICAL_MOVE
Represents property for vertical movement direction and speed of seat lumbar support.
The maxInt32Value
and minInt32Value
in each VehicleAreaConfig must be
defined. All integers between minInt32Value
and maxInt32Value
must be
supported. The maxInt32Value
indicates the lumbar support is moving at the fastest
upward speed. The minInt32Value
indicates the lumbar support is moving at the fastest
down speed.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once the seat cushion side support reaches the positional limit, the value must reset to 0. If the value of SEAT_LUMBAR_VERTICAL_MOVE's is 0, then no movement is occurring.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
SEAT_LUMBAR_VERTICAL_POS
Represents property for seat's lumbar support vertical position. The maxInt32Value
and minInt32Value
in each VehicleAreaConfig must be defined. All integers between
minInt32Value
and maxInt32Value
must be supported.
maxInt32Value
indicates the lumbar support's highest position.
minInt32Value
indicates the lumbar support's lowest position.
Values in between minInt32Value
and maxInt32Value
indicate a transition
state between the lowest and highest positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_MEMORY_SELECT
This parameter selects the memory preset to use to select the seat position. The
maxInt32Value
and minInt32Value
in VehicleAreaConfig must be defined.
All integers between minInt32Value
and maxInt32Value
must be supported.
The minInt32Value
is always 0, and the maxInt32Value
determines
the number of seat preset memory slots available (for example, numSeatPresets - 1). For instance,
if the driver's seat has three memory presets, the maxInt32Value
is two. When the
user selects a preset, the desired preset number (0, 1, or 2) is set.
Change mode: ON_CHANGE
Access mode: WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_MEMORY_SET
This setting allows the user to save the current seat position settings into the selected preset
slot. The maxInt32Value
and minInt32Value
in
VehicleAreaConfig
must be defined. The minInt32Value
must be 0, and the
maxInt32Value
for each seat position must match the maxInt32Value
for
SEAT_MEMORY_SELECT
Change mode: ON_CHANGE
Access mode: WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_OCCUPANCY
Indicates if a specific seat is occupied, to the best of the car's ability to determine. Valid
values are from the VehicleSeatOccupancyState
enum.
Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleSeatOccupancyState
Unit type: N/A
Release: Android 13
SEAT_TILT_MOVE
Seat tilt move. The maxInt32Value
and minInt32Value
in each
VehicleAreaConfig must be defined. All integers between minInt32Value
and
maxInt32Value
must be supported. The maxInt32Value
represents the maximum movement speed of the front edge of the seat while moving up. The
minInt32Value
represents the maximum movement speed of the front edge of the seat
while moving down.
Larger absolute values, either positive or negative, indicate a faster movement speed. Once the seat bottom reaches the positional limit, the value must reset to 0. If SEAT_TILT_MOVE's value is currently 0, no movement is underway.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SEAT_TILT_POS
Seat tilt position. The maxInt32Value
and minInt32Value
in
VehicleAreaConfig must be defined. All integers between minInt32Value
and
maxInt32Value
must be supported. The minInt32Value
indicates the seat bottom is angled at its lowest angular position. This corresponds to the seat's
front edge at its lowest possible position relative to the rear end of the seat.
The maxInt32Value
indicates the seat bottom is angled at its highest angular position.
This corresponds to the seat's front edge at its highest possible position relative to the rear
end of the seat.
Values in between minInt32Value
and maxInt32Value
indicate a transition
state between the lowest and highest positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
SEAT_WALK_IN_POS
Represents property that indicates the current walk-in position of the seat. The
minInt32Value
indicates the normal seat position. The minInt32Value
must be 0. The maxInt32Value
indicates the seat is in the full walk-in position.
Values in between minInt32Value
and maxInt32Value
indicate a transition
state between the normal and walk-in positions.
This property is represented as a specified range of relative positions.
The area ID must match the seat that actually moves when the walk-in feature activates, not the intended seat the passengers will sit in.
This property is defined as VehiclePropertyAccess.READ_WRITE, but OEMs can
implement it as VehiclePropertyAccess.READ only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SHUTDOWN_REQUEST
Request the head unit to be shu down.
This is required for executing a task when the head unit is powered off (remote task feature). After the head unit is powered-on to execute the task, the head unit should be shut down. The head unit sends this message once the task is finished.
This property doesn't apply when a user wants to shut down the head unit.
This usually involves telling a separate system outside the head unit (for instance a power controller) to prepare to shut down the head unit.
The external system must validate that this request is valid by checking if the vehicle is in use. If a user enters the vehicle after a SHUTDOWN_REQUEST is sent, then the system must ignore this request. It is recommended to store a VehicleInUse property in the power controller and exposes it through VEHICLE_IN_USE property. A shutdown request must be ignored if VehicleInUse is true.
If allowed, the external system sends a shutdown signal to the head unit, which causes VHAL to send SHUTDOWN_PREPARE message to Android. Android will then start the shut down process by handling the message.
This property is only for issuing a request and only supports writing. Every time this property value is set, the request to shutdown is issued no matter what the current property value is. The current property value is meaningless.
Since this property is write-only, subscribing is not allowed and no property change event is generated.
The value to set indicates the shutdown option, it must be one of
{@code VehicleApPowerStateShutdownParam}
For example,
VehicleApPowerStateShutdownParam.SLEEP_IMMEDIATELY
. This shutdown option might not be
honored if the system doesn't support such option. In such a case, an error is not returned.
For configuration information, VehiclePropConfig.configArray
must have bit flag
combining values in {@code VehicleApPowerStateConfigFlag}
to indicate which shutdown
options are supported.
Returns error if failed to send the shutdown request to the other system.
Change mode: ON_CHANGE
Access mode: WRITE
Enum type: VehicleApPowerStateShutdownParam
>
Unit type: N/A
Release: Android 14
STEERING_WHEEL_DEPTH_MOVE
Steering wheel depth movement. The maxInt32Value
and minInt32Value
in VehicleAreaConfig must be defined. All values between minInt32Value
and
maxInt32Value
must be supported.
The maxInt32Value
indicates the steering wheel moving away from the driver. The
minInt32Value
indicates the steering wheel moving towards the driver.
Larger integers, either positive or negative, indicate a faster movement speed. Once the
steering wheel reaches the positional limit, the value must reset to 0. If the value of
STEERING_WHEEL_DEPTH_MOVE
is currently 0, no movement is underway.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
STEERING_WHEEL_DEPTH_POS
Steering wheel depth position. All steering wheel properties' unique ids start from 0x0BE0.
The maxInt32Value
and minInt32Value
in VehicleAreaConfig must be
defined. All values between minInt32Value
and maxInt32Value
must be
supported. The maxInt32Value
indicates the steering wheel position furthest from
the driver. The minInt32Value
indicates the steering wheel position closest to the
driver.
Values in between minInt32Value
and maxInt32Value
indicate a
transition state between the
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
STEERING_WHEEL_EASY_ACCESS_ENABLED
Steering wheel easy access feature enabled. If true, the driver's steering wheel is automatically adjusted to make it easier for the driver to enter and exit the vehicle.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
STEERING_WHEEL_HEIGHT_MOVE
Steering wheel height movement. The maxInt32Value
and minInt32Value
in VehicleAreaConfig must be defined. All values between minInt32Value
and
maxInt32Value
must be supported.
The maxInt32Value
indicates the steering wheel moving up. The
minInt32Value
indicates the steering wheel moving down.
Larger integers, either positive or negative, indicate a faster movement speed. Once the
steering wheel reaches the positional limit, the value must reset to 0. If
STEERING_WHEEL_HEIGHT_MOVE
's value is currently 0, then that means there is no movement
currently occurring.
This property is represented as a specified range of relative movement speeds.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
STEERING_WHEEL_HEIGHT_POS
Steering wheel height position.
The maxInt32Value
and minInt32Value
in VehicleAreaConfig must be
defined. All values between minInt32Value
and maxInt32Value
must be
supported. The maxInt32Value
indicates the steering wheel being in the highest
position. The minInt32Value
indicates the steering wheel being in the lowest
position.
Values in between minInt32Value
and maxInt32Value
indicate a
transition state between the lowest and highest positions.
This property is represented as a specified range of relative positions.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
STEERING_WHEEL_LIGHTS_STATE
Steering wheel lights state. Represents the current state of the steering wheel lights. This is
different from STEERING_WHEEL_LIGHTS_SWITCH
which represents the position of the switch
controlling the lights. Therefore, STEERING_WHEEL_LIGHTS_STATE
may not match the value of
STEERING_WHEEL_LIGHTS_SWITCH
(for example,
and
STEERING_WHEEL_LIGHTS_SWITCH=AUTOMATIC
STEERING_WHEEL_LIGHTS_STATE=ON
).
This property should only be implemented if STEERING_WHEEL_LIGHTS_STATE
's value may be different
from that of CABIN_LIGHTS_STATE.
For the global area ID (0), the VehicleAreaConfig#supportedEnumValues must be defined unless all enum values of VehicleLightState are supported.
Change mode: ON_CHANGE
Access mode: READ
Enum type: VehicleLightState
Unit type: N/A
Release: Android 14
STEERING_WHEEL_LIGHTS_SWITCH
Steering wheel lights switch. Represents the position of the switch controlling the steering
wheel lights. This differs from , which represents the current state
of the steering wheel lights. Therefore, STEERING_WHEEL_LIGHTS_SWITCH
may not match
the value of STEERING_WHEEL_LIGHTS_STATE
. For example,
STEERING_WHEEL_LIGHTS_SWITCH=AUTOMATIC
and
STEERING_WHEEL_LIGHTS_STATE=ON
.
This property should only be implemented if the value for
STEERING_WHEEL_LIGHTS_SWITCH
can differ from that of
CABIN_LIGHTS_SWITCH
.
For the global area ID (0), the VehicleAreaConfig#supportedEnumValues
must be
defined unless all enum values of VehicleLightSwitch are supported.
This property is defined as VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.
Change mode: ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: VehicleLightSwitch
Unit type: N/A
Release: Android 14
STEERING_WHEEL_LOCKED
Steering wheel locked. If true, the steering wheel's position is locked and not changeable.
This property is defined as
Change mode: Steering wheel theft lock feature enabled. If true, the steering wheel locks automatically to
prevent theft in certain situations. This property is defined as VehiclePropertyAccess.READ_WRITE,
but OEMs can implement it as VehiclePropertyAccess.READ only.
Change mode: External encryption binding seed. This value is mixed with the local key storage encryption key.
This property holds 16 bytes, and is expected to be persisted on an ECU separate from the IVI.
The property is initially set by AAOS, who generates it using a CSRNG. AAOS then reads the
property on subsequent boots. The binding seed is expected to be reliably persisted. Any loss of
the seed results in a factory reset of the IVI.
Change mode: Support customize permissions for vendor properties. Implement this property if VHAL support customize vendor permissions feature.
VehiclePropConfig.configArray is used to indicate vendor properties and permissions which
selected for this vendor property. The permission must be one of enum in VehicleVendorPermission.
The configArray is set as follows, configArray[n+2] is an enum in VehicleVendorPermission and indicates the permission for writing
a value of the property. For example: If vendor properties are not in this array, they have the default vendor permission. If vendor
chose PERMISSION_NOT_ACCESSIBLE, Android does not have access to the property. In the example,
Android can not write a value for vendor_prop_2.
Change mode: (Deprecated) List of all supported property IDs.
Change mode: Defines a request to switch the foreground Android user. This property is used primarily by the Android system to inform the HAL that the current
foreground Android user is switching, but it could also be used by the HAL to request the
Android system to switch users. When the request is made by Android, it sets a VehiclePropValue
and the HAL must respond with a property change event. When the HAL makes the request, it must
also do it through a property change event (the main difference is that the request id is
positive in the former case, and negative in the latter). The SwitchUserMessageType also differs.
If the request succeeds, the HAL must update the property with: If the request fails, the response would be something like: If the request succeeded and Android has three users (0, 10, and 11), the response would be: The current and target user ids are the same. If the request fails, then they would differ.
For example, the target user would be 11 and the current user would remain 10. The HAL can update its internal state once it receives this request, but it needn't
reply to the Android system.
Change mode: Tire pressure. Each tire is identified by its areaConfig.areaId config. The
respective minFloatValue and maxFloatValue are used to store the OEM-
recommended pressure range. Values for minFloatValue and maxFloatValue
in VehicleAreaConfig must be defined.
The minFloatValue in the areaConfig data represents the lower bound of the recommended tire
pressure. The maxFloatValue in the areaConfig data represents the upper bound of the
recommended tire pressure. For example, this areaConfig indicates the recommended
tire pressure of left_front tire as from 200.0kPa to 240.0kPa.
Change mode: Tire pressure units for display. Indicates which units the car is using to display tire pressure
to the user. For example, PSI, Bar or Kilopascal. VehiclePropConfig.configArray is used to
indicate the supported pressure display units. Pressure units are defined in VehicleUnit.
For example, configArray[0]: KILOPASCAL configArray[1]: PSI configArray[2]: BAR If updating TIRE_PRESSURE_DISPLAY_UNITS affects the values of other *_DISPLAY_UNITS properties,
then their values must be updated and communicated to the AAOS framework as well.
This property is defined as
Change mode: Set to true when traction control (TC) is active and reset to false when TC is off. This
property can be intermittently set (pulse) based on the real-time state of the TC system.
Change mode: Returns the trailer state of the car.
Change mode: State of the vehicles turn signals.
Change mode: Property used to associate (or query the association) the current user with vehicle-specific
identification mechanisms (such as key FOB). This is an optional user management property. The OEM can still support user management without
defining it. In fact, this property could be used without supporting the core user-related
functions described on INITIAL_USER_INFO. To query the association, the Android system gets the property, passing a VehiclePropValue
containing the types of associations are being queried, as defined by
UserIdentificationGetRequest. The HAL must return right away, returning a VehiclePropValue with a
UserIdentificationResponse. Notice that user identification took place while the system was
booting up. takehe VHAL implementation should only return the already identified association
(such as the key FOB used to unlock the car), instead of starting a new association from the get
call. To associate types, the Android system sets the property, passing a VehiclePropValue containing
the types and values of associations being set, as defined by the UserIdentificationSetRequest.
The HAL then uses a property change event (whose VehiclePropValue is defined by
UserIdentificationResponse) indicating the current status of the types after the request. For example, to query if the current user (10) is associated with the FOB that unlocked the car
and a custom mechanism provided by the OEM, the request is:
If the user is associated with the FOB but not with the custom mechanism, the response is:
Then to associate the user with the custom mechanism, a set request is made: If the request succeeded, the response would be:
The set request adds associations but doesn't remove the existing associations. In the previous
example, the end state would be two associations (FOB and CUSTOM_1). To associate the user with
just CUSTOM_1 but not FOB, then the request would have been:
Change mode: Returns the vehicle's curb weight in kilograms. Curb weight is the total weight of the vehicle
with standard equipment and all necessary operating consumables such as motor oil, transmission
oil, brake fluid, coolant, air conditioning refrigerant, and weight of fuel at nominal tank
capacity while not loaded with either passengers or cargo. configArray[0] is used to specify the vehicle's gross weight in kilograms. The vehicle's gross
weight is the maximum operating weight of the vehicle as specified by the manufacturer
including the vehicle's chassis, body, engine, engine fluids, fuel, accessories, driver,
passengers and cargo but excluding that of any trailers.
Change mode: Indicates if the vehicle is in use. In use means a human user is present and intendeds to use
the vehicle. This doesn't necessarily mean the human user is in the vehicle. For example, if the
human user unlocks the vehicle remotely, the vehicle is considered to be in use. If this property
is supported: This property differs from This property is defined as
Change mode: Vehicle Maps Service (VMS) message. This property uses MIXED data to communicate VMS messages.
Its contents are to be interpreted as follows. The indices defined in VmsMessageIntegerValuesInde
are used to read from int32Values. bytes is a serialized VMS message as defined in the VMS
protocol, which is opaque to the framework. IVehicle#get must always return
Change mode: ON_CHANGEREAD_WRITE
Access mode: Speed units for display. Indicates the type of units used to display speed to the user.
For example, m/s, km/h, or mph. VehiclePropConfig.configArray indicates the supported speed
display units. Pressure units are defined in VehicleUnit. For example: If updating This property is defined as
Change mode: Defines an event that VHAL signals to
Car Watchdog
as a heartbeat. If VHAL supports this property, VHAL should write system uptime to this property
at every three seconds. Car Watchdog subscribes to this property and checks if the property is
updated every three seconds. With the buffer time of three seconds, Car Watchdog waits for a
heartbeat to be signaled up to six seconds from the last heartbeat. If not, Car Watchdog considers
VHAL unhealthy and terminates it. If this property is not supported by VHAL, Car Watchdog doesn't
check VHAL health status.
Change mode: Defines an event that Car Watchdog updates to indicate it's active. Car Watchdog sets this
property to system uptime in milliseconds at every three seconds. While booting, the update could
take longer.
Change mode: Defines a process terminated by Car Watchdog and the reason for the termination.
Change mode: Reports wheel ticks. The first element in the vector is a reset count. A reset indicates
previous tick counts are not comparable with this and future ones. Some sort of discontinuity in
tick counting has occurred. The next four elements represent ticks for individual wheels in the following order: All tick counts are cumulative. Tick counts increment when the vehicle moves forward, and
decrement when the vehicle moves backward. The ticks should be reset to 0 when the vehicle is
started. Uses enum Wheel. For example, if all wheels are supported, then: If a wheel is not supported, its value shall always be set to 0. The
Change mode: Window child lock. True indicates the window is child-locked. This property is defined as
Change mode: Window move. The Larger absolute values, either positive or negative, indicate a faster movement speed. Once the
window reaches the positional limit, the value must reset to 0. If the value of
For a window that may open out of plane (a vent mode of sunroof), this parameter works as
follows. If: This property is defined as
Change mode: Window position. The Values in between This property is defined as
Change mode: Windshield wipers period (milliseconds). Returns the instantaneous time period for one full
cycle of the windshield wipers in milliseconds. A full cycle is defined as a wiper moving from
and returning to the rest position. When an intermittent wiper setting is selected, this property
value must be set to 0 during the pause period of the intermittent wiping. The
Change mode: Windshield wipers state. Returns the current state of the windshield wipers. The value of
For each supported area ID, the
Change mode: Windshield wipers switch. Represents the position of the switch controlling the windshield
wipers. The value of This property is defined as
Change mode: VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
STEERING_WHEEL_THEFT_LOCK_ENABLED
ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
STORAGE_ENCRYPTION_BINDING_SEED
ON_CHANGE
Access mode: READ_WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
SUPPORT_CUSTOMIZE_VENDOR_PERMISSION
configArray[n]: propId : property ID
for the
vendor property where configArray[n+1] is an enum in VehicleVendorPermission and indicates the
permission for reading the value of the property.
configArray: { vendor_prop_1, PERMISSION_VENDOR_SEAT_READ, PERMISSION_VENDOR_SEAT_WRITE, vendor_prop_2, PERMISSION_VENDOR_INFO, PERMISSION_NOT_ACCESSIBLE, }
STATIC
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
SUPPORTED_PROPERTY_IDS
STATIC
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 14
SWITCH_USER
LEGACY_ANDROID_SWITCH
Called by the Android system to indicate the Android user
is about to change, when the change request was made in a way that is not integrated with the
HAL (for example, through adb shell am switch-user). The HAL can switch its internal user once
it receives this request, but it doesn't need to reply back to the Android system. If its
internal user cannot be changed for some reason, then it must wait for the
SWITCH_USER(type=ANDROID_POST_SWITCH)
call to recover (for example, it could issue
a SWITCH_USER(type=VEHICLE_REQUEST)
to switch back to the previous user). Ideally
it should never fail (as switching back could confuse the end user).
For example, if the system have users (0, 10, 11) and it's switching from 0 to 11
(where none of them have any special flag), the request would be:
int32[0]
42 // request idint32[1]
1 // SwitchUserMessageType::LEGACY_ANDROID_SWITCHint32[2]
11 // target user idint32[3]
0 // target user flags (none)int32[4]
10 // current userint32[5]
0 // current user flags (none)int32[6]
3 // number of usersint32[7]
0 // user #0 (Android user id 0)int32[8]
0 // flags of user #0 (none)int32[9]
10 // user #1 (Android user id 10)int32[10]
0 // flags of user #1 (none)int32[11]
11 // user #2 (Android user id 11)int32[12]
0 // flags of user #2 (none)ANDROID_SWITCH
Called by the Android system to indicate the Android user is about to change,
but Android waits for the HAL's response (up to some time) before proceeding. The HAL must
switch its internal user once it receives this request, then respond back to Android with a
SWITCH_USER(type=VEHICLE_RESPONSE)
indicating whether its internal user was switched or not
(through the SwitchUserStatus enum). For example, if Android has users (0, 10, 11) and it's
switching from 10 to 11 (where none of them have any special flag), the request would be:
int32[0]
42 // request idint32[1]
2 // SwitchUserMessageType::ANDROID_SWITCHint32[2]
11 // target user idint32[3]
0 // target user flags (none)int32[4]
10 // current userint32[5]
0 // current user flags (none)int32[6]
3 // number of usersint32[7]
0 // first user (user 0)int32[8]
1 // first user flags (SYSTEM)int32[9]
10 // second user (user 10)int32[10]
0 // second user flags (none)int32[11]
11 // 3rd user (user 11)int32[12]
0 // 3rd user flags (none)
int32[0]
42 // request idint32[1]
3 // messageType: SwitchUserMessageType::VEHICLE_RESPONSEint32[2]
1 // status: SwitchUserStatus::SUCCESS
int32[0]
42 // request idint32[1]
3 // messageType: SwitchUserMessageType::VEHICLE_RESPONSEint32[2]
2 // status: SwitchUserStatus::FAILURE string: "108-D'OH!"
VEHICLE_RESPONSE
Called by the HAL to indicate whether a request of type ANDROID_SWITCH
should proceed or abort. See also ANDROID_SWITCH.VEHICLE_REQUEST
Called by the HAL to request that the current foreground Android user is
switched. This is useful in situations where Android started as one user, but the vehicle
identified the driver as another user. For example, user A unlocked the car using the key fob
of user B. The INITIAL_USER_INFO request returned user B, but then a face recognition
subsubsystem identified the user as A. The HAL makes this request by a property change event
(passing a negative request id), and the Android system response is to issue an
ANDROID_POST_SWITCH call which the same request id. For example, if the current foreground
Android user is 10 and the HAL asked to switch to 11, the request would be:
int32[0]
-108 // request idint32[1]
4 // messageType: SwitchUserMessageType::VEHICLE_REQUESTint32[2]
11 // Android user id
int32[0]
-108 // request idint32[1]
5 // messageType: SwitchUserMessageType::ANDROID_POST_SWITCHint32[2]
11 // target user idint32[3]
0 // target user id flags (none)int32[4]
11 // current userint32[5]
0 // current user flags (none)int32[6]
3 // number of usersint32[7]
0 // first user (user 0)int32[8]
0 // first user flags (none)int32[9]
10 // second user (user 10)int32[10]
4 // second user flags (none)int32[11]
11 // third user (user 11)int32[12]
3 // third user flags (none)ANDROID_POST_SWITCH
Called by the Android system after a request to switch a user was made.
This property is called after switch requests of any type (for example, >code>LEGACY_ANDROID_SWITCH,
>code>ANDROID_SWITCH, or VEHICLE_REQUEST
) and can be used to determine if the request succeeded or
failed.
INITIAL_USER_INFO
(where the request-specific
value at index 1 is SwitchUserMessageType::ANDROID_POST_SWITCH
), then two more values for
the target user id (for example, the Android user id that was requested to be switched to)
and its flags (as defined by UserFlags).VEHICLE_REQUEST
ON_CHANGE
Access mode: READ_WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
TIRE_PRESSURE
.areaConfigs: { VehicleAreaConfig { .areaId: VehicleAreaWheel::LEFT_FRONT, .minFloatValue: 200.0, .maxFloatValue: 240.0, } }
CONTINUOUS
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:KILOPASCAL
Release: Android 13
TIRE_PRESSURE_DISPLAY_UNITS
VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: VehicleUnit
Unit type: N/A
Release: Android 13
TRACTION_CONTROL_ACTIVE
ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
TRAILER_PRESENT
ON_CHANGE
Access mode: READ
Enum type: TrailerState
Unit type: N/A
Release: Android 13
TURN_SIGNAL_STATE
ON_CHANGE
Access mode: READ
Enum type: VehicleTurnSignal
Unit type: N/A
Release: Android 13
USER_IDENTIFICATION_ASSOCIATION
int32[0]
42 // request idint32[1]
10 (Android user id)int32[2]
0 (Android user flags)int32[3]
2 (number of types queried)int32[4]
1 (first type queried, UserIdentificationAssociationType::KEY_FOB)int32[5]
101 (second type queried, UserIdentificationAssociationType::CUSTOM_1)
int32[0]
42 // request idint32[1]
2 (number of associations in the response)int32[2]
1 (first type: UserIdentificationAssociationType::KEY_FOB)int32[3]
2 (first value: UserIdentificationAssociationValue::ASSOCIATED_CURRENT_USER)int32[4]
101 (first type: UserIdentificationAssociationType::CUSTOM_1)int32[5]
4 (second value: UserIdentificationAssociationValue::NOT_ASSOCIATED_ANY_USER)
int32[0]
43 // request idint32[1]
10 (Android user id)int32[2]
0 (Android user flags)int32[3]
1 (number of associations being set)int32[4]
101 (first type: UserIdentificationAssociationType::CUSTOM_1)
int32[0]
43 // request idint32[1]
1 (number of associations in the response)int32[2]
101 (first type: UserIdentificationAssociationType::CUSTOM_1)int32[3]
1 (first value: UserIdentificationAssociationValue::ASSOCIATED_CURRENT_USER)
int32[0]
43 // request idint32[1]
10 (Android user id)int32[2]
2 (number of types set)int32[3]
1 (first type: UserIdentificationAssociationType::KEY_FOB)int32[4]
2 (first value: UserIdentificationAssociationValue::DISASSOCIATE_CURRENT_USER)int32[5]
101 (second type: UserIdentificationAssociationType::CUSTOM_1)int32[6]
1 (second value: UserIdentificationAssociationValue::ASSOCIATE_CURRENT_USER)ON_CHANGE
Access mode: READ_WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
VEHICLE_CURB_WEIGHT
STATIC
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:KILOGRAM
Release: Android 13
VEHICLE_IN_USE
VEHICLE_IN_USE
must be set to true. Each time the user powers off the vehicle or
the system detects the user is not present, VEHICLE_IN_USE
must be set to false.
VEHICLE_IN_USE
must be set to false.
VEHICLE_IN_USE
must be set to true.
AP_POWER_BOOTUP_REASON
in the sense that
AP_POWER_BOOTUP_REASON
is only set once during system boot. However, this property
might change multiple times during a system boot cycle. For example, a device is currently not
in use. The system bootup to execute a remote task. VEHICLE_IN_USE
is false. While
the remote task is executing, the user enters the vehicle and powers on the vehicle.
VEHICLE_IN_USE
is set to true. After a driving session, user powers off the vehicle,
VEHICLE_IN_USE
is set to false.VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 14
VEHICLE_MAP_SERVICE
StatusCode::NOT_AVAILABLE
.READ_WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
VEHICLE_SPEED_DISPLAY_UNITS
.configArray: { VehicleUnit::METER_PER_SEC, VehicleUnit::KILOMETERS_PER_HOUR, VehicleUnit::MILES_PER_HOUR }
configArray[0]
METER_PER_SEC
configArray[1]
MILES_PER_HOUR
configArray[2]
KILOMETERS_PER_HOUR
VEHICLE_SPEED_DISPLAY_UNITS
affects the values of other
*_DISPLAY_UNITS properties
, then those values must be updated and communicated to
the AAOS framework.VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
VHAL_HEARTBEAT
ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
WATCHDOG_ALIVE
ON_CHANGE
Access mode: WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
WATCHDOG_TERMINATED_PROCESS
int32Values[0] 1 // ProcessTerminationReason showing why a process is terminated. string: "/system/bin/log" // Process execution command
ON_CHANGE
Access mode: WRITE
Enum type: N/A
Unit type: N/A
Release: Android 13
WHEEL_TICK
int64Values[0]
Reset countint64Values[1]
Front left ticksint64Values[2]
Front right ticksint64Values[3]
Rear right ticksint64Values[4]
Rear left ticksconfigArray
is used to indicate the micrometers-per-wheel-tick value and which
wheels are supported configArray is set as follows:configArray[0], bits [0:3] Supported wheels
configArray[0]
VehicleAreaWheel::LEFT_FRONT | VehicleAreaWheel::RIGHT_FRONT | VehicleAreaWheel::LEFT_REAR | VehicleAreaWheel::RIGHT_REAR
configArray[1]
Micrometers per front left wheel tickconfigArray[2]
Micrometers per front right wheel tickconfigArray[3]
Micrometers per rear right wheel tickconfigArray[4]
Micrometers per rear left wheel tick.VehiclePropValue.timestamp
must be filled in.CONTINUOUS
Access mode: READ
Enum type: N/A
Unit type: N/A
Release: Android 13
WINDOW_LOCK
VehiclePropertyAccess.READ_WRITE
, but OEMs can implement it as
VehiclePropertyAccess.READ
only.ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
WINDOW_MOVE
maxInt32Value
and minInt32Value
in each
VehicleAreaConfig must be defined. All integers between minInt32Value
and
maxInt32Value
must be supported. The maxInt32Value
indicates the window is opening in plane/closing in the out of plane direction at the fastest
speed. The minInt32Value
indicates the window is closing in plane/opening in the
out of plane direction at the fastest speed.WINDOW_MOVE
is 0, no movement is underway. This property is represented in a
specified range of relative movement speeds.
Max
Open the sunroof further, stop automatically when fully open.Min
Close the sunroof, stop automatically when sunroof is closed.
Max
Close the vent, stop automatically stop when vent is closed.Min
Open the vent further, stop automatically when vent is fully open.
Max
Open the sunroof, stop automatically when sunroof is fully open.Min
Open the vent, stop automatically when vent is fully open.VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
WINDOW_POS
maxInt32Value
and minInt32Value
in each
VehicleAreaConfig must be defined. All integers between minInt32Value
and
maxInt32Value
must be supported. The minInt32Value
indicates the window
is closed or fully open out of plane. If the window cannot open out of plane, then
minInt32Value
is the position of the window when fully closed and must be 0. If the
window can open out of plane, the minInt32Value
indicates the window is fully open
in its position out of plane and is a negative value. See the example below for a more detailed
explanation. The maxInt32Value
indicates the window is fully open.minInt32Value
and maxInt32Value
indicate a transition
state between the closed/fully open out-of-plane and fully open positions. This property is not
in any specific unit but in a specified range of relative positions. For example, this is how the
property should work for a window that can move out of plane: For a window that may open out of
plane (vent mode of sunroof) this parameter works with negative values as follows:
In this mode, 0 indicates the window is closed.
Max
Sunroof fully open (0 for sunroof closed).Min
Sunroof vent fully open (0 for sunroof closed).VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only.ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: N/A
Unit type: N/A
Release: Android 13
WINDSHIELD_WIPERS_PERIOD
maxInt32Value
and minInt32Value
in VehicleAreaConfig must be defined.
The maxInt32Value
for each area ID must specify the longest wiper period. The
minInt32Value
must be set to 0 for each area ID.ON_CHANGE
Access mode: READ
Enum type: N/A
Unit type: VehicleUnit:MILLI_SECS
Release: Android 14
WINDSHIELD_WIPERS_STATE
WINDSHIELD_WIPERS_STATE
may not match the value of
WINDSHIELD_WIPERS_SWITCH
For example, WINDSHIELD_WIPERS_STATE: ON
and
WINDSHIELD_WIPERS_SWITCH: WindshieldWipersSwitch#AUTO
If WINDSHIELD_WIPERS_STATE: ON
and WINDSHIELD_WIPERS_PERIOD
is
implemented, then WINDSHIELD_WIPERS_PERIOD
must reflect the time period of one full
cycle of the wipers.VehicleAreaConfig#supportedEnumValues
array must
be defined unless all states in WindshieldWipersState
are supported (including OTHER,
which is not recommended).ON_CHANGE
Access mode: READ
Enum type: WindshieldWipersState
Unit type: N/A
Release: Android 14
WINDSHIELD_WIPERS_SWITCH
WINDSHIELD_WIPERS_SWITCH
may not match the value of
WINDSHIELD_WIPERS_STATE
For example, WINDSHIELD_WIPERS_SWITCH: AUTO
and
WINDSHIELD_WIPERS_STATE: WindshieldWipersState#ON
For each supported area ID, the
VehicleAreaConfig#supportedEnumValues
array must be defined unless all states in
WindshieldWipersSwitch
are supported (including OTHER, which is not recommended).VehiclePropertyAccess.READ_WRITE
, but OEMs can
implement it as VehiclePropertyAccess.READ
only. If this property is implemented as
VehiclePropertyAccess.READ_WRITE
and the OTHER state is listed in the
VehicleAreaConfig#supportedEnumValues
array, then OTHER is not a supported value
for writing It is only a supported value for reading.ON_CHANGE
Access mode: READ_WRITE
/READ
Enum type: WindshieldWipersSwitch
Unit type: N/A
Release: Android 14