Meego Wiki
Views

In-vehicle/Roadmap/API

From MeeGo wiki
< In-vehicle | Roadmap(Difference between revisions)
Jump to: navigation, search
(API Functional Groups and Functions)
(Car-Systems)
 
(27 intermediate revisions not shown)
Line 12: Line 12:
== API Requirements ==
== API Requirements ==
 +
=== Functionality ===
=== Functionality ===
-
=== Security ===
 
-
 
+
The idea of the API is to treat vehicle data that can be retrieved and vehicle functions controlled through these APIs in an abstract manner. The implementation details of the API functionality e.g. where to get a particular piece of data from such as the fuel level or to execute a particular function e.g. closing a window are treated by underlying software layer and are transparent to the API. The developer using the API should not need to have any prior knowledge about the vehicle itself for instance what make and model it is.
-
== API Functional Groups and Functions ==
+
-
 
+
-
This section list proposed APIs and places them into functional groups. The idea is to treat vehicle data and vehicle functions that can be retrieved or controlled through these APIs in an abstract manner. The implementation details of the API functionality e.g. where to get a particular piece of data from such as the fuel level or to execute a particular function e.g. closing a window are treated by underlying software layer and are transparent to the API. The developer using the API should not need to have any prior knowledge about the vehicle itself for instance what make and model it is.
+
Since not all vehicles will implement all of the APIs it is necessary that software using the API has methods to determine during runtime what APIs are actually implemented. The most straight-forward way is that an API returns a specific value when it is not implemented e.g. API_NOT_DEFINED. A calling software module would simply invoke the API and react accordingly if the API returns API_NOT_DEFINED. However, that may not be the most efficient way since dependent on what API functionality is available software modules may want to configure themselves differently. The most obvious case would be an application that changes its appearance in the UX according to the available functionality. Hence, it is desirable that the API implements reflection that allows querying its functionality during runtime. That can be achieved via API registration or other mechanisms.
Since not all vehicles will implement all of the APIs it is necessary that software using the API has methods to determine during runtime what APIs are actually implemented. The most straight-forward way is that an API returns a specific value when it is not implemented e.g. API_NOT_DEFINED. A calling software module would simply invoke the API and react accordingly if the API returns API_NOT_DEFINED. However, that may not be the most efficient way since dependent on what API functionality is available software modules may want to configure themselves differently. The most obvious case would be an application that changes its appearance in the UX according to the available functionality. Hence, it is desirable that the API implements reflection that allows querying its functionality during runtime. That can be achieved via API registration or other mechanisms.
Line 26: Line 23:
* Return values must be of the specified type and only return values within the specified range.
* Return values must be of the specified type and only return values within the specified range.
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.
 +
 +
=== Security ===
 +
 +
Some APIs will require access control to restrict execution to calling software modules with the correct privileges. MeeGo IVI should rely on the security mechanisms provided by MeeGo and extend them where necessary.
 +
 +
== API Functional Groups and Functions ==
 +
 +
This section list proposed APIs and places them into functional groups.
 +
 +
=== Car-Systems ===
 +
 +
[[Category:IVI]]
 +
 +
{|  x:str border=1 cellpadding=0 cellspacing=0
 +
|  rowspan=2 | Group
 +
|  rowspan=2 | Function
 +
|  colspan=2 | Parameter
 +
|  rowspan=2 | Operation
 +
|-
 +
| Type
 +
| Contents
 +
|-
 +
|  rowspan=5 | Application<br>
 +
Interoperability
 +
| Supported Features
 +
| Integer
 +
| Bit setting per each APIs
 +
| Get
 +
|-
 +
| Car Manufacturer
 +
| String
 +
|  
 +
| Get
 +
|-
 +
| WMI
 +
| String
 +
| World Manufacturer Identifier as defined by SAE. 3 characters. 
 +
| Get
 +
|-
 +
| Car Model Name
 +
| String
 +
|  
 +
| Get
 +
|-
 +
| VIN
 +
| String
 +
| Vehicle Identification Number as defined by ISO 3779. 17 characters. 
 +
| Get
 +
|-
 +
|  rowspan=5 | Car Information
 +
| Car Type
 +
| Enum
 +
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck
 +
| Get
 +
|-
 +
| Door Type
 +
| Compound
 +
| # of doors in first row, second row, third row
 +
| Get
 +
|-
 +
| Engine Type
 +
| Enum
 +
| Gasoline, Diesel, Hybrid, Electric
 +
| Get
 +
|-
 +
| Transmission Gear Type
 +
| Enum
 +
| Auto/Manual
 +
| Get
 +
|-
 +
| Wheel Information
 +
| Compound
 +
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)
 +
