This specification defines a Vehicle Maintenance Information API which offers a simple interface to get access to vehicle maintenance data. A typical use case of the Vehicle Maintenance Information is the implementation of applications that show information such as tire pressure, oil life, fluid levels, etc...

Introduction

TBD

The groups and functions need to be clearly defined. It will help determine data elements fall within them. It is clear that certain elements could fall within multiple categories depending on how one might want to classify them. I have placed a possible definition for Maintenance below.

Use Cases for maintenance interfaces

API Description & Properties

Odometer Interface

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

readonly attribute unsigned short? distanceSinceStart
the distance traveled by vehicle since start (Unit: kilometer, Resolution: 0.1, Min: 0, Max: 6553.5).
Available Zone: None
Keep or remove? From experience, this is a useful element. I Is it covered elsewhere by trip meter or similar?
readonly attribute unsigned long distanceTotal
the total distance traveled by the vehicle (Unit: kilometer, Resolution: 0.1, Min: 0, Max: 429496729.5).
Available Zone: None

TransmissionOil Interface [OPTIONAL]

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

readonly attribute byte? wear
transmission oil wear (Unit: percentage, Resolution: 1, Min: 0, Max: 100, 0: no wear, 100: completely worn).
Available Zone: None
readonly attribute short? temperature
current temperature of the transmission oil(Unit: Celsius, Resolution: 1, Min: -40, Max: 215).
Available Zone: None

Keep or remove interface? This interface seems fairly esoteric, but could be useful. I am not certain how man vehicles will be equiped with this, or how useful it is to a driver. At very least it should be optional.

TransmissionClutch Interface [OPTIONAL]

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

readonly attribute byte? wear
transmission clutch wear (Unit: percentage, Resolution: 1, Min: 0, Max: 100, 0: no wear, 100: completely worn).
Available Zone: None

Changed transmissionClutchWearLevel to wear to be more consistent.

Keep or remove? This interface would only apply to manual transmissions, I believe. I am not certain how man vehicles will be equipped with this information. At very least it should be optional.

Brake Interface [OPTIONAL]

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

readonly attribute unsigned short? fluidLevel
brake fluid level (Unit: percentage, Resolution: 1, Min: 0, Max: 100, 0: empty, 100: full).
Available Zone: None
readonly attribute boolean? fluidLevelLow
true if brake fluid level is low, false otherwise.
Available Zone: None
readonly attribute byte? padWear
front left brake pad wear (Unit: percentage, Resolution: 1, Min: 0, Max: 100, 0: no wear, 100: completely worn).
Available Zone: Front, Rear, Left, Right
readonly attribute boolean? brakesWorn
true if brakes are worn, false otherwise.
Available Zone: None

WasherFluid Interface [OPTIONAL]

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

readonly attribute unsigned short? level
brake fluid level (Unit: percentage, Resolution: 1, Min: 0, Max: 100, 0: empty, 100: full).
Available Zone: None
readonly attribute boolean? levelLow
true if washer fluid level is low, false otherwise.
Available Zone: None

MalfunctionIndicator Interface [OPTIONAL]

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, false otherwise.
Available Zone: None

BatteryStatus Interface [OPTIONAL]

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

readonly attribute unsigned short? chargeLevel
battery charge level (Unit: percentage, Resolution: 1, Min: 0, Max: 100, 0: empty, 100: full).
Available Zone: None
readonly attribute unsigned short? voltage
battery voltage (Unit: Volts, Resolution: 0.1, Min: 0, Max: 25.2).
Available Zone: None
readonly attribute unsigned short? current
battery current (Unit: Amperes, Resolution: 1, Min: 0, Max: 255).
Available Zone: None

Tire Interface [OPTIONAL]

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

readonly attribute boolean? pressureLow
true if any tire pressure is low, false otherwise.
Added - As is common on lower end vehicles. Keep?
readonly attribute unsigned short? pressure
tire pressure (Unit: kilopascal, Resolution: 3, Min: 0, Max: 765).
readonly attribute boolean? pressureLow
true if a tire pressure is low, false otherwise.
readonly attribute short? temperature
tire temperature (Unit: Celsius, Resolution: 1, Min: -40, Max: 215).

tirePressureThresholdFrontAxle and tirePressureThresholdRearAxle were left out are covered by the individual wheel attributes. Add back?

wheelSpeedWarningIndication was removed as it seems like an an extreme edge element. I will gladly add back if desired. Add back?