This specification defines a standard for Vehicle Data which might be available in a vehicle. It is designed to be used in conjunction with the Vehicle API Specification.

Introduction

Each data type is accessed through a VehicleInterface attribute available on the navigator.vehicle object. The attribute name corresponds with the Vehicle Type. For example, the attribute "vehicle.vehicleSpeed" is the interface to the data type "VehicleSpeed".

This specification defines conformance criteria that apply to a single product: the user agent that implements the interfaces that it contains.

Implementations that use ECMAScript to implement the APIs defined in this specification MUST implement them in a manner consistent with the ECMAScript Bindings defined in the Web IDL specification [[!WEBIDL]], as this specification uses that specification and terminology.

Possibly remove some of these and add terms we do use

Terminology

The EventHandler interface represents a callback used for event handlers as defined in [[!HTML5]].

The concepts queue a task and fire a simple event are defined in [[!HTML5]].

The terms event handler and event handler event types are defined in [[!HTML5]].

Security and privacy considerations

This API MUST be only exposed to trusted content

Needs to be flushed out. Tina & Vadim discussing a proposal to address this.

VehicleCommonDataType Interface

The VehicleCommonDataType interface represents the common data type for all vehicle data types

readonly attribute DOMTimeStamp? timeStamp
MUST return timestamp when any data in this interface was received on the system.

Configuration and Identification Interfaces

Interfaces relating to vehicle configuration and identification including: make, type size, transmission configuration, identification numbers, etc...

readonly attribute VehicleInterface identification
MUST return VehicleInterface for accessing Identification
readonly attribute VehicleInterface sizeConfiguration
MUST return VehicleInterface for accessing SizeConfiguration
readonly attribute VehicleInterface fuelConfiguration
MUST return VehicleInterface for accessing FuelConfiguration
readonly attribute VehicleInterface transmissionConfiguration
MUST return VehicleInterface for accessing TransmissionConfiguration
readonly attribute VehicleInterface wheelConfiguration
MUST return VehicleInterface for accessing WheelConfiguration
readonly attribute VehicleInterface steeringWheelConfiguration
MUST return VehicleInterface for accessing SteeringWheelConfiguration

Identification Interface

The Identification interface provides identification information about a vehicle.

passengerCarMini
Passenger car 680–907 kg
passengerCarLight
Passenger car 907–1,134 kg
passengerCarCompact
Passenger car 1,134–1,360 kg
passengerCarMedium
Passenger car 1,361–1,587 kg
passengerCarHeavy
Passenger car 1,588 kg and over
sportUtilityVehicle
Sport utility vehicle
pickupTruck
Pickup truck
van
Van
readonly attribute DOMString ? VIN
the Vehicle Identification Number (ISO 3833)
readonly attribute DOMString ? WMI
the World Manufacture Identifier defined by SAE ISO 3780:2009. 3 characters.
readonly attribute VehicleTypeEnum ? vehicleType
vehicle type
readonly attribute DOMString ? brand
vehicle brand name
readonly attribute DOMString ? model
vehicle model
readonly attribute unsigned short ? year
vehicle model year
possibly use SAE/ISO to define types

[[VIN]](Vehicle Identification Number) is composed of several information including WMI, model year etc., but varies depending on standard.
In order to make it easy to use for App developers, it is recommended to provide each values as a separate attributes.

SizeConfiguration Interface

The SizeConfiguration interface provides size and shape information about a vehicle as a whole.

add weight (front and rear) and ground clearance

readonly attribute unsigned short ? width
Widest dimension of the vehicle (not including the side mirrors) (Unit: millimeters Note: Number may be an approximation, and should not be expected to be exact.)
readonly attribute unsigned short ? height
Distance from the ground to the highest point of the vehicle (not including antennas) (Unit: millimeters Note: Number may be an approximation, and should not be expected to be exact.)
readonly attribute unsigned short ? length
Distance from front bumper to rear bumper (Unit: millimeters Note: Number may be an approximation, and should not be expected to be exact.)
readonly attribute unsigned short[] ? doorsCount
list of car doors, organized in "rows" with number doors in each row.(Per Row - Min: 0, Max: 3)
NOTE TO EDITORS: DO NOT KNOW IF A LIST AS DESCRIBED CAN BE REPRESENTED IN WEBIDL MAY NEED TO REDO THIS.)For example, two door coupe would return {2}, four door sedan would return {2, 2}, four door SUV with hatchback would return {2, 2, 1}, etc.
(Justin) Exact figures maybe used for DR, etc. In other cases, some Apps may need to draw the shape of the vehicle. If an App can't know the exact data from Identification (from pre-stored data), the app can draw the vehicle as similarly as possible by using both Door Count and Vehicle Types.
readonly attribute unsigned short ? totalDoors
Total number of doors on the vehicle (all doors opening to the interior, including hatchbacks) (Min: 0, Max: 10)
(Kevron) Is it possible to use the zone concept with doors? Doing so would eliminate the need for complex arrays.

FuelConfiguration Interface

The FuelConfiguration interface provides information about the fuel configuration of a vehicle.