| Get
 +
|-
 +
|  rowspan=19 | Running Status
 +
| Vehicle Power Mode
 +
| Enum
 +
| Off / Acc / Run / Ignition
 +
| Get / Noti
 +
|-
 +
| Speedometer
 +
| Integer
 +
| km/h or mph
 +
| Get / Noti
 +
|-
 +
| Engine Speed
 +
| Integer
 +
| rpm
 +
| Get / Noti
 +
|-
 +
| Trip meter
 +
| Integer
 +
| km or mile
 +
| Get / Noti
 +
|-
 +
| Transmission Gear Status
 +
| Enum
 +
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto
 +
| Get / Noti
 +
|-
 +
| Cruise Control Status
 +
| Compound
 +
| Activate/Deactivate, Speed
 +
| Get / Noti
 +
|-
 +
| Wheel Brake
 +
| Boolean
 +
| Idle, Engaged, Malfunction
 +
| Get / Noti
 +
|-
 +
| Lights Status
 +
| Compound
 +
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)
 +
| Get / Noti
 +
|-
 +
| Interior Lights Status
 +
| Compound
 +
| On / Off per each light (Driver, Passenger, Center)
 +
| Get / Noti
 +
|-
 +
| Horn
 +
| Boolean
 +
| On / Off
 +
| Get / Noti
 +
|-
 +
| Chime
 +
| Boolean
 +
| On / Off
 +
| Get / Noti
 +
|-
 +
| Fuel
 +
| Integer
 +
| Remaining % (Remaining, Total Capacity in liter or gallon)
 +
| Get / Noti
 +
|-
 +
| Estimated Range
 +
| Integer
 +
| km/miles (estimated range with available fuel)
 +
| Get / Noti
 +
|-
 +
| Engine Oil
 +
| Compound
 +
| Remaining %, Temperature
 +
| Get / Noti
 +
|-
 +
| Engine Coolant
 +
| Compound
 +
| Level, Temperature, Pressure
 +
| Get / Noti
 +
|-
 +
| Current G-read
 +
| Integer
 +
| m/s*s current acceleration lateral/longitudinal
 +
| Get / Noti
 +
|-
 +
| Vehicle current Odometry
 +
| Compound
 +
| (dx_mm, dy_mm, dang, timestamp) or (x_mm, y_mm, ang, timestamp) formats
 +
| Get
 +
|-
 +
| Steering Wheel Angle
 +
| Integer
 +
| (for GPS Dead Reckoning)
 +
| Get / Noti
 +
|-
 +
| Wheel Tick Sensor
 +
| Compound
 +
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)
 +
| Get
 +
|-
 +
|  rowspan=6 | Maintenance
 +
| Odometer
 +
| Integer
 +
| km/h or mph
 +
| Get / Noti
 +
|-
 +
| Transmission Oil
 +
| Integer
 +
| Remaining %
 +
| Get / Noti
 +
|-
 +
| Brake Fluid
 +
| Integer
 +
| Remaining %
 +
| Get / Noti
 +
|-
 +
| Washer Fluid
 +
| Integer
 +
| Remaining %
 +
| Get / Noti
 +
|-
 +
| Battery Status
 +
| Compound
 +
| Voltage, Current
 +
| Get / Noti
 +
