HANDS_ON_DETECTION_ENABLED
What it is
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 VehiclePropertyAccess.READ_WRITE, but OEMs have the option to implement it as VehiclePropertyAccess.READ only.
How the ID is built
A property ID is a 32-bit value packing four fields. Reading 0x11201016 apart:
| Field | Mask | Value | Means |
|---|---|---|---|
| Group | 0xf0000000 | 0x10000000 | SYSTEM |
| Area | 0x0f000000 | 0x01000000 | GLOBAL |
| Type | 0x00ff0000 | 0x00200000 | BOOLEAN |
| Ordinal | 0x0000ffff | 0x00001016 | 0x1016 |
Reading it from an app
CarPropertyManager mgr = (CarPropertyManager)
car.getCarManager(Car.PROPERTY_SERVICE);
boolean value =
mgr.getBooleanProperty(VehiclePropertyIds.HANDS_ON_DETECTION_ENABLED, 0);This property can be read and written, though an OEM may implement it as read-only. It fires a callback whenever the value changes.