gasoline
Gasoline
methanol
Methanol
ethanol
Ethanol
diesel
Diesel
lpg
Liquified petroleom gas
cng
Compressed natural gas
electric
Electric
right
Right side of vehicle referenced from driver position
left
Left side of vehicle referenced from driver position
readonly attribute FuelTypeEnum[] ? fuelType
type of fuel used by vehicle. If the vehicle uses multiple fuels, fuelType returns an array of fuel types.
readonly attribute RefuelPostion ? refuelPosition
Side of the vehicle with access to the fuel door

TransmissionConfiguration Interface

The TransmissionConfiguration interface provides transmission configuration information information about a vehicle.

auto
Automatic transmission
manual
Manual transmission
readonly attribute TransmissionGearTypeEnum ? transmissionGearType
Transmission gear type

WheelConfiguration Interface

The WheelConfiguration interface provides wheel configuration information about a vehicle.

readonly attribute unsigned short ? wheelRadius
Radius of the front wheel (Unit: millimeters)
attribute Zone ? zone
MUST return Zone for requested attribute

SteeringWheelConfiguration Interface

The SteeringWheelConfiguration interface provides steering wheel configuration information information about a vehicle.

readonly attribute unsigned boolean? steeringWheelLeft
True if steering wheel is on left side of vehicle

Running Status Interfaces

Interfaces relating to the running/operation of a vehicle including: speed, temperatures, acceleration, etc...

readonly attribute VehicleInterface vehicleSpeed
MUST return VehicleInterface for accessing VehicleSpeed
readonly attribute VehicleInterface wheelSpeed
MUST return VehicleInterface for accessing WheelSpeed
readonly attribute VehicleInterface engineSpeed
MUST return VehicleInterface for accessing EngineSpeed or undefined if not supported
readonly attribute VehicleInterface powerTrainTorque
MUST return VehicleInterface for accessing PowerTrainTorque
readonly attribute VehicleInterface acceleratorPedalPosition
MUST return VehicleInterface for accessing AcceleratorPedalPosition
readonly attribute VehicleInterface throttlePosition
MUST return VehicleInterface for accessing ThrottlePosition
readonly attribute VehicleInterface tripMeterA
MUST return VehicleInterface for accessing TripMeter "A"
readonly attribute VehicleInterface tripMeterB
MUST return VehicleInterface for accessing TripMeter "B"
readonly attribute VehicleInterface diagnostic
MUST return VehicleInterface for accessing Diagnostic
readonly attribute VehicleInterface transmission
MUST return VehicleInterface for accessing Transmission
readonly attribute VehicleInterface cruiseControlStatus
MUST return VehicleInterface for accessing CruiseControlStatus
readonly attribute VehicleInterface lightStatus
MUST return VehicleInterface for accessing LightStatus
readonly attribute VehicleInterface interiorLightStatus
MUST return VehicleInterface for accessing InteriorLightStatus
readonly attribute VehicleInterface chime
MUST return VehicleInterface for accessing Chime
readonly attribute VehicleInterface fuel
MUST return VehicleInterface for accessing Fuel
readonly attribute VehicleInterface engineOil
MUST return VehicleInterface for accessing EngineOil
readonly attribute VehicleInterface acceleration
MUST return VehicleInterface for accessing Acceleration
readonly attribute VehicleInterface engineCoolant
MUST return VehicleInterface for accessing EngineCoolant
readonly attribute VehicleInterface steeringWheel
MUST return VehicleInterface for accessing SteeringWheel
readonly attribute VehicleInterface ignitionTime
MUST return VehicleInterface for accessing IgnitionTime
readonly attribute VehicleInterface yawRate
MUST return VehicleInterface for accessing YawRate
readonly attribute VehicleInterface brakeOperation
MUST return VehicleInterface for accessing BrakeOperation
readonly attribute VehicleInterface wheelTick
MUST return VehicleInterface for accessing WheelTick
readonly attribute VehicleInterface buttonEvent
MUST return VehicleInterface for accessing ButtonEvent
readonly attribute VehicleInterface drivingMode
MUST return VehicleInterface for accessing DrivingMode
readonly attribute VehicleInterface nightMode
MUST return VehicleInterface for accessing NightMode

VehicleSpeed Interface

The VehicleSpeed interface represents vehicle speed information

readonly attribute unsigned short speed
Vehicle speed (Unit: meters per hour)

WheelSpeed Interface

The WheelSpeed interface represents wheel speed information.

readonly attribute unsigned short speed
Wheel speed (Unit: meters per hour)
attribute Zone ? zone
MUST return Zone for requested attribute

EngineSpeed Interface

The EngineSpeed interface represents engine speed information.

readonly attribute unsigned long speed
Engine speed (Unit: rotations per minute)

VehiclePowerModeType Interface

The VehiclePowerModeType interface represents position of the ignition switch.

off
Off - No power
accessory1
Accessory power 1
accessory2
Accessory power 2
running
Running power
readonly attribute VehiclePowerMode value
position of the ignition switch

PowerTrainTorque Interface

The PowerTrainTorque interface represents powertrain torque.

readonly attribute short value
Powertrain torque (Unit: newton meters)

AcceleratorPedalPosition Interface

The AcceleratorPedalPosition interface represents the accelerator pedal position.