|-
 +
| Tire Pressure
 +
| Compound
 +
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)
 +
| Get / Noti
 +
|-
 +
|  rowspan=10 | Personalization
 +
| Key ID (Driver ID)
 +
| Enum
 +
|  
 +
| Get
 +
|-
 +
| Language
 +
| Enum
 +
| English, Spanish, French, …
 +
| Get / Set
 +
|-
 +
| Measurement System
 +
| Boolean
 +
| Km (litter), mile (gallon)
 +
| Get / Set
 +
|-
 +
| Mirror
 +
| Compound
 +
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)
 +
| Get / Set
 +
|-
 +
| Steering Wheel Position
 +
| Compound
 +
| Level per each part (slide, tilt)
 +
| Get / Set
 +
|-
 +
| Driving Mode
 +
| Enum
 +
| Comfort, Auto, Sport, Eco, Manual
 +
| Get / Set
 +
|-
 +
| Driver Seat Position
 +
| Compound
 +
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)
 +
| Get / Set
 +
|-
 +
| Passenger Seat Position
 +
| Compound
 +
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)
 +
| Get / Set
 +
|-
 +
| Dashboard Illumination
 +
| Enum
 +
| % of Illumination ( 0 : Darkest, 100 : Brightest)
 +
| Get / Set
 +
|-
 +
| Generated Car Sound Mode
 +
| Enum
 +
| Normal, Quiet, Sportive
 +
| Get / Set
 +
|-
 +
|  rowspan=11 | Driving Safety
 +
| Antilock Braking System
 +
| Enum
 +
| Available (Equipped), Idle, Engaged
 +
| Get / Noti
 +
|-
 +
| Traction Control System
 +
| Enum
 +
| Available (Equipped), On/Off
 +
| Get / Noti
 +
|-
 +
| Vehicle Top Speed Limit
 +
| Integer
 +
| km/h or mph (0 means no limitation)
 +
| Get / Set
 +
|-
 +
| Airbag Status
 +
| Compound
 +
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)
 +
| Get / Noti
 +
|-
 +
| Door Open Status
 +
| Compound
 +
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)
 +
| Get / Noti
 +
|-
 +
| Door Lock Status
 +
| Compound
 +
| Lock/Unlock per each door (driver, passenger, rear left, rear right)
 +
| Get / Noti / Set
 +
|-
 +
| Occupants Status
 +
| Compound
 +
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)
 +
| Get / Noti
 +
|-
 +
| Seat Belt
 +
| Compound
 +
| Fasten or not per each seat (driver, passenger, rear left, rear right)
 +
| Get / Noti
 +
|-
 +
| Window Lock
 +
| Compound
 +
| Lock/Unlock per each window (driver, passenger, rear left, rear right)
 +
| Get / Noti / Set
 +
|-
 +
| Obstacle Distance
 +
| Compound
 +
| Sensor Status (available or not), Distance per each sensor (Position #)
 +
| Get / Noti
 +
|-
 +
| Camera frame/stream
 +
| ?
 +
| request frame/stream from selected vehicle camera(s) (resolution/compressed or not)
 +
| Get
 +
|-
 +
|  rowspan=3 | Parking
 +
| Security Alert
 +
| Enum
 +
| Available (Equipped), Idle, Activated, Alarm Detected
 +
| Get / Noti
 +
|-
 +
| Parking Brake
 +
| Boolean
 +
| On / Off
 +
| Get / Noti
 +
|-
 +
| Parking Lights
 +
| Boolean
 +
| On / Off
 +
| Get / Noti / Set
 +
|-
 +
|  rowspan=16 | Climate<br>
 +
/ Environment
 +
| Interior Temperature
 +
| Integer
 +
| 0.1 degrees of Celsius
 +
| Get / Noti
 +
|-
 +
| Exterior Temperature
 +
| Integer
 +
| 0.1 degrees of Celsius
 +
| Get / Noti
 +
|-
 +
| Exterior Brightness
 +
| Integer
 +
| lux
 +
| Get / Noti
 +
|-
 +
| Rain Sensor
 +
| Enum
 +
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)
 +
