2 * /brief This document describes the DBus interfaces and data types for the
3 * Automotive Message Broker API. The data types are intended to as-close-as-
4 * possible be compatible with the W3C vehicle <a href="https://rawgit.com/w3c/automotive-bg/master/data_spec.html>data spec</a>.
36 * \brief VehiclePropertyType is the base class for all Data types.
38 interface VehiclePropertyType {
41 * \brief time stamp marking the last time a property in the interface updated
43 attribute Double Time readonly
46 * \brief Zone in which the interface is situated.
48 attribute Zone Zone readonly
51 * \brief returns dictionary of objectName and values for data between
52 * 'beginTime' and 'endTime'
53 * \arg beginTime time stamp in Seconds since Unix Epoc
54 * \arg endTime time stamp in Seconds since Unix Epoc
56 method GetHistory(Double beginTime, Double endTime) {
57 out{ Dictionary result}
71 /*! org.automotive.Manager
72 * \brief Manager is a helper interface for discovering and finding available objects
73 * Manager is a helper interface that helps inform of supported data types and find
74 * specified data type objects' path on DBus
77 interface org.automotive.Manager {
80 * \brief returns supported properties
88 * \brief find the DBus object path matching the given "objectName" (ie "VehicleSpeed" is the object name for
89 * the DBus object at path: "/path/to/VehicleSpeed") or org.automotive.Manager.ObjectNotFound if the object
90 * name is not supported.
92 * If the object path does not exist, it will be created. The object path will be removed
93 * when the last proccess that calls Find* disconnects from DBus.
95 * \arg String objectName to find
96 * \returns list of object paths that provide the given object Name.
109 * \brief find the DBus object path which matches "objectName" and "zone". This has the same behavior as FindObject
110 * except that it takes an addition zone argument and only returns the path for that zone.
111 * \arg String property is the requested property to be retrieved.
112 * \arg Zone zone is the zone which the object
113 * \returns string representing the DBus Object path
115 method FindObjectForZone {
127 * \brief get a list of zones for a given objectName.
128 * \arg String objectName object name.
129 * \returns list of zones for the given objectName (@see Zone)
131 method ZonesForObjectName {
142 /*! org.automotive.VehicleSpeed
143 \brief contains information about VehicleSpeed
146 interface org.automotive.VehicleSpeed extends VehiclePropertyType {
149 * \brief Must return Vehicle Speed in kilometers per hour.
151 attribute UInt16 Speed readonly
154 /*! org.automotive.EngineSpeed
155 \brief contains information about EngineSpeed
158 interface org.automotive.EngineSpeed extends VehiclePropertyType {
161 * \brief Must return Engine Speed in rotations per minute.
163 attribute UInt16 Speed readonly
166 enumeration PowerMode {
173 interface org.automotive.VehiclePowerMode extends VehiclePropertyType {
176 * \brief Must return vehicle power mode
178 attribute PowerMode VehiclePowerMode readonly
181 /*! org.automotive.TripMeter
182 \brief contains information about TripMeter
185 interface org.automotive.TripMeter extends VehiclePropertyType {
188 * \brief Must return trip meters. Changing any items in the array will reset the item's value to '0'.
190 attribute UInt16[] TripMeters
193 /*! org.automotive.Acceleration
194 \brief contains information about Acceleration
197 interface org.automotive.Acceleration extends VehiclePropertyType {
200 * \brief Must return acceleration on the "X" axis as 1/1000 G (gravitational force).
202 attribute UInt16 X readonly
205 * \brief Must return acceleration on the "Y" axis as 1/1000 G (gravitational force).
207 attribute UInt16 Y readonly
210 * \brief Must return acceleration on the "Z" axis as 1/1000 G (gravitational force).
212 attribute UInt16 Z readonly
215 enumeration TransmissionMode {
221 overdrive = "overdrive"
224 /*! TransmissionPosition
225 * \brief Describes Transmission Pistion. Deprecated. Will disappear in 0.13
227 enumeration TransmissionPosition {
244 /*! TransmissionGearType
245 * \brief Describes the transmission gearbox type
247 enumeration TransmissionGearType
254 interface org.automotive.Transmission extends VehiclePropertyType {
256 * \brief Must return transmission gear position (see TRANSMISSIONPOSITION) Deprecated. Replaced with Gear
258 attribute TransmissionPosition GearPosition readonly
260 /*! TransmissionGearType
261 * \brief MUST return transmission gear type of either Automatic, Manual or Constant Variable (CV).
262 * See TRANSMISSIONGEARTYPE
264 attribute TransmissionGearType Type;
267 * \brief Must return transmission gear position 1-10
269 attribute UInt8 Gear readonly
272 * \brief Must return transmission Mode
274 attribute TransmissionMode Mode readonly
278 interface org.automotive.CruiseControlStatus extends VehiclePropertyType {
281 * \brief Must return whether or not the Cruise Control system is active (true) or inactive (false)
283 attribute Boolean Activated readonly
286 * \brief Must return target Cruise Control speed in kilometers per hour (kph).
288 attribute UInt16 Speed readonly
292 * Deprecated. Use BrakeOperation. Remove in 0.13
294 interface org.automotive.WheelBrake extends VehiclePropertyType {
297 * \brief Must return Wheel Brake status: Engaged = true, disengaged = false
299 attribute Boolean Engaged readonly
302 interface org.automotive.BrakeOperation extends VehiclePropertyType {
304 /*! BrakePedalDepressed
305 * \brief must return whether brake pedal is depressed or not. true: brake pedal is depressed, false: brake pedal is not depressed
307 attribute Boolean BrakePedalDepressed readonly
310 interface org.automotive.LightStatus extends VehiclePropertyType {
313 * \brief Must return headlight status: on = true, off = false.
315 attribute Boolean Head readonly
318 * \brief Must return right turn signal status: on = true, off = false.
320 attribute Boolean RightTurn readonly
323 * \brief Must return left turn signal status: on = true, off = false.
325 attribute Boolean LeftTurn readonly
328 * \brief Must return brake signal light status: on = true, off = false.
330 attribute Boolean Brake readonly
333 * \brief Must return fog light status: on = true, off = false.
335 attribute Boolean Fog readonly
338 * \brief Must return hazard light status: on = true, off = false.
340 attribute Boolean Hazard readonly
343 * \brief Must return parking light status: on = true, off = false.
345 attribute Boolean Parking readonly
348 * \brief Must return high beam status: on = true, off = false.
350 attribute Boolean HighBeam readonly
352 /*! AutomaticHeadlights
353 * \brief Must return automatic headlight status: on = true, off = false.
355 attribute Boolean AutomaticHeadlights readonly
358 * \brief Must return dynamic high beam status: on = true, off = false.
360 attribute Boolean DynamicHighBeam readonly
364 interface org.automotive.InteriorLightStatus extends VehiclePropertyType {
367 * \brief Must return passenger interior light status: on = true, off = false
369 attribute Boolean Passenger readonly
372 * \brief Must return driver interior light status: on = true, off = false
374 attribute Boolean Driver readonly
377 * \brief Must return center interior light status: on = true, off = false
379 attribute Boolean Center readonly
383 interface org.automotive.Horn extends VehiclePropertyType {
386 * \brief Must return horn status: on = true, off = false
388 attribute Boolean On readonly
392 interface org.automotive.Fuel extends VehiclePropertyType {
395 * \brief Must return fuel level as a percentage of fullness.
397 attribute UInt16 Level readonly
400 * \brief Must return estimated fuel range in meters.
402 attribute UInt32 Range readonly
404 /*! InstantConsumption
405 * \brief Must return instant fuel consumption in per distance travelled (Unit: milliliters per 100 kilometers).
407 attribute UInt32 InstantConsumption readonly
410 * \brief Must return instant fuel 'economy' in kilometers per liter of fuel.
412 attribute UInt16 InstantEconomy readonly
415 * \brief Must return average fuel 'economy' in kilometers per liter of fuel since last reset. Setting this to any value should reset the counter to '0'
417 attribute UInt16 AverageEconomy;
419 /*! AverageConsumption
420 * \brief Must return average fuel consumption in per distance travelled (Unit: milliliters per 100 kilometers). Setting this to any value should reset the counter to '0'
422 attribute UInt32 AverageConsumption;
424 /*! FuelConsumedSinceRestart
425 * \brief must return fuel consumed since engine start; (Unit: milliliters per 100 kilometers) resets to 0 each restart
427 attribute UInt32 FuelConsumedSinceRestart readonly;
429 /*! FuelConsumedSinceRestart
430 * \brief must return fuel consumed since engine start; (Unit: milliliters per 100 kilometers) resets to 0 each restart
432 attribute UInt32 FuelConsumedSinceRestart readonly;
436 interface org.automotive.EngineOil extends VehiclePropertyType {
439 * \brief Must return remaining engine oil as percentage of fullness.
441 attribute UInt16 Remaining readonly
444 * \brief Must return Engine Oil Temperature in Celcius.
446 attribute long Temperature readonly
449 * \brief Must return Engine Oil Pressure in kPa.
451 attribute UInt16 Pressure readonly
455 interface org.automotive.Location extends VehiclePropertyType {
458 * \brief Must return latitude in Deg.Min (-180, +180)
460 attribute Double Latitude readonly
463 * \brief Must return longitude in Deg.Min (-90, +90)
465 attribute Double Longitude readonly
468 * \brief Must return altitude in meters above sea-level (0).
470 attribute Double Altitude readonly
473 * \brief Must return direction in Degrees (0-360)
475 attribute UInt16 Direction readonly
479 interface org.automotive.ExteriorBrightness extends VehiclePropertyType {
481 /*! ExteriorBrightness
482 * \brief Must return the brightness outside the vehicle in lux.
484 attribute UInt16 ExteriorBrightness readonly
488 interface org.automotive.Temperature extends VehiclePropertyType {
491 * \brief Must return the temperature of the interior of the vehicle in celcius.
493 /// Deprecated. Use InteriorTemperature. Remove in 0.13
494 attribute signed short Interior readonly
497 * \brief Must return the temperature of the exterior of the vehicle in celcius.
499 /// Deprecated. Use ExteriorTemperature. Remove in 0.13
500 attribute signed short Exterior readonly
503 * \brief Must return the temperature of the interior of the vehicle in celcius.
505 attribute signed short InteriorTemperature readonly
508 * \brief Must return the temperature of the exterior of the vehicle in celcius.
510 attribute signed short ExteriorTemperature readonly
514 interface org.automotive.RainSensor extends VehiclePropertyType {
517 * \brief Must return level of rain intensity 0: No Rain - 10: Heaviest Rain.
519 attribute UInt16 RainSensor readonly
523 interface org.automotive.WindshieldWiper extends VehiclePropertyType {
524 const UInt16 WIPERSPEED_OFF = 0;
525 const UInt16 WIPERSPEED_SLOWEST= 1;
526 const UInt16 WIPERSPEED_FASTEST = 5;
527 const UInt16 WIPERSPEED_AUTO = 10;
530 * \brief Must return Level of windshield whiper speed (see WIPERSPEED)
532 attribute UInt16 WindshieldWiper readonly
535 /*! Deprecated. Use ClimateControl interface. Remove in 0.13
537 interface org.automotive.HVAC extends VehiclePropertyType {
538 const UInt16 AIRFLOWDIRECTION_FRONTPANEL = 0;
539 const UInt16 AIRFLOWDIRECTION_FLOORDUCT= 1;
540 const UInt16 AIRFLOWDIRECTION_FRONT = 0x02;
541 const UInt16 AIRFLOWDIRECTION_DEFROSTER = 0x04;
544 * \brief Must return airflow direction. See
546 attribute UInt16 AirflowDirection;
549 * \brief Must return speed of the fan (0-7)
551 attribute UInt16 FanSpeed;
553 /*! TargetTemperature
554 * \brief Must return target desired temperature in celcius.
556 attribute UInt16 TargetTemperature;
559 * \brief Must return air conditioning on (true) / off (false).
561 attribute Boolean AirConditioning;
564 * \brief Must return air recirculation on (true) / off (false).
566 attribute Boolean AirRecirculation;
569 * \brief Must return heater on (true) / off (false).
571 attribute Boolean Heater;
573 /*! SteeringWheelHeater
574 * \brief Must return air recirculation on (true) / off (false).
576 attribute Boolean SteeringWheelHeater;
579 * \brief Must return seat heater status: 0-100%.
581 attribute UInt16 SeatHeater;
584 * \brief Must return seat heater status: on (true) / off (false).
586 attribute Boolean SeatCooler;
589 enumeration AirflowDirectionType
591 frontpanel = "frontpanel",
592 floorduct = "floorduct",
594 defrostfloor = "defrostfloor"
597 interface org.automotive.ClimateControl extends VehiclePropertyType {
599 * \brief Must return current status of the direction of the air flow through the ventilation system
601 attribute AirflowDirectionType AirflowDirection;
604 * \brief Must return seat heater status: on (true) / off (false).
606 attribute UInt8 FanSpeedLevel;
608 /*! TargetTemperature
609 * \brief Must return current setting of the desired temperature (Unit: celsius)
611 attribute Int8 TargetTemperature;
614 * \brief Must return current status of the air conditioning system: on (true) or off (false)
616 attribute Boolean AirConditioning;
619 * \brief Must return current status of the heating system: on (true) or off (false)
621 attribute Boolean Heater;
624 * \brief Must return current status of the seat warmer ( 0: off, 1: least warm, 10: warmest )
626 attribute UInt8 SeatHeater;
629 * \brief Must return current status of the seat ventilation ( 0: off, 1: least warm, 10: warmest )
631 attribute UInt8 SeatCooler;
634 * \brief Must return current setting of air recirculation: on (true) or pulling in outside air (false).
636 attribute Boolean AirRecirculation;
638 /*! SteeringWheelHeater
639 * \brief Must return current status of steering wheel heater ( 0: off, 1: least warm, 10: warmest ).
641 attribute UInt8 SteeringWheelHeater;
644 interface org.automotive.WindowStatus extends VehiclePropertyType {
647 * \brief Must return window openness percentage (100% fully open, 0% fully closed)
648 * for the window location see "zone" attribute
650 attribute UInt16 Openness;
653 * \brief Must return the defroster status of the window. On = true, Off = false.
654 * Deprecated. Use Defrost interface. Remove in 0.13.
656 attribute Boolean Defrost;
659 interface org.automotive.Defrost extends VehiclePropertyType {
662 * \brief Must return current status of the defrost switch for mirrors. It can be
663 * used to send user's request for changing setting.
665 attribute Boolean DefrostWindow;
668 * \brief Must return current status of the defrost switch for window. It can be
669 * used to send user's request for changing setting.
671 attribute Boolean DefrostMirrors;
674 interface org.automotive.Sunroof extends VehiclePropertyType {
677 * \brief Must return window status for sunroof openness percentage.
679 attribute UInt16 Openness;
682 * \brief Must return tilt status for sunroof percentage.
684 attribute UInt16 Tilt;
688 interface org.automotive.ConvertibleRoof extends VehiclePropertyType {
691 * \brief Must return convertible roof openness percentage.
693 attribute UInt16 Openness;
697 interface org.automotive.VehicleId extends VehiclePropertyType {
700 * \brief MUST return World Manufacturer Identifier (WMI)
701 * WMI is defined by SAE ISO 3780:2009. 3 characters.
703 attribute String WMI readonly
706 * \brief MUST return Vehicle Identification Number (VIN) as defined by ISO 3779. 17 characters.
708 attribute String VIN readonly
712 interface org.automotive.Size extends VehiclePropertyType {
715 * \brief MUST return width of vehicle in mm
717 attribute UInt16 Width readonly
720 * \brief MUST return height of vehicle in mm
722 attribute UInt16 Height readonly
725 * \brief MUST return length of vehicle in mm
727 attribute UInt16 Length readonly
731 interface org.automotive.FuelInfo extends VehiclePropertyType {
732 const UInt16 FUELTYPE_GASOLINE = 0;
733 const UInt16 FUELTYPE_HIGH_OCTANE= 1;
734 const UInt16 FUELTYPE_DIESEL = 2;
735 const UInt16 FUELTYPE_ELECTRIC = 3;
736 const UInt16 FUELTYPE_HYDROGEN = 4;
737 const UInt16 REFUELPOSITION_LEFT = 0;
738 const UInt16 REFUELPOSITION_RIGHT= 1;
739 const UInt16 REFUELPOSITION_FRONT = 2;
740 const UInt16 REFUELPOSITION_REAR = 3;
743 * \brief MUST return type of fuel. integer 0-4 (see
745 attribute UInt16 Type readonly
748 * \brief MUST return position of refuling (see
750 attribute UInt16 RefuelPosition readonly
754 interface org.automotive.VehicleType extends VehiclePropertyType {
755 const UInt16 VEHICLETYPE_SEDAN = 0;
756 const UInt16 VEHICLETYPE_COUPE= 1;
757 const UInt16 VEHICLETYPE_CABRIOLE = 2;
758 const UInt16 VEHICLETYPE_ROADSTER = 3;
759 const UInt16 VEHICLETYPE_SUV = 4;
760 const UInt16 VEHICLETYPE_TRUCK = 5;
763 * \brief MUST return type of Vehicle. Integer 0-5 (see
765 attribute UInt16 Type readonly
769 interface org.automotive.Doors extends VehiclePropertyType {
772 * \brief MUST return Number of doors in each row. The index represents the row. Position '0'
773 * represents the first row, '1' the second row etc.
774 * Example a common mini-van may have Doors[0] = 2 doors,
775 * Doors[1] = 1 (side door), Doors[2] = 1 (trunk).
777 attribute Array<UInt16> DoorsPerRow readonly
781 interface org.automotive.WheelInformation extends VehiclePropertyType {
784 * \brief MUST return Radius of Front Wheel(s) in mm.
786 attribute UInt16 FrontWheelRadius readonly
789 * \brief MUST return Radius of Rear Wheel(s) in mm.
791 attribute UInt16 RearWheelRadius readonly
794 * \brief MUST return Wheel Track in mm.
796 attribute UInt16 WheelTrack readonly
799 * \brief MUST return Antilock Brake System status: on = true, off = false.
801 attribute Boolean ABS readonly
805 interface org.automotive.Odometer extends VehiclePropertyType {
808 * \brief MUST return Distance traveled in km
810 /// Deprecated. Use DistanceTotal. Remove in 0.13
811 attribute UInt32 Odometer readonly
814 * \brief MUST return Distance traveled in m
816 attribute UInt32 DistanceTotal readonly
818 /*! DistanceSinceStart
819 * \brief MUST return Distance traveled since start in m
821 attribute UInt32 DistanceSinceStart readonly
826 interface org.automotive.Fluid extends VehiclePropertyType {
829 * \brief MUST return Transmission fluid level percentage. 0-100.
831 attribute UInt16 Transmission readonly
834 * \brief MUST return Brake fluid level percentage. 0-100.
836 attribute UInt16 Brake readonly
839 * \brief MUST return Washer fluid level percentage. 0-100.
841 attribute UInt16 Washer readonly
844 /// Deprecated. Use BatteryStatus. Remove in 0.13
845 interface org.automotive.Battery extends VehiclePropertyType {
848 * \brief MUST return battery voltage.
850 attribute Double Voltage readonly
853 * \brief MUST return battery current in Amperes
855 attribute Double Current readonly
858 interface org.automotive.BatteryStatus extends VehiclePropertyType {
861 * \brief MUST return battery voltage.
863 attribute UInt8 Voltage readonly
866 * \brief MUST return battery current in Amperes
868 attribute UInt8 Current readonly
871 * \brief MUST return battery charge level (Unit: percentage, 0%: empty, 100%: full).
873 attribute UInt8 ChargeLevel readonly
877 interface org.automotive.Tire extends VehiclePropertyType {
880 * \brief MUST return tire pressure in kPa.
882 attribute UInt16 Pressure readonly
885 * \brief MUST return left front tire temperature in Celcius.
887 attribute Int16 Temperature readonly
890 * \brief MUST return true if any tire pressure is low: pressure low (true), pressure not low (false).
892 attribute Boolean PressureLow readonly
896 interface org.automotive.SecurityAlert extends VehiclePropertyType {
901 attribute Boolean SecurityAlert readonly
904 /// Deprecated. Use LightStatus. remove in 0.13
905 interface org.automotive.ParkingBrake extends VehiclePropertyType {
908 * must return status of parking brake: Engaged = true, Disengaged = false.
910 attribute Boolean ParkingBrake readonly
913 /// Deprecated. Use LightStatus. remove in 0.13
914 interface org.automotive.ParkingLight extends VehiclePropertyType {
917 * must return status of parking light: Engaged = true, Disengaged = false.
919 attribute Boolean ParkingLight readonly
922 /// Deprecated. Use LightStatus. remove in 0.13
923 interface org.automotive.HazardLight extends VehiclePropertyType {
926 * must return status of hazard light: Engaged = true, Disengaged = false.
928 attribute Boolean HazardLight readonly
932 interface org.automotive.AntilockBrakingSystem extends VehiclePropertyType {
934 /*! AntilockBrakingSystem
935 * \brief MUST return whether Antilock Braking System is Idle (false) or Engaged (true)
937 attribute Boolean AntilockBrakingSystem readonly
941 interface org.automotive.TractionControlSystem extends VehiclePropertyType {
943 /*! TractionControlSystem
944 * \brief MUST return whether Traction Control System is Off (false) or On (true)
946 attribute Boolean TractionControlSystem readonly
950 interface org.automotive.VehicleTopSpeedLimit extends VehiclePropertyType {
952 /*! VehicleTopSpeedLimit
953 * \brief MUST returns top rated speed in km/h. 0 = no limit
955 attribute UInt16 VehicleTopSpeedLimit readonly
959 interface org.automotive.AirbagStatus extends VehiclePropertyType {
961 const UInt16 AIRBAGSTATUS_INACTIVE = 0;
962 const UInt16 AIRBAGSTATUS_ACTIVE = 1;
963 const UInt16 AIRBAGSTATUS_DEPLOYED = 2;
966 * \brief MUST returns Airbag status (byte) (see AIRBAGSTATUS_*)
968 attribute UInt16 AirbagStatus readonly
971 enumeration AirbagStatus {
978 * Deprecated. Use "Door". Remove in 0.13
980 interface org.automotive.DoorStatus extends VehiclePropertyType {
985 * \brief MUST returns Door status (byte).
990 attribute UInt16 DoorStatus readonly
993 * \brief MUST returns Door status (bool locked = true, unlocked = false).
995 attribute Boolean DoorLockStatus;
998 * \brief MUST returns Child lock status of rear doors. active = true, inactive = false.
999 * Setting this to 'true' will prevent the rear doors from being opened
1002 attribute Boolean ChildLockStatus;
1005 enumeration DoorStatus {
1011 interface org.automotive.Door extends VehiclePropertyType {
1014 * \brief MUST returns Door status (byte). See DOORSTATUS_*
1016 attribute DoorStatus Status readonly
1019 * \brief MUST returns Door status (bool locked = true, unlocked = false).
1021 attribute Boolean Lock;
1024 * \brief MUST returns Child lock status of rear doors. active = true, inactive = false.
1025 * Setting this to 'true' will prevent the rear doors from being opened
1028 attribute Boolean ChildLock;
1032 interface org.automotive.SeatBelt extends VehiclePropertyType {
1035 * \brief MUST return Seat Belt Status (bool: Fasten = true, Unfastened = false)
1037 attribute Boolean Status readonly
1041 interface org.automotive.OccupantStatus extends VehiclePropertyType {
1044 * \brief MUST returns status of Occupant (byte, see
1046 attribute UInt16 OccupantStatus readonly
1050 interface org.automotive.ObstacleDistance extends VehiclePropertyType {
1052 /*! ObstacleDistance
1053 * \brief MUST returns Distance Sensor distance (Double) in m.
1055 attribute Double ObstacleDistance readonly
1059 interface org.automotive.NightMode extends VehiclePropertyType {
1062 * \brief MUST return whether or not the system is in NightMode or not. True = Night time, False = Day time
1063 * Deprecated. Will be removed in 0.13. Use "Mode"
1065 attribute Boolean NightMode readonly
1068 * \brief MUST return whether or not the system is in NightMode or not. True = Night time, False = Day time
1070 attribute Boolean Mode readonly
1074 interface org.automotive.DrivingMode extends VehiclePropertyType {
1077 * \brief MUST return whether or not the system is in DrivingMode or not. 1 = Driving, 0 = Not Driving
1079 attribute UInt16 DrivingMode readonly
1082 * \brief must return true if vehicle is in driving mode
1084 attribute Boolean Mode readonly
1088 interface org.automotive.KeyId extends VehiclePropertyType {
1091 * \brief MUST return
1093 attribute String KeyId readonly
1096 interface org.automotive.Language extends VehiclePropertyType {
1099 * \brief MUST return
1101 attribute String Language readonly
1105 interface org.automotive.MeasurementSystem extends VehiclePropertyType {
1108 * \brief MUST return 0 = Metric, 1 = ImperialUS, 2 = ImperialUK
1110 attribute UInt16 MeasurementSystem readonly
1114 interface org.automotive.MirrorSetting extends VehiclePropertyType {
1117 * \brief MUST return
1119 attribute UInt16 Pan readonly
1120 attribute UInt16 Tilt readonly
1124 interface org.automotive.SeatPosition extends VehiclePropertyType {
1127 * \brief MUST return
1129 attribute UInt16 Recline readonly
1132 * \brief MUST return
1134 attribute UInt16 Slide readonly
1137 * \brief MUST return
1139 attribute UInt16 CushionHeight readonly
1142 * \brief MUST return
1144 attribute UInt16 Headrest readonly
1147 * \brief MUST return
1149 attribute UInt16 BackCushion readonly
1152 * \brief MUST return
1154 attribute UInt16 SideCushion readonly
1158 interface org.automotive.SteeringWheelPosition extends VehiclePropertyType {
1161 * \brief MUST return
1163 attribute UInt16 Tilt readonly
1166 * \brief MUST return
1168 attribute UInt16 Slide readonly
1172 interface org.automotive.DashboardIllumination extends VehiclePropertyType {
1175 * \brief MUST return
1177 attribute UInt16 DashboardIllumination readonly
1181 interface org.automotive.GeneratedVehicleSoundMode extends VehiclePropertyType {
1184 * \brief MUST return Sound Mode: 0 = Normal, 1 = Quiet, 2 = Sportive
1186 attribute UInt16 GeneratedVehicleSoundMode readonly
1190 /*! SteeringWheelAngle
1192 * Deprecated. Use SteeringWheel
1194 interface org.automotive.SteeringWheelAngle extends VehiclePropertyType {
1197 * \brief MUST return angle of the steering wheel. 0-359 degrees.
1199 attribute UInt16 SteeringWheelAngle readonly
1202 interface org.automotive.SteeringWheel extends VehiclePropertyType {
1205 * \brief MUST return angle of steering wheel off centerline (Unit: degrees -:degrees to the left, +:degrees to the right)
1207 attribute Int16 Angle readonly
1211 interface org.automotive.ButtoneEvent extends VehiclePropertyType {
1214 * \brief MUST return button event:
1217 * SkipButton = 1 << 1,
1218 * PrevButton = 1 << 2,
1219 * PauseButton = 1 << 3,
1220 * Preset1Button = 1 << 4,
1221 * Preset2Button = 1 << 5,
1222 * Preset3Button = 1 << 6,
1223 * Preset4Button = 1 << 7,
1224 * StopButton = 1 << 8,
1225 * NavigateUpButton = 1 << 9,
1226 * NavigateDownButton = 1 << 10,
1227 * NavigateLeftButton = 1 << 11,
1228 * NavigateRightButton = 1 << 12
1230 attribute UInt32 ButtonEvent readonly
1234 interface org.automotive.DriverId extends VehiclePropertyType {
1237 * \brief MUST return driver ID. Driver Id is an abstract and can be determined
1238 * from multiple sources including bluetooth, key, key fob, etc.
1240 attribute String DriverId readonly
1243 interface org.automotive.ThrottlePosition extends VehiclePropertyType {
1246 * \brief MUST return throttle position as a percentage (Unit: percentage, 0%: closed, 100%: fully open)
1248 attribute Uint8 Value readonly
1251 interface org.automotive.EngineCoolant extends VehiclePropertyType {
1254 * \brief MUST return engine coolant level (Unit: percentage 0%: empty, 100%: full)
1256 attribute Uint8 Level readonly
1259 * \brief MUST return engine coolant temperature (Unit: celcius)
1261 attribute Uint8 Temperature readonly