readonly attribute unsigned short value
Accelerator pedal position as a percentage (Unit: percentage, 0%: released pedal, 100%: fully depressed)

ThrottlePosition Interface

The ThrottlePosition represents position of the throttle.

readonly attribute unsigned short value
Throttle position as a percentage (Unit: percentage, 0%: closed, 100%: fully open)

TripMeter Interface

The TripMeter interface represents trip meter.

This needs help. we need to support N trip meters
readonly attribute unsigned long distance
Distance travelled based on trip meter (Unit: meters)
readonly attribute unsigned short ? averageSpeed
Average speed based on trip meter (Unit: kilometers per hour)
readonly attribute unsigned short ? fuelConsumption
Fuel consumed based on trip meter (Unit: milliliters per 100 kilometers)

Diagnostic Interface

The Diagnostic interface represents Diagnostic interface to malfunction indicator light information.

readonly attribute unsigned long accumulatedEngineRuntime
engine runtime (Unit: seconds)
readonly attribute unsigned long distanceWithMILOn
distance travelled with the malfunction indicator light on (Unit: meters)
readonly attribute unsigned long distanceSinceCodeCleared.
Distance travelled since the codes were last cleared (Unit: meters)
readonly attribute unsigned long timeRunMILOn
Time run with the malfunction indicator light on (Unit: seconds)
readonly attribute unsigned long timeTroubleCodeClear
Time since the trouble codes were last cleared (Unit: seconds)

Transmission Interface

The Transmission interface represents the current transmission gear and mode.

park
Transmission is in park
reverse
Transmission is in reverse
neutral
Transmission is in neutral
low
Transmission is in low
drive
Transmission is in drive
overdrive
Transmission is in overdrive
readonly attribute octet ? gear
MUST return transmission gear position. Range 0 - 10
readonly attribute TransmissionMode ? mode
MUST return transmission Mode (see TransmissionMode)

CruiseControlStatus Interface

The CruiseControlStatus interface represents cruise control settings.

readonly attribute boolean status
MUST return whether or not the Cruise Control system is on (true) or off (false)
readonly attribute unsigned short speed
MUST return target Cruise Control speed in kilometers per hour (Unit: kilometers per hour)

LightStatus Interface

The LightStatus interface represents exterior light statuses.

attribute boolean head
MUST return headlight status: on (true), off (false)
attribute boolean rightTurn
MUST return right turn signal status: on (true), off (false)
attribute boolean leftTurn
MUST return left turn signal status: on (true), off (false)
attribute boolean brake
MUST return Brake light status: on (true), off (false)
attribute boolean? fog
MUST return Fog light status: on (true), off (false)
attribute boolean hazard
MUST return Hazard light status: on (true), off (false)
attribute boolean parking
MUST return Parking light status: on (true), off (false)
attribute boolean highBeam
MUST return HighBeam light status: on (true), off (false)
attribute boolean? automaticHeadlights
MUST return whether automatic head lights status: activated (true) or not (false)
attribute boolean? dynamicHighBeam
MUST return whether dynamic high beam status: activated (true) or not (false)
attribute Zone ? zone
MUST return Zone for requested attribute

InteriorLightStatus Interface

The InteriorLightStatus interface represents interior light status.

attribute boolean status
MUST return passenger interior light status for the given zone: on (true), off (false)
attribute Zone ? zone
MUST return Zone for requested attribute

Horn Interface

The Horn interface represents horn status.

attribute boolean status
MUST return Horn status: on (true) or off (false)

Chime Interface

The Chime interface represents chime status.

readonly attribute boolean status
MUST return Chime status when a door is open: on (true) or off (false)

Fuel Interface

The Fuel interface represents vehicle fuel status.

readonly attribute unsigned short level
MUST return fuel level as a percentage of fullness
readonly attribute unsigned long range
MUST return estimated fuel range (Unit: meters)
readonly attribute unsigned long instantConsumption
MUST return instant fuel consumption in per distance travelled (Unit: milliliters per 100 kilometers)
readonly attribute unsigned long averageConsumption
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'
readonly attribute unsigned long fuelConsumedSinceRestart
MUST return fuel consumed since engine start; (Unit: milliliters per 100 kilometers) resets to 0 each restart
readonly attribute unsigned long vehicleTimeSinceRestart
MUST return time elapsed since vehicle restart (Unit: seconds)

EngineOil Interface

The EngineOil interface represents engine oil status.