| Get / Noti
 +
|-
 +
| Windshield Wiper
 +
| Enum
 +
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)
 +
| Get / Noti / Set
 +
|-
 +
| HVAC Fan
 +
| Compound
 +
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)
 +
| Get / Noti / Set
 +
|-
 +
| Air-Conditioning
 +
| Boolean
 +
| On / Off
 +
| Get / Noti / Set
 +
|-
 +
| Air-Recirculation
 +
| Boolean
 +
| On / Off
 +
| Get / Noti / Set
 +
|-
 +
| Heater
 +
| Boolean
 +
| On / Off
 +
| Get / Noti / Set
 +
|-
 +
| Defrost
 +
| Compound
 +
| On / Off per each position (Windshield, Rear Window, Side Mirrors)
 +
| Get / Noti / Set
 +
|-
 +
| Steering Wheel Heater
 +
| Boolean
 +
| On / Off
 +
| Get / Noti / Set
 +
|-
 +
| Seat Heater
 +
| Boolean
 +
| On / Off
 +
| Get / Noti / Set
 +
|-
 +
| Seat Cooler
 +
| Boolean
 +
| On / Off
 +
| Get / Noti / Set
 +
|-
 +
| Window
 +
| Compound
 +
| % of openness per each window (driver, passenger, rear left, rear right)
 +
| Get / Noti
 +
|-
 +
| Sunroof
 +
| Compound
 +
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )
 +
| Get / Noti / Set
 +
|-
 +
| Convertible roof
 +
| Boolean
 +
| On / Off
 +
| Get / Noti / Set
 +
|-
 +
|  rowspan=7 | Electric Vehicle
 +
| Hybrid Power Status
 +
| Enum
 +
| Idle, Battery Mode, Engine Mode, Hybrid Mode
 +
| Get / Noti
 +
|-
 +
| Charging Status
 +
| Boolen
 +
| On / Off
 +
| Get / Noti / Set
 +
|-
 +
| Battery Voltage
 +
| Compound
 +
| Voltage ( 0.1 volt ), Level of charge (0~100%)
 +
| Get / Noti
 +
|-
 +
| Battery Charge Cord
 +
| Boolen
 +
| Not Connected / Connected
 +
| Get / Noti
 +
|-
 +
| Target Charge Level
 +
| Integer
 +
| Level of charge capacity (0~100%)
 +
| Get / Noti
 +
|-
 +
| Est. time to full charge
 +
| Integer
 +
| Number of minutes remaining
 +
| Get / Noti
 +
|-
 +
| Est. time to target charge
 +
| Integer
 +
| Number of minutes remaining
 +
| Get / Noti
 +
|}
 +
 +
=== Navigation ===
 +
[[Category:Navigation]]
 +
 +
{|  x:str border=1 cellpadding=0 cellspacing=0
 +
|  rowspan=2 | Group
 +
|  rowspan=2 | Function
 +
|  colspan=2 | Parameter
 +
|  rowspan=2 | Operation
 +
|-
 +
| Type
 +
| Contents
 +
|-
 +
|-
 +
|  rowspan=16 | Maps / Navigation
 +
| Navigation Status
 +
| Enum
 +
| Idle, Guiding, Off-Route, ...
 +
| Get
 +
|-
 +
| Destination
 +
| ?
 +
| Place Element (address, coordinates, viewport)
 +
| Get / Set
 +
|-
 +
| ClearDestination
 +
| none
 +
| Clear current destination / Stop navigation routing
 +
| Set
 +
|-
 +
| Routing Options
 +
| Composition
 +
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...
 +
| Get / Set
 +
|-
 +
| Get Route
 +
| Composition
 +
| ?
 +
| Get
 +
|-
 +
| POI
 +
| Composition
 +
| List of: <Place Element, Landmark>
 +
| Get / Set
 +
|-
 +
| Latest Destination
 +
| Composition
 +
| Place Element (address, coordinates, viewport)
 +
| Get
 +
|-
 +
| Stored Locations
 +
| Composition
 +
| Place Element List (address, coordinates, viewport)
 +
| Get / Set
 +
|-
 +
| Pitch
 +
| Integer
 +
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees
 +
| Get / Set
 +
|-
 +
| Zoom
 +
| Integer
 +
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: > 1 and < -1
 +
| Get / Set
 +
|-
 +
| Panning
 +
| Integer
 +
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)
 +
| Set
 +
|-
 +
| Orientation
 +
| Boolean
 +
| orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)
 +
| Get / Set
 +
|-
 +
| FollowGPS
 +
| Boolean
 +
| follow gps signal ( ON - map cursor follows gps signal / OFF - map cursor does not follow gps signal / timeout - number of updates to wait before cursor follows gps signal on map; useful for panning)
 +
| Get / Set
 +
|-
 +
| Layout
 +
| Composition
 +
| day / night / detailed - POIs / plain simple
 +
| Get / Set
 +
|-
 +
| SetUnits
 +
| Enum
 +
| Metric / Imperial / ...
 +
| Get / Set
 +
|-
 +
| MapCenter
 +
| Composition
 +
| Center the map ( Place Element (address, coordinates, viewport) )
 +
| Get / Set
 +
|}
 +
 +
=== Multimedia ===
 +
Basically, IVI shares Qt Mobility functions.
 +
This section is for IVI exclusive functionality about Multimedia
 +
 +
=== Communication ===
 +
Basically, IVI shares Qt Mobility functions.
 +
This section is for IVI exclusive functionality about Communication

Latest revision as of 15:37, 20 July 2011

Contents

Automotive API

To enable applications and software functionality specific to a vehicle context the MeeGo IVI software stack needs to implement an API that allows applications to access vehicle data and execute operations. The MeeGo IVI software stack essentially extends MeeGo Core and consequently the IVI APIs are extensions of the MeeGo Core APIs.

MeeGo IVI Stack

The API most likely will have multiple layers abstracting applications from the underlying specifics of the vehicle architecture. The latter will definitely differ from make to make and most likely within model lines of the same make and also between generations of the same model of a particular make.

The API layer provides vehicle data in a generalized form through methods such as getVehicleSpeed(), getFuelLevel(), getAverageFuelConsumption() etc. as well as executing function such as setRadioTuner(band, frequency), turnOnHeadlights(), lockDoor(doors), etc. An application can make use of these APIs directly.

Another layer of abstraction is the application framework layer that combines operations across multiple MeeGo APIs. An example could be a function providing range information based on the fuel level, the average consumption and the current vehicle position.

API Requirements

Functionality

The idea of the API is to treat vehicle data that can be retrieved and vehicle functions controlled through these APIs in an abstract manner. The implementation details of the API functionality e.g. where to get a particular piece of data from such as the fuel level or to execute a particular function e.g. closing a window are treated by underlying software layer and are transparent to the API. The developer using the API should not need to have any prior knowledge about the vehicle itself for instance what make and model it is.

Since not all vehicles will implement all of the APIs it is necessary that software using the API has methods to determine during runtime what APIs are actually implemented. The most straight-forward way is that an API returns a specific value when it is not implemented e.g. API_NOT_DEFINED. A calling software module would simply invoke the API and react accordingly if the API returns API_NOT_DEFINED. However, that may not be the most efficient way since dependent on what API functionality is available software modules may want to configure themselves differently. The most obvious case would be an application that changes its appearance in the UX according to the available functionality. Hence, it is desirable that the API implements reflection that allows querying its functionality during runtime. That can be achieved via API registration or other mechanisms.

If an API is implemented it must adhere to the API specification:

  • Parameters are required to have the specified types and must accept values within the specified range.
  • Return values must be of the specified type and only return values within the specified range.
  • Only the specified exceptions (if exceptions are used at all by the API) must be thrown.