readonly attribute unsigned short level
MUST return engine oil level (Unit: percentage, 0%: empty, 100%: full
readonly attribute unsigned short lifeRemaining
MUST return remaining engine oil life (Unit: percentage, 0%:no life remaining, 100%: full life remaining
readonly attribute long temperature
MUST return Engine Oil Temperature (Unit: celcius)
readonly attribute unsigned short pressure
MUST return Engine Oil Pressure (Unit: kilopascals)
readonly attribute boolean change
MUST return engine oil change indicator status: change oil (true) or no change (false)

Acceleration Interface

The Acceleration interface represents vehicle acceleration.

readonly attribute unsigned long x
MUST return acceleration on the "X" axis (Unit: centimeters per second squared)
readonly attribute unsigned long y
MUST return acceleration on the "Y" axis (Unit: centimeters per second squared)
readonly attribute unsigned long z
MUST return acceleration on the "Z" axis (Unit: centimeters per second squared)

EngineCoolant Interface

The EngineCoolant represents values related to engine coolant.

readonly attribute unsigned short level
MUST return engine coolant level (Unit: percentage 0%: empty, 100%: full)
readonly attribute unsigned short temperature
MUST return engine coolant temperature (Unit: celcius)

SteeringWheel Interface

The SteeringWheel represents steering wheel data.

readonly attribute short angle
MUST return angle of steering wheel off centerline (Unit: degrees -:degrees to the left, +:degrees to the right)

WheelTick Interface

The WheelTick number of ticks per second.

readonly attribute unsigned long value
MUST return number of ticks per second (Unit: ticks per second)
attribute Zone ? zone
MUST return Zone for requested attribute

IgnitionTime Interface

The IgnitionTime represents status of ignition.

readonly attribute DOMTimeStamp ignitionOnTime
Time at ignition on
readonly attribute DOMTimeStamp ignitionOffTime
Time at ignition off
We need to define what DOMTimeStamp means.

YawRate Interface

The YawRate represents vehicle yaw rate.

readonly attribute short value
yaw rate of vehicle. (Unit: degrees per second)

BrakeOperation Interface

The BrakeOperation represents vehicle brake operation.

readonly attribute boolean brakePedalDepressed
MUST return whether brake pedal is depressed or not. true: brake pedal is depressed, false: brake pedal is not depressed

ButtonEvent Interface

The ButtonEvent represents button press events from the steering wheel or other source

home
back
search
call
end_call
media_play
media_next
media_previous
media_pause
voice_recognize
enter
left
right
up
down
press
long_press
release
readonly attribute VehicleButton[] button
MUST return the button events tha occured. This supports multiple simultanious button events.
readonly attribute PressType state
MUST return the type of event

DrivingMode Interface

The DrivingMode interface provides information about whether or not the vehicle is driving. DrivingMode is an abstract data type that may combine several other data types such as vehicle speed, transmission gear, etc. Typical usage would be to disable certain functions in the application if the vehicle is not safe to operate those functions to avoid driver distraction.

readonly attribute boolean mode
MUST return true if vehicle is in driving mode

NightMode Interface

The NightMode interface provides information about whether or not it is night time. NightMode is an abstract data type that may combine several other data types such as exterior brightness, time of day, sunrise/sunset, etc to determine whether or not it is night time. Typical usage is to change the UI theme to a darker theme during the night.

readonly attribute boolean mode
MUST return true if it is night time

Maintenance Interfaces

Interfaces relating to vehicle maintenance, the act of inspecting or testing the condition of vehicle subsystems (e.g., engine) and servicing or replacing parts and fluids.

readonly attribute VehicleInterface odometer
MUST return VehicleInterface for accessing Odometer or undefined if not supported
readonly attribute VehicleInterface transmissionOil
MUST return VehicleInterface for accessing TransmissionOil
readonly attribute VehicleInterface transmissionClutch
MUST return VehicleInterface for accessing TransmissionClutch
readonly attribute VehicleInterface brakeMaintenance
MUST return VehicleInterface for accessing BrakeMaintenance
readonly attribute VehicleInterface washerFluid
MUST return VehicleInterface for accessing WasherFluid
readonly attribute VehicleInterface malfunctionIndicator
MUST return VehicleInterface for accessing MalfunctionIndicator
readonly attribute VehicleInterface batteryStatus
MUST return VehicleInterface for accessing BatteryStatus
readonly attribute VehicleInterface tire
MUST return VehicleInterface for accessing Tire

Odometer Interface

The Odometer interface provides information about the distance that the vehicle has traveled.

readonly attribute unsigned long ? distanceSinceStart
the distance traveled by vehicle since start (Unit: meters).
readonly attribute unsigned long distanceTotal
the total distance traveled by the vehicle (Unit: meters).

TransmissionOil Interface

The TransmissionOil interface provides information about the state of a vehicles transmission oil.

readonly attribute byte? wear
transmission oil wear (Unit: percentage, 0: no wear, 100: completely worn).
readonly attribute short ? temperature
current temperature of the transmission oil(Unit: celsius).

TransmissionClutch Interface

The TransmissionClutch interface provides information about the state of a vehicles transmission clutch.

readonly attribute byte wear
transmission clutch wear (Unit: percentage, 0%: no wear, 100%: completely worn).

BrakeMaintenance Interface

The BrakeMaintenance interface provides information about the maintenance state of a vehicles brakes.

readonly attribute unsigned short ? fluidLevel
brake fluid level (Unit: percentage, 0%: empty, 100%: full).
readonly attribute boolean? fluidLevelLow
true if brake fluid level: low (true), not low (false)
readonly attribute byte? padWear
front left brake pad wear (Unit: percentage, 0%: no wear, 100%: completely worn).
readonly attribute boolean? brakesWorn
true if brakes are worn: worn (true), not worn (false)
attribute Zone ? zone
MUST return Zone for requested attribute

WasherFluid Interface

The WasherFluid interface provides information about the state of a vehicles washer fluid.

readonly attribute unsigned short ? level
washer fluid level (Unit: percentage, 0%: empty, 100%: full).
readonly attribute boolean? levelLow
true if washer fluid level is low: low (true), not low: (false)

MalfunctionIndicator Interface

The MalfunctionIndicator interface provides information about the state of a vehicles Malfunction Indicator lamp.

readonly attribute boolean on
true if malfunction indicator lamp is on: lamp on (true), lamp not on (false)

BatteryStatus Interface

The BatteryStatus interface provides information about the state of a vehicles battery.

readonly attribute unsigned short ? chargeLevel
battery charge level (Unit: percentage, 0%: empty, 100%: full).
readonly attribute unsigned short ? voltage
battery voltage (Unit: volts).
readonly attribute unsigned short ? current
battery current (Unit: amperes).
attribute Zone ? zone
MUST return Zone for requested attribute

Tire Interface

The Tire interface provides information about the state of a vehicles tires.

readonly attribute boolean? pressureLow
true if any tire pressure is low: pressure low (true), pressure not low (false)
readonly attribute unsigned short ? pressure
tire pressure (Unit: kilopascal).
readonly attribute short? temperature
tire temperature (Unit: celsius).
attribute Zone ? zone
MUST return Zone for requested attribute

Personalization Interfaces

Interfaces relating personalization the settings of vehicle such as seat and mirror position.

readonly attribute VehicleInterface driverIdentification
MUST return VehicleInterface for accessing DriverIdentification
readonly attribute VehicleInterface? languageConfiguration
MUST return VehicleInterface for accessing LanguageConfiguration
readonly attribute VehicleInterface unitsOfMeasure
MUST return VehicleInterface for accessing UnitsOfMeasure
readonly attribute VehicleInterface mirror
MUST return VehicleInterface for accessing Mirror
readonly attribute VehicleInterface steeringWheel
MUST return VehicleInterface for accessing SteeringWheel
readonly attribute VehicleInterface driveMode
MUST return VehicleInterface for accessing DriveMode
readonly attribute VehicleInterface seatAdjustment
MUST return VehicleInterface for accessing SeatAdjustment
readonly attribute VehicleInterface dashboardIllumination
MUST return VehicleInterface for accessing DashboardIllumination
readonly attribute VehicleInterface vehicleSound
MUST return VehicleInterface for accessing VehicleSound

LanguageConfiguration Interface

The LanguageConfiguration interface provides language information about a vehicle.

attribute unsigned float ? language
Language identifier based on two-letter codes as specified in ISO 639-1
Should make enum out of ISO 639-1?
(Justin) It seems to be provided at system level. It looks not vehicle-specific attribute

UnitsOfMeasure Interface

The UnitsOfMeasure interface provides information about the measurement system and units of measure of a vehicle.

attribute boolean ? isMKSSystem
measurement system currently being used by vehicle. 'true' means the current measurement system is MKS-km(liter). 'false' means it is US customary units-mile(gallon).
attribute DOMString? unitsFuelVolume
Fuel unit of measurement. The value is one of both "litter" and "gallon".
attribute DOMString ? unitsDistance
Distance unit of measurement. The value is one of both "km" and "mile".
attribute DOMString ? unitsSpeed
Speed unit of measurement. The value is one of both "km/h" and "mph".
attribute DOMString ? unitsFuelConsumption
Fuel consumption unit of measurement. The value is one of following values: "l/100", "mpg", "km/l".

Mirror Interface

The Mirror interface provides or sets information about mirrors in vehicle.

attribute unsigned short ? mirrorTilt
Mirror tilt position in percentage distance travelled, from downward-facing to upward-facing position (Unit: percentage, 0%:center position, -100%:fully downward, 100%:full upward)
attribute unsigned short ? mirrorPan
Mirror pan position in percentage distance travelled, from left to right position (Unit: percentage, %0:center position, -100%:fully left, 100%:fully right)
attribute Zone ? zone
MUST return Zone for requested attribute

SeatAdjustment Interface

The SeatAdjustment interface provides or sets information about seats in vehicle.

attribute unsigned short ? reclineSeatBack
Seat back recline position as percent to completely reclined (Unit: percentage, 0%:upright at a 90 degree angle, 100%:fully reclined, -100%:fully forward)
attribute unsigned short ? seatSlide
Seat slide position as percentage of distance travelled away from forwardmost position (Unit: percentage, 0%:farthest forward, 100%:farthest back)
attribute unsigned short ? seatCushionHeight
Seat cushion height position as a percentage of upward distance travelled (Unit: percentage, 0%:lowest. 100%:highest)
attribute unsigned short ? seatHeadrest
Headrest position as a percentage of upward distance travelled (Unit: percentage, 0%:lowest, 100%:highest)
attribute unsigned short ? seatBackCushion
Back cushion position as a percentage of lumbar curvature (Unit: percentage, 0%:flat, 100%: maximum curvature)
attribute unsigned short ? seatSideCushion
Sides of back cushion position as a percentage of curvature (Unit: percentage, 0%:flat, 100%:maximum curvature)
attribute Zone ? zone
MUST return Zone for requested attribute

SteeringWheelConfiguration Interface

The SteeringWheel interface provides or sets information about steering wheel in vehicle.

attribute unsigned short ? steeringWheelTelescopingPosition
Steering wheel position as percentage of extension from the dash (Unit: percentage, 0%:closest to dash, 100%:farthest from dash)
attribute unsigned short ? steeringWheelPositionTilt
Steering wheel position as percentage of tilt (Unit: percentage, 0%:tilted lowest downward-facing position, 100%:highest upward-facing position)

DriveMode Interface

The DriveMode interface provides or sets information about a vehicles drive mode.

comfort
Comfort mode
auto
Automatically set mode
sport
Sport mode
eco
Ecological/fuel efficient mode
manual
Manual mode
winter
Winter/slippery mode
attribute DriveModeEnum ? driveMode
Vehicle driving mode

DashboardIllumination Interface

The DashboardIllumination interface provides or sets information about dashboard illumination in vehicle.

attribute DOMString ? dashboardIllumination
Illumination of dashboard as a percentage (Unit: percentage, 0%:none, 100%:maximum illumination)

VehicleSound Interface

The VehicleSound interface provides or sets information about vehicle sound.

attribute boolean activeNoiseControlMode
Active noise control status: not-activated (false), activated (true)
attribute DOMString ? engineSoundEnhancementMode
Engine sound enhancement mode where a null string means not-activated, and any other value represents a manufacture specific setting

DrivingSafety Interfaces

Interfaces related to driving safety such as anti-lock braking and airbag status.

readonly attribute VehicleInterface antilockBrakingSystem
MUST return VehicleInterface for accessing AntilockBrakingSystem
readonly attribute VehicleInterface tractionControlSystem
MUST return VehicleInterface for accessing TractionControlSystem
readonly attribute VehicleInterface electronicStabilityControl
MUST return VehicleInterface for accessing ElectronicStabilityControl
readonly attribute VehicleInterface topSpeedLimit
MUST return VehicleInterface for accessing TopSpeedLimit
readonly attribute VehicleInterface airbagStatus
MUST return VehicleInterface for accessing AirbagStatus
readonly attribute VehicleInterface door
MUST return VehicleInterface for accessing Door
readonly attribute VehicleInterface childSafetyLock
MUST return VehicleInterface for accessing ChildSafetyLock
readonly attribute VehicleInterface seat
MUST return VehicleInterface for accessing Seat

AntilockBrakingSystem Interface

The AntilockBrakingSystem interface provides status of ABS(Antilock Braking System) status and setting.

readonly attribute boolean enabled
MUST return whether or not the ABS Setting is enabled: enabled (true) or disabled (false)
readonly attribute boolean engaged
MUST return whether or not the ABS is engaged: engaged (true) or idle (false)

TractionControlSystem Interface

The TractionControlSystem interface provides status of TCS(Traction Control System) status and setting.

readonly attribute boolean enabled
MUST return whether or not the TCS Setting is enabled: enabled (true) or disabled (false)
readonly attribute boolean engaged
MUST return whether or not the TCS is engaged: engaged (true) or idle (false)

ElectronicStabilityControl Interface

The ElectronicStabilityControl interface provides status of ESC(Electronic Stability Control) status and setting.

readonly attribute boolean enabled
MUST return whether or not the ESC Setting is enabled: enabled (true) or disabled (false)
readonly attribute boolean engaged
MUST return whether or not the ESC is engaged: engaged (true) or idle (false)

TopSpeedLimit Interface

The TopSpeedLimit interface provides the current setting of top speed limit of the vehicle.

readonly attribute unsigned short speed
MUST return vehicle top speed limit (Unit: kilometers per hour)

AirbagStatus Interface

The AirbagStatus interface provides the current status of airbags in each zones of the vehicle.

readonly attribute boolean activated
MUST return whether or not the airbag is activaged: activated (true) or deactivated (false)
readonly attribute boolean deployed
MUST return whether the airbag is deployed: deployed (true) or not (false)
attribute Zone ? zone
MUST return Zone for requested attribute

Door Interface

The Door interface provides the current status of doors in each zones of the vehicle.

open
Door is opened
ajar
Door is ajar
closed
Door is closed
readonly attribute DoorOpenStatus status
MUST return the status of door's open status
attribute boolean lock
MUST return whether or not the door is locked: locked (true) or unlocked (false)
attribute Zone ? zone
MUST return Zone for requested attribute

ChildSafetyLock Interface

The ChildSafetyLock interface provides the current setting of Child Safety Lock.

attribute boolean lock
MUST return whether or not the Child Safety Lock is locked: locked (true) or unlocked (false)
attribute Zone ? zone
MUST return Zone for requested attribute

Seat Interface

The Seat interface provides the current occupant information and seatbelt status of a seat in different zones of the vehicle.

adult
Occupant is an adult
child
Occupant is a child
vacant
Seat is vacant
pin
Four digit pin number entered by user
keyfob
Identification by key fob
Bluetooth
Identification by Bluetooth device
NFC
Identification by NFC device
fingerprint
Identification by fingerprint
camera
Identification by camera
voice
Identification by voice
readonly attribute OccupantStatus occupant
MUST return the status of seat occupant
readonly attribute boolean seatbelt
MUST return whether or not the seat belt is fastened: fastened (true) or unfastened (false)
readonly attribute DOMString ? occupantName
Must return occupant identifier
readonly attribute IdentificationType identificationType
MUST return identification type
attribute Zone ? zone
MUST return Zone for requested attribute

Climate Interfaces

Interfaces related to vehicle climate (interior and exterior) such as temperature and rain.

readonly attribute VehicleInterface temperature
MUST return VehicleInterface for accessing Temperature
readonly attribute VehicleInterface rainSensor
MUST return VehicleInterface for accessing RainSensor
readonly attribute VehicleInterface wiperStatus
MUST return VehicleInterface for accessing WiperStatus
readonly attribute VehicleInterface wiperSetting
MUST return VehicleInterface for accessing WiperSetting
readonly attribute VehicleInterface defrost
MUST return VehicleInterface for accessing Defrost
readonly attribute VehicleInterface sunroof
MUST return VehicleInterface for accessing Sunroof
readonly attribute VehicleInterface convertibleRoof
MUST return VehicleInterface for accessing ConvertibleRoof
readonly attribute VehicleInterface sideWindow
MUST return VehicleInterface for accessing SideWindow
readonly attribute VehicleInterface climateControl
MUST return VehicleInterface for accessing ClimateControl or undefined if not supported
readonly attribute VehicleInterface atmosphericPressure
MUST return VehicleInterface for accessing AtmosphericPressure

Temperature Interface

The Temperature interface provides information about the current temperature of outside or inside vehicle.

readonly attribute float interiorTemperature
the current temperature of the air inside of the vehicle (Unit: celsius)
readonly attribute float exteriorTemperature
the current temperature of the air around the vehicle (Unit: celsius)

There's relevant exploratory work in W3C.
https://dvcs.w3.org/hg/dap/raw-file/default/temperature/Overview.html
However, interior or exterior temperature MUST be distinguished in vehicles.

RainSensor Interface

The RainSensor interface provides information about ambient light levels.

readonly attribute unsigned byte rain
the amount of rain detected by the rain sensor. level of rain intensity (0: No Rain, 10:Heaviest Rain)
attribute Zone ? zone
MUST return Zone for requested attribute

WiperStatus Interface

The WiperStatus interface represents the status of wiper operation.

readonly attribute unsigned byte wiperSpeed
current speed interval of wiping windshield (0: off, 1: Slowest, 10: Fastest )
attribute Zone ? zone
MUST return Zone for requested attribute

WiperSetting Interface

The WiperSetting interface represents the current setting of the wiper controller.

off
Wiper is not in operation
once
Wipe single. It's a transient state and goes to the off mode
slowest
Wiper is on mode with the slowest speed
slow
Wiper is on mode with slow speed
middle
Wiper is on mode with middle speed
fast
Wiper is on mode with fast speed
fastest
Wiper is on mode with the fastest speed
auto
Wiper is on the automatic mode which controls wiping speed with accordance with the amount of rain
attribute WiperControl wiperControl
current setting of the front wiper controller. It can be used to send user's request for changing setting.
attribute Zone ? zone
MUST return Zone for requested attribute

Defrost Interface

The Defrost interface represents the status of wiper operation.

attribute boolean? defrostWindow
current status of the defrost switch for window. It can be used to send user's request for changing setting.
attribute boolean? defrostMirrors
current status of the defrost switch for mirrors. It can be used to send user's request for changing setting.
attribute Zone ? zone
MUST return Zone for requested attribute

Sunroof Interface

The Sunroof interface represents the current status of Sunroof.

attribute unsigned byte openness
current status of Sunroof as a percentage of openness (0%: closed, 100%: fully opened)
attribute unsigned byte tilt
current status of Sunroof as a percentage of tilted (0%: closed, 100%: maximum tilted)
attribute Zone ? zone
MUST return Zone for requested attribute

Both can be used to send user's request for changing setting.

ConvertibleRoof Interface

The ConvertibleRoof interface represents the current status of Convertible Roof.

closed
The convertible roof is closed
closing
The convertible roof is closing
opening
The convertible roof is opening
opened
The convertible roof is opened
attribute ConvertibleRoofStatus status
current status of Convertible Roof.

It can be used to send user's request for changing setting. "closed" is used to close and "opened" is used to open.

SideWindow Interface

The SideWindow interface represents the current status of openness of side windows.

attribute unsigned boolean? lock
MUST return whether or not the window is locked: locked (true) or unlocked (false)
attribute unsigned byte? openness
current status of the side window as a percentage of openness. (0%:Closed, 100%:Fully Opened)
attribute Zone ? zone
MUST return Zone for requested attribute

ClimateControl Interface

The ClimateControl interface represents the current setting of the climate control equipments such as heater and air conditioner.

frontpanel
Air flow is directed to the instrument panel outlets
floorduct
Air flow is directed to the floor outlets
bilevel
Air flow is directed to the instrument panel outlets and the floor outlets
defrostfloor
Air flow is directed to the floor outlets and the windshield
attribute AirflowDirection airflowDirection
current status of the direction of the air flow through the ventilation system
attribute unsigned byte fanSpeedLevel
current status of the fan speed of the air flowing (0: off, 1: weakest, 10: strongest )
attribute byte? targetTemperature
current setting of the desired temperature (Unit: celsius)
attribute boolean airConditioning
current status of the air conditioning system: on (true) or off (false)
attribute boolean heater
current status of the heating system: on (true) or off (false)
attribute unsigned byte? seatHeater
current status of the seat warmer ( 0: off, 1: least warm, 10: warmest )
attribute unsigned byte? seatCooler
current status of the seat ventilation ( 0: off, 1: least warm, 10: warmest )
attribute boolean airRecirculation
current setting of air recirculation: on (true) or pulling in outside air (false).
attribute unsigned byte? steeringWheelHeater
current status of steering wheel heater ( 0: off, 1: least warm, 10: warmest ).
attribute Zone ? zone
MUST return Zone for requested attribute

ClimateControl can be used to send user's request for changing setting.

AtmosphericPressure Interface

The AtmosphericPressure interface provides information about the current atmospheric pressure outside of the vehicle.

readonly attribute unsigned short pressure
the current atmospherics pressure outside of the vehicle (Unit: hectopascal)

Vision and Parking Interfaces

Interfaces relating to vision and parking such as lane departure and parking brake.

Those three categories need to be more clearly defined. It will help determine data elements fall within them. Vision system and parking seems not very clear in regards with Driving safety where some functions are also related to parking and vision. It is clear that certain elements could fall within multiple categories depending on how one might want to classify them. Vision is much more than only lane departure warning. Electric vehicle category should be renamed in order to cover alternate power trains (hybrid, range extenders,etc)

readonly attribute VehicleInterface laneDepartureStatus
MUST return VehicleInterface for accessing LaneDepartureStatus or undefined if not supported
readonly attribute VehicleInterface alarm
MUST return VehicleInterface for accessing Alarm
readonly attribute VehicleInterface parkingBrake
MUST return VehicleInterface for accessing ParkingBrake
readonly attribute VehicleInterface parkingLights
MUST return VehicleInterface for accessing ParkingLights

LaneDepartureDetection Interface

The LaneDepartureDetection interface represents the current status of the lane departure warning function.

off
The function is not running
pause
The function has been paused (running, but inactive)
running
The function is in its operational mode
readonly attribute LaneDepartureStatus status
current status of Lane departure warning function.

Alarm Interface

The Alarm interface represents the current status of the in vehicle Alarm system.

disarmed
The alarm is not armed
preArmed
The function is temporary not active
armed
The function is active
alarmed
The alarm is screaming
attribute AlarmStatus status
current status of In vehicle Alarm System.

ParkingBrake Interface

The ParkingBrake interface represents the current status of the parking brake.

inactive
Parking brake is not engaged (driving position)
active
Parking brake is engaged (parking position)
error
There is a problem with the parking brake system
readonly attribute ParkingBrakeStatus status
current status of parking brake.

ParkingLights Interface

The ParkingLights interface represents the current status of the parking Lights.

readonly attribute boolean status
MUST return parking light status: on (true) or off (false)
attribute boolean setting
MUST return whether or not the Parking Lights is enabled: enabled (true) or disabled (false).
It can be used to send user's request for changing setting.

Use-Cases

Informative (Non-Normative)

Use Cases for Vehicle Configuration & Identification

  • Driver and technician are able to see vehicle configuration and identification information such VIN and vehicle size.

Use Cases for RunningStatus

  • Driver able to see driving performance information such as acceleration, speed, gears used, etc...
  • Driver able to see fuel economy, consumption, level, range, etc...

Use Cases for Maintenance

  • Driver is able to see current state of key maintenance indicators (fluid states, battery charge, tire pressure, etc...) giving an snapshot of vehicle health while in and out of vehicle.
  • Driver receives alert notifications in and out of car letting him know of maintenance issues that need to be addressed.
  • If desired driver may share maintenance information with repair facility.

Use Cases for Personalization

  • Driver and technician are able to see vehicle personalization information such seat and mirror position.

Use Cases for DrivingSafety

    Driver able to see safety setting and warnings at a glance.

Use Cases for Climate

  • IVI system shows the status of various climate control equipments as GUI and lets a user control it via touch screen.
  • A user uses his smart devices to remotely check whether side windows of his parked car are closed or not, and to send a request to the car for closing it if opened.
  • A user uses his smart devices to start his car remotely, and turns heaters on to warm up the car inside before getting in the car.
  • If users agree to provide vehicle information to the weather station, many cars can be used to get weather information such as amounts of rain and ambient temperatures.

Use Cases for Vision interfaces

  • To warn when the vehicle goes on another lane (Lane departure warning function)
  • To warn in case of an danger (vehicle, pedestrian, animals, stop sign, red light, ...)
  • To record the scene before and after an accident (for insurance or testimony)
  • To improve vision in the dark

Use Cases for Parking interfaces

  • To be informed in case of intrusion in or around the vehicle.
  • To be informed of the parking brake status.

Use Cases for Electric Vehicle interfaces

  • To see current state of the battery level, remaining time before full charging, ...
  • To check if the charging is plugged or unplugged.