Security

Some APIs will require access control to restrict execution to calling software modules with the correct privileges. MeeGo IVI should rely on the security mechanisms provided by MeeGo and extend them where necessary.

API Functional Groups and Functions

This section list proposed APIs and places them into functional groups.

Car-Systems

Group Function Parameter Operation
Type Contents
Application

Interoperability

Supported Features Integer Bit setting per each APIs Get
Car Manufacturer String   Get
WMI String World Manufacturer Identifier as defined by SAE. 3 characters.  Get
Car Model Name String   Get
VIN String Vehicle Identification Number as defined by ISO 3779. 17 characters.  Get
Car Information Car Type Enum Sedan, Coupe, Cabriole, Roadster, SUV, Truck Get
Door Type Compound # of doors in first row, second row, third row Get
Engine Type Enum Gasoline, Diesel, Hybrid, Electric Get
Transmission Gear Type Enum Auto/Manual Get
Wheel Information Compound Radius of Wheel, Wheel Track (for GPS Dead Reckoning) Get
Running Status Vehicle Power Mode Enum Off / Acc / Run / Ignition Get / Noti
Speedometer Integer km/h or mph Get / Noti
Engine Speed Integer rpm Get / Noti
Trip meter Integer km or mile Get / Noti
Transmission Gear Status Enum 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto Get / Noti
Cruise Control Status Compound Activate/Deactivate, Speed Get / Noti
Wheel Brake Boolean Idle, Engaged, Malfunction Get / Noti
Lights Status Compound On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking) Get / Noti
Interior Lights Status Compound On / Off per each light (Driver, Passenger, Center) Get / Noti
Horn Boolean On / Off Get / Noti
Chime Boolean On / Off Get / Noti
Fuel Integer Remaining % (Remaining, Total Capacity in liter or gallon) Get / Noti
Estimated Range Integer km/miles (estimated range with available fuel) Get / Noti
Engine Oil Compound Remaining %, Temperature Get / Noti
Engine Coolant Compound Level, Temperature, Pressure Get / Noti
Current G-read Integer m/s*s current acceleration lateral/longitudinal Get / Noti
Vehicle current Odometry Compound (dx_mm, dy_mm, dang, timestamp) or (x_mm, y_mm, ang, timestamp) formats Get
Steering Wheel Angle Integer (for GPS Dead Reckoning) Get / Noti
Wheel Tick Sensor Compound Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning) Get
Maintenance Odometer Integer km/h or mph Get / Noti
Transmission Oil Integer Remaining % Get / Noti
Brake Fluid Integer Remaining % Get / Noti
Washer Fluid Integer Remaining % Get / Noti
Battery Status Compound Voltage, Current Get / Noti
Tire Pressure Compound PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right) Get / Noti
Personalization Key ID (Driver ID) Enum   Get
Language Enum English, Spanish, French, … Get / Set
Measurement System Boolean Km (litter), mile (gallon) Get / Set
Mirror Compound 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror) Get / Set
Steering Wheel Position Compound Level per each part (slide, tilt) Get / Set
Driving Mode Enum Comfort, Auto, Sport, Eco, Manual Get / Set
Driver Seat Position Compound Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion) Get / Set
Passenger Seat Position Compound Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion) Get / Set
Dashboard Illumination Enum  % of Illumination ( 0 : Darkest, 100 : Brightest) Get / Set
Generated Car Sound Mode Enum Normal, Quiet, Sportive Get / Set
Driving Safety Antilock Braking System Enum Available (Equipped), Idle, Engaged Get / Noti
Traction Control System Enum Available (Equipped), On/Off Get / Noti
Vehicle Top Speed Limit Integer km/h or mph (0 means no limitation) Get / Set
Airbag Status Compound Activate/Deactivate/Deployment per each airbag (driver, passenger, side) Get / Noti
Door Open Status Compound Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood) Get / Noti
Door Lock Status Compound Lock/Unlock per each door (driver, passenger, rear left, rear right) Get / Noti / Set
Occupants Status Compound Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right) Get / Noti
Seat Belt Compound Fasten or not per each seat (driver, passenger, rear left, rear right) Get / Noti
Window Lock Compound Lock/Unlock per each window (driver, passenger, rear left, rear right) Get / Noti / Set
Obstacle Distance Compound Sensor Status (available or not), Distance per each sensor (Position #) Get / Noti
Camera frame/stream  ? request frame/stream from selected vehicle camera(s) (resolution/compressed or not) Get
Parking Security Alert Enum Available (Equipped), Idle, Activated, Alarm Detected Get / Noti
Parking Brake Boolean On / Off Get / Noti
Parking Lights Boolean On / Off Get / Noti / Set
Climate

/ Environment

Interior Temperature Integer 0.1 degrees of Celsius Get / Noti
Exterior Temperature Integer 0.1 degrees of Celsius Get / Noti
Exterior Brightness Integer lux Get / Noti
Rain Sensor Enum Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain) Get / Noti
Windshield Wiper Enum Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto) Get / Noti / Set
HVAC Fan Compound Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius) Get / Noti / Set
Air-Conditioning Boolean On / Off Get / Noti / Set
Air-Recirculation Boolean On / Off Get / Noti / Set
Heater Boolean On / Off Get / Noti / Set
Defrost Compound On / Off per each position (Windshield, Rear Window, Side Mirrors) Get / Noti / Set
Steering Wheel Heater Boolean On / Off Get / Noti / Set
Seat Heater Boolean On / Off Get / Noti / Set
Seat Cooler Boolean On / Off Get / Noti / Set
Window Compound  % of openness per each window (driver, passenger, rear left, rear right) Get / Noti
Sunroof Compound  % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted ) Get / Noti / Set
Convertible roof Boolean On / Off Get / Noti / Set
Electric Vehicle Hybrid Power Status Enum Idle, Battery Mode, Engine Mode, Hybrid Mode Get / Noti
Charging Status Boolen On / Off Get / Noti / Set
Battery Voltage Compound Voltage ( 0.1 volt ), Level of charge (0~100%) Get / Noti
Battery Charge Cord Boolen Not Connected / Connected Get / Noti
Target Charge Level Integer Level of charge capacity (0~100%) Get / Noti
Est. time to full charge Integer Number of minutes remaining Get / Noti
Est. time to target charge Integer Number of minutes remaining Get / Noti

Navigation

Group Function Parameter Operation
Type Contents
Maps / Navigation Navigation Status Enum Idle, Guiding, Off-Route, ... Get
Destination  ? Place Element (address, coordinates, viewport) Get / Set
ClearDestination none Clear current destination / Stop navigation routing Set
Routing Options Composition Shortest/Fastest, Free/Don't care, Highway/Don't care, ... Get / Set
Get Route Composition  ? Get
POI Composition List of: <Place Element, Landmark> Get / Set
Latest Destination Composition Place Element (address, coordinates, viewport) Get
Stored Locations Composition Place Element List (address, coordinates, viewport) Get / Set
Pitch Integer 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees Get / Set
Zoom Integer zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: > 1 and < -1 Get / Set
Panning Integer panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST) Set
Orientation Boolean orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction) Get / Set
FollowGPS Boolean follow gps signal ( ON - map cursor follows gps signal / OFF - map cursor does not follow gps signal / timeout - number of updates to wait before cursor follows gps signal on map; useful for panning) Get / Set
Layout Composition day / night / detailed - POIs / plain simple Get / Set
SetUnits Enum Metric / Imperial / ... Get / Set
MapCenter Composition Center the map ( Place Element (address, coordinates, viewport) ) Get / Set

Multimedia

Basically, IVI shares Qt Mobility functions. This section is for IVI exclusive functionality about Multimedia

Communication

Basically, IVI shares Qt Mobility functions. This section is for IVI exclusive functionality about Communication

Personal tools