<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.meego.com/skins/common/feed.css?270"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.meego.com/index.php?title=Special:Contributions/Simonbolek&amp;feed=atom&amp;limit=50&amp;target=Simonbolek&amp;year=&amp;month=</id>
		<title>MeeGo wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.meego.com/index.php?title=Special:Contributions/Simonbolek&amp;feed=atom&amp;limit=50&amp;target=Simonbolek&amp;year=&amp;month="/>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/Special:Contributions/Simonbolek"/>
		<updated>2013-05-18T05:51:09Z</updated>
		<subtitle>From MeeGo wiki</subtitle>
		<generator>MediaWiki 1.16.2</generator>

	<entry>
		<id>http://wiki.meego.com/User:Simonbolek</id>
		<title>User:Simonbolek</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/User:Simonbolek"/>
				<updated>2012-05-05T16:01:14Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: Created page with &amp;quot;Hello :-)&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Hello :-)&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/File:IVI_Navigation_API.png</id>
		<title>File:IVI Navigation API.png</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/File:IVI_Navigation_API.png"/>
				<updated>2011-06-28T12:31:07Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: uploaded a new version of &amp;amp;quot;File:IVI Navigation API.png&amp;amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/Navigation</id>
		<title>In-vehicle/Roadmap/Navigation</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/Navigation"/>
				<updated>2011-06-28T12:27:48Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal of navigation framework.&lt;br /&gt;
&lt;br /&gt;
== Abstract / UseCases ==&lt;br /&gt;
&lt;br /&gt;
[[File:IVI_Navigation_API.png]]&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
...&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/File:IVI_Navigation_API.png</id>
		<title>File:IVI Navigation API.png</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/File:IVI_Navigation_API.png"/>
				<updated>2011-06-28T12:26:25Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope</id>
		<title>In-vehicle/Roadmap/FeatureScope</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope"/>
				<updated>2011-06-27T12:44:01Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Map_Function */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This topic provides an outline of requirements for a head unit.  The requirements are derived from a real life development project for in-vehicle infotainment platform.  ''This is still work in progress--the content will be added gradually.''&lt;br /&gt;
&lt;br /&gt;
Some of the requirements below will be fulfilled outside of the MeeGo IVI based software.  For example, the implementation of CAN network interface and early audio functions most probably falls into this category.  The decisions about implementation of specific requirements in MeeGo IVI software will be made assuming a specific [[In-vehicle/Roadmap/SystemArchitecture|system architecture]].&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
=== Performance ===&lt;br /&gt;
# After power-on, the head unit displays a static splash screen within 200 ms.&lt;br /&gt;
# After power-on, the head unit displays an animated splash screen (pre-defined, fixed) within 200 ms and at the frame rate above 4 fps.&lt;br /&gt;
# After power-on, the head unit is able to play early audio (e.g. chimes and gongs--minimal set, best suited type, simple) within max. 1 s.&lt;br /&gt;
# After power-on, the head unit plays FM radio, resuming the last station before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit plays compressed audio from a connected media device (e.g. MP3 from USB stick), resuming the last track played before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the rear view camera output within max. 2 s.&lt;br /&gt;
# After power-on, the head unit accepts first user input (e.g. HMI menu, screen, volume control) within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the Navigation map and starts the route guidance, resuming the previous route, within max. 5 s.&lt;br /&gt;
# Head unit reacts to user input via HMI (touch screen events, button or switch presses) within max. 100 ms.  Head unit displays interim response (e.g. sand glass) for all requests that cannot be completed within this time&lt;br /&gt;
# Head unit performs voice recognition for a single word against G2P vocabulary within max. 200 ms measured from the end of utterance (silence detection) to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit performs hand writing recognition against Chinese standard 2000 character set within max. 200 ms measured from end of entry to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit exhibits the refresh rate of min 15 fps for the navigation map in any scaling.&lt;br /&gt;
# Head unit exhibits a graphics rendering frame rate (for HMI animations and Navigation maps) of min. 15 fps.&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
=== Audio_Codecs_Playback ===&lt;br /&gt;
# Head unit supports the following codecs:&lt;br /&gt;
## AAC LC&lt;br /&gt;
## MP3&lt;br /&gt;
## WMA&lt;br /&gt;
## WAV&lt;br /&gt;
## Ogg Vorbis&lt;br /&gt;
## FLAC&lt;br /&gt;
&lt;br /&gt;
=== Audio_Processing_And_Management ===&lt;br /&gt;
# Head unit supports up to 4 independent audio zones (sinks).  One zone if 5.1 channels (e.g. cabin speakers) and others are stereo.  (Each zone might require its own independent audio processing and audio codec instances.)&lt;br /&gt;
# Head unit allows the user to adjust at least audio treble and bass level.&lt;br /&gt;
# Head unit allows the user to adjust balance and fade level.&lt;br /&gt;
# Head unit is capable of playing back any of its sources to any of 4 audio zones including simultaneous playback to up to 4 audio zones.&lt;br /&gt;
# Head unit uses pre-defined fader ramps when switching the audio source for any particular audio zone.&lt;br /&gt;
# For each audio zone, the head unit keeps track of the most recently played audio source and restores it upon startup.  (For example, when the FM tuner was played to the cabin speakers and the head unit has been switched off, it would attempt tuning to the same FM station and putting it to the cabin speakers upon the next startup.)&lt;br /&gt;
# For each audio zone, all available audio sources are assigned a unique priority.  When an audio source is being played back and a higher priority source becomes available (e.g. the phone application attempts to play a ring tone), the latter overrides the former.&lt;br /&gt;
## As a configuration option, overriding can be done either by muting the first source and playing back the second source, or by lowering the volume of the first source and mixing it with the second source.&lt;br /&gt;
&lt;br /&gt;
=== Audio_Generation ===&lt;br /&gt;
# chimes and gongs&lt;br /&gt;
# calibration to interior&lt;br /&gt;
&lt;br /&gt;
=== Audio_Recording ===&lt;br /&gt;
# voice&lt;br /&gt;
# radio&lt;br /&gt;
# podcasts&lt;br /&gt;
&lt;br /&gt;
=== Audio_Volume_Control ===&lt;br /&gt;
# Volume level is adjustable by the user.&lt;br /&gt;
## Adjustments by the user are only accepted during actual audio playback.  (In other words, any volume changes e.g. during start up phase and before the audio output can be heard will be ignored.)&lt;br /&gt;
## The volume level selection by the user is maintained for each audio source / sink pair individually.&lt;br /&gt;
# Volume level is adjusted by the head unit accordingly to the current vehicle speed.&lt;br /&gt;
# Volume level set by the user is preserved through shutdown cycle.&lt;br /&gt;
## Upon start up, the previous volume level is only restored up to a defined 'start up maximum' (as contrasted to the 'absolute maximum' that can be set after the head unit is up and running in its normal mode).&lt;br /&gt;
# Under limit volume need to be set as some low level NOT minimum just to make sure that at least user can recognize low level volume even though user set the volume to minimum which is basically &amp;quot;MUTE&amp;quot; before the power cycle&lt;br /&gt;
# Upper limit volume need to be set as some high level NOT maximum just to make sure that user can not be annoyed due to the previous maximum volume setting.&lt;br /&gt;
# In Emergency Case, volume should not be adjusted by the user, volume need to be fit as some very loud level as much as no sound is masked with ambient noisy background,&lt;br /&gt;
&lt;br /&gt;
=== Handfree Functionality ===&lt;br /&gt;
# Noise reduction &lt;br /&gt;
# Echo cancellation &lt;br /&gt;
# Residual echo cancellation &lt;br /&gt;
# Automatic gain control&lt;br /&gt;
# Programmable Equalization &lt;br /&gt;
# Performance Requirement &lt;br /&gt;
  - objective testing : VDA 1.6 &lt;br /&gt;
  - subjective testing : In-Vehicle live testing&lt;br /&gt;
&lt;br /&gt;
== Connectivity ==&lt;br /&gt;
=== Wireless_Interfaces ===&lt;br /&gt;
==== Wireless_Infrared_IRDA ====&lt;br /&gt;
==== Wireless_WiFi_Connection ====&lt;br /&gt;
# access point&lt;br /&gt;
# client&lt;br /&gt;
&lt;br /&gt;
==== Wireless_Bluetooth_Connection_and_Telephony ====&lt;br /&gt;
==== Wireless_Cellular_Mobile_Telephony ====&lt;br /&gt;
==== Wireless_BT_Hands-free_Telephony ====&lt;br /&gt;
# profiles&lt;br /&gt;
# Acoustic Echo Cancellation / Noise Reduction (AEC / NR)&lt;br /&gt;
# single and dual microphone&lt;br /&gt;
&lt;br /&gt;
=== Wired_Interfaces ===&lt;br /&gt;
==== USB_Connection_to_CE_Devices ====&lt;br /&gt;
==== Removable_SD_Card_Connections ====&lt;br /&gt;
&lt;br /&gt;
=== Internet_Access_and_Browser ===&lt;br /&gt;
# internet radio&lt;br /&gt;
# podcasts&lt;br /&gt;
# applications (e.g. google maps)&lt;br /&gt;
# social networks&lt;br /&gt;
&lt;br /&gt;
=== Phone_Functionality ===&lt;br /&gt;
# internal phone book&lt;br /&gt;
# VoIP&lt;br /&gt;
&lt;br /&gt;
=== Terminal_Mode_Functionality ===&lt;br /&gt;
=== Microsoft_Plays_From_Device ===&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Personalization ===&lt;br /&gt;
# user profiles&lt;br /&gt;
&lt;br /&gt;
== Driver_Assistance ==&lt;br /&gt;
# camera input processing&lt;br /&gt;
# electronic horizon&lt;br /&gt;
&lt;br /&gt;
== Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
== HMI ==&lt;br /&gt;
=== User_Inputs_Support ===&lt;br /&gt;
==== UI_Devices_Support ====&lt;br /&gt;
==== UI_Touch_Sreen_Hand_Writing_Detection ====&lt;br /&gt;
==== UI_Speech_Recognition_Function ====&lt;br /&gt;
1.Recognition Category&lt;br /&gt;
#discrete command - command, single digit ( e.g. &amp;quot;dial&amp;quot;,'1','2',..etc )&lt;br /&gt;
#continuous command - continuous digit ( e.g. &amp;quot;dial 555-1212&amp;quot;, &amp;quot; 555-1212&amp;quot; )&lt;br /&gt;
#natural language understaning - flexible recognition ( e.g. &amp;quot;I want to make a call to john&amp;quot;,&amp;quot;please route to the san franciso regency hyatt hotel&amp;quot;,..etc)&lt;br /&gt;
#Dynamic vocabulary (e.g. phonebook, MP3 Title) &lt;br /&gt;
##number of phonebook and Music Title is not determined, User flexblly add and remove the list whatever they want, this list is dynamically loaded for a recognition, especially G2P (Grapheme-To-Phoneme) techinique is required to generate the phonetic transcription for the new words&lt;br /&gt;
#VDE ( Voice Detination Entry ) &lt;br /&gt;
##Multi Step (e.g. &amp;quot;MI&amp;quot; and then &amp;quot;troy&amp;quot; and then &amp;quot;1307&amp;quot; &lt;br /&gt;
##One shot (e.g. &amp;quot;1307 troy, MI&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
2.Recognition Response time &lt;br /&gt;
#discrete command - 300ms &lt;br /&gt;
#continuous command - 1200ms &lt;br /&gt;
#phone book &amp;amp; Music Title - 1200ms&lt;br /&gt;
#natural language understanding, VDE - 1500ms&lt;br /&gt;
&lt;br /&gt;
3.Recognition performance measurement &lt;br /&gt;
#overall accuracy measurement &lt;br /&gt;
##Average Sentence Accuracy = (Total Number of Correct Sentences)/(Total Number of Sentence Attempted)&lt;br /&gt;
#individual accuracy measurement &lt;br /&gt;
##Average Word Accuracy = ((Total number of attempts) - (insertions) - (deletions) - (substitutions))/Total number of attempts&lt;br /&gt;
  &lt;br /&gt;
4.Recognition performance requirement &lt;br /&gt;
#discrete command&lt;br /&gt;
##IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection ) &lt;br /&gt;
#continuous command&lt;br /&gt;
##IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection )&lt;br /&gt;
&lt;br /&gt;
5.Speech Recognition functionality &lt;br /&gt;
#confidence score&lt;br /&gt;
##the recognized result can be accepted/rejected according to confidence score, which represent how confidentially result can be accepted in terms of log likelihood, for example, if the developer set the confidence threshold to 40, basically assumed that confidence score range is between 0(low confidence score)to 100(high confidence score), result can be accepted only if confidence score is greater than confidence threshold 40 &lt;br /&gt;
#grammar weight &lt;br /&gt;
##In case of poor accuracy command compare to other candidate in grammar, the weight can be adjusted to eqaulize the result, for example ( 1.1 dial | 0.9 store | 1.0 one | 1.0 two | 1.0 three | 0.9 four | .... | 1.1 oh ) , 1.1 means that more weight , and 1.0 is equal unity gain, 0.9 means that less weight compare to the unity gain &lt;br /&gt;
#SNR rejection &lt;br /&gt;
##if ambient noisy is too much, this can be measured by SNR (Signal to Noise Ratio), the it's better to reject recognized result in case of SNR is lower than some specific threahold which is potentially too much corrupted by noise condition&lt;br /&gt;
##even though SNR is lower than some level which is not reliable to get the correct result. if confidence score is extremely high, the result can be accepted depend on the OEM specification&lt;br /&gt;
#Talk too soon&lt;br /&gt;
##if user start the utterance before the start beep is playback to user, there is tendancy to chop at the beginning of the utterance, so there is high possibility of result can be misrecognized, but this also can be accepted somewhat confidence score is too high to accepted the result &lt;br /&gt;
#AGC(automatic Gain control) &lt;br /&gt;
##speaking style is too difierent user by user, some user's voice is very low and smooth, and others are very strong and loud, even same user can speak different sound occasionally, so AGC is obviouly necessary to bring the volume up in case of soft voice, otherwise bringing the volume down against to loud voice. how this functionality also can be accepted/rejected according to their requirement. Usually AGC does not have impact to the accuracy. but recommed to use this functinality for higher usability.&lt;br /&gt;
&lt;br /&gt;
=== Multiple_HMI_Languages ===&lt;br /&gt;
=== Software_Support ===&lt;br /&gt;
=== Users_Manual_Integrated ===&lt;br /&gt;
=== Graphics_Functions ===&lt;br /&gt;
&lt;br /&gt;
== Media ==&lt;br /&gt;
=== Media_Player_and_Browser_Requirements ===&lt;br /&gt;
# number of player instances&lt;br /&gt;
# playlists&lt;br /&gt;
# ripping&lt;br /&gt;
&lt;br /&gt;
=== Storage_Media_Support ===&lt;br /&gt;
&lt;br /&gt;
== Navigation ==&lt;br /&gt;
=== Navigation_Engine ===&lt;br /&gt;
# map source&lt;br /&gt;
# routing&lt;br /&gt;
# searching (local / web service)&lt;br /&gt;
# geocoding / reverse geocoding&lt;br /&gt;
&lt;br /&gt;
=== Map_Function ===&lt;br /&gt;
# database&lt;br /&gt;
# 2D/3D representation (pitch)&lt;br /&gt;
# zooming (IN / OUT / auto-zoom)&lt;br /&gt;
# panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
# orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
# 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)&lt;br /&gt;
# set / clear destination&lt;br /&gt;
# center the map&lt;br /&gt;
# set/change map layout (day / night / detailed - POIs / plain simple)&lt;br /&gt;
# bookmarks (see also Destination_Import)&lt;br /&gt;
# OSD (on-screen display) information&lt;br /&gt;
# set units: metric / imperial / ...&lt;br /&gt;
&lt;br /&gt;
=== Real_Time_Traffic_Information ===&lt;br /&gt;
=== Speech_Support_for_Navigation ===&lt;br /&gt;
=== Positioning_Capabilities ===&lt;br /&gt;
=== Points_of_Interestes_POIs ===&lt;br /&gt;
=== Destination_Import ===&lt;br /&gt;
# from file (eg. USB)&lt;br /&gt;
# from web server / web service&lt;br /&gt;
# free input&lt;br /&gt;
# coordinate units conversion&lt;br /&gt;
&lt;br /&gt;
== Network ==&lt;br /&gt;
=== CAN_Network_Interface ===&lt;br /&gt;
=== MOST_Network_Interface ===&lt;br /&gt;
=== Ethernet_Network_Interface ===&lt;br /&gt;
# DLNA&lt;br /&gt;
# AVB&lt;br /&gt;
&lt;br /&gt;
=== Serial_Network_Interfaces ===&lt;br /&gt;
# UART&lt;br /&gt;
# LIN&lt;br /&gt;
&lt;br /&gt;
=== Gateway ===&lt;br /&gt;
&lt;br /&gt;
== Power ==&lt;br /&gt;
=== Power_Management_Master ===&lt;br /&gt;
=== Power_Modes ===&lt;br /&gt;
=== Wakeup_Conditions ===&lt;br /&gt;
=== Monitor_Voltage_Ranges ===&lt;br /&gt;
&lt;br /&gt;
== Telematics and Data Services ==&lt;br /&gt;
=== Emergency_and_Breakdown_Call ===&lt;br /&gt;
=== JAVA_Telematics_Client ===&lt;br /&gt;
=== Remote_Diagnostics ===&lt;br /&gt;
=== Vehicle_Tracking ===&lt;br /&gt;
&lt;br /&gt;
== Radio and Video Broadcast Tuner ==&lt;br /&gt;
=== Radio_Broadcast_Reception ===&lt;br /&gt;
==== Radio_AM_FM_Broadcast_Reception ====&lt;br /&gt;
==== Radio_SDARS_Broadcast_Reception ====&lt;br /&gt;
==== Radio_HD_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DAB_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DRM_Broadcast_Reception ====&lt;br /&gt;
==== Broadcast_Sources_Pause_Resume ====&lt;br /&gt;
# time shift&lt;br /&gt;
&lt;br /&gt;
==== Radio_Further_Traffic_and_Data_Services ====&lt;br /&gt;
=== Video_Broadcast_Reception ===&lt;br /&gt;
&lt;br /&gt;
== Video ==&lt;br /&gt;
=== Video_Playback_Formats_and_Codecs ===&lt;br /&gt;
# containers&lt;br /&gt;
# codecs&lt;br /&gt;
# resolutions&lt;br /&gt;
# frame rates&lt;br /&gt;
&lt;br /&gt;
=== Video_Decoding_Performance ===&lt;br /&gt;
&lt;br /&gt;
== Voice ==&lt;br /&gt;
=== Voice_Tag_Processing ===&lt;br /&gt;
=== Voice_Recognition_Capabilties ===&lt;br /&gt;
=== Voice_Output_Functionality ===&lt;br /&gt;
&lt;br /&gt;
== Software Services ==&lt;br /&gt;
=== Software_Architectural_Requirements ===&lt;br /&gt;
=== Software_Update ===&lt;br /&gt;
=== Office_Applications ===&lt;br /&gt;
=== Security_Features ===&lt;br /&gt;
# user privacy&lt;br /&gt;
# data storage security&lt;br /&gt;
# data access authorization&lt;br /&gt;
&lt;br /&gt;
=== Gaming_Features ===&lt;br /&gt;
# pre-installed&lt;br /&gt;
# nomadic device&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T12:03:47Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=16 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| Place Element (address, coordinates, viewport)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| ClearDestination&lt;br /&gt;
| none&lt;br /&gt;
| Clear current destination / Stop navigation routing&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| List of: &amp;lt;Place Element, Landmark&amp;gt;&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| Place Element (address, coordinates, viewport)&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| Place Element List (address, coordinates, viewport)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Orientation &lt;br /&gt;
| Boolean&lt;br /&gt;
| orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| FollowGPS&lt;br /&gt;
| Boolean&lt;br /&gt;
| 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)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Layout&lt;br /&gt;
| Composition&lt;br /&gt;
| day / night / detailed - POIs / plain simple&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| SetUnits&lt;br /&gt;
| Enum&lt;br /&gt;
| Metric / Imperial / ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| MapCenter&lt;br /&gt;
| Composition&lt;br /&gt;
| Center the map ( Place Element (address, coordinates, viewport) )&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T11:49:31Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=16 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| Place Element (address, coordinates, viewport)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| ClearDestination&lt;br /&gt;
| none&lt;br /&gt;
| Clear current destination / Stop navigation routing&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| Place Element (address, coordinates, viewport)&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| Place Element List (address, coordinates, viewport)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Orientation &lt;br /&gt;
| Boolean&lt;br /&gt;
| orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| FollowGPS&lt;br /&gt;
| Boolean&lt;br /&gt;
| 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)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Layout&lt;br /&gt;
| Composition&lt;br /&gt;
| day / night / detailed - POIs / plain simple&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| SetUnits&lt;br /&gt;
| Enum&lt;br /&gt;
| Metric / Imperial / ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| MapCenter&lt;br /&gt;
| Composition&lt;br /&gt;
| Center the map ( Place Element (address, coordinates, viewport) )&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T11:48:06Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=16 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| Place Element (address, coordinates, viewport)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| ClearDestination&lt;br /&gt;
| none&lt;br /&gt;
| Clear current destination / Stop navigation routing&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| Place Element (address, coordinates, viewport)&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| Place Element (address, coordinates, viewport)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Orientation &lt;br /&gt;
| Boolean&lt;br /&gt;
| orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| FollowGPS&lt;br /&gt;
| Boolean&lt;br /&gt;
| 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)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Layout&lt;br /&gt;
| Composition&lt;br /&gt;
| day / night / detailed - POIs / plain simple&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| SetUnits&lt;br /&gt;
| Enum&lt;br /&gt;
| Metric / Imperial / ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| MapCenter&lt;br /&gt;
| Composition&lt;br /&gt;
| Center the map ( Place Element (address, coordinates, viewport) )&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T11:32:20Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=16 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| ClearDestination&lt;br /&gt;
| none&lt;br /&gt;
| Clear current destination / Stop navigation routing&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Orientation &lt;br /&gt;
| Boolean&lt;br /&gt;
| orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| FollowGPS&lt;br /&gt;
| Boolean&lt;br /&gt;
| 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)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Layout&lt;br /&gt;
| Composition&lt;br /&gt;
| day / night / detailed - POIs / plain simple&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| SetUnits&lt;br /&gt;
| Enum&lt;br /&gt;
| Metric / Imperial / ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| MapCenter&lt;br /&gt;
| Composition&lt;br /&gt;
| Center the map&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T11:17:58Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=15 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| ClearDestination&lt;br /&gt;
| none&lt;br /&gt;
| Clear current destination / Stop navigation routing&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Orientation &lt;br /&gt;
| Boolean&lt;br /&gt;
| orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| FollowGPS&lt;br /&gt;
| Boolean&lt;br /&gt;
| 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)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Layout&lt;br /&gt;
| Composition&lt;br /&gt;
| day / night / detailed - POIs / plain simple&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| SetUnits&lt;br /&gt;
| Enum&lt;br /&gt;
| Metric / Imperial / ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T11:08:39Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=14 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| ClearDestination&lt;br /&gt;
| none&lt;br /&gt;
| Clear current destination / Stop navigation routing&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Orientation &lt;br /&gt;
| Boolean&lt;br /&gt;
| orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| FollowGPS&lt;br /&gt;
| Boolean&lt;br /&gt;
| 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)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Layout&lt;br /&gt;
| Composition&lt;br /&gt;
| day / night / detailed - POIs / plain simple&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T11:08:24Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=13 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| ClearDestination&lt;br /&gt;
| none&lt;br /&gt;
| Clear current destination / Stop navigation routing&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Orientation &lt;br /&gt;
| Boolean&lt;br /&gt;
| orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| FollowGPS&lt;br /&gt;
| Boolean&lt;br /&gt;
| 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)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Layout&lt;br /&gt;
| Composition&lt;br /&gt;
| day / night / detailed - POIs / plain simple&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T10:33:31Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=13 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Orientation &lt;br /&gt;
| Boolean&lt;br /&gt;
| orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| FollowGPS&lt;br /&gt;
| Boolean&lt;br /&gt;
| 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)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Layout&lt;br /&gt;
| Composition&lt;br /&gt;
| day / night / detailed - POIs / plain simple&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T10:27:48Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=12 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Orientation &lt;br /&gt;
| Boolean&lt;br /&gt;
| orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| FollowGPS&lt;br /&gt;
| Boolean&lt;br /&gt;
| 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)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T10:26:52Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=11 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|-&lt;br /&gt;
| Orientation &lt;br /&gt;
| Boolean&lt;br /&gt;
| orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T10:25:41Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=10 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T10:25:20Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=9 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Panning&lt;br /&gt;
| Integer&lt;br /&gt;
| panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
| Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T10:22:03Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* API Functional Groups and Functions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
=== Car-Systems ===&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Composition&lt;br /&gt;
| Remaining %, Temperature&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=6 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driving Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Comfort, Auto, Sport, Eco, Manual&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Generated Car Sound Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Normal, Quiet, Sportive&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
[[Category:Navigation]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=9 | Maps / Navigation&lt;br /&gt;
| Navigation Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Guiding, Off-Route, ...&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Destination&lt;br /&gt;
| ?&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Routing Options&lt;br /&gt;
| Composition&lt;br /&gt;
| Shortest/Fastest, Free/Don't care, Highway/Don't care, ...&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Get Route&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| POI&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Latest Destination&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get&lt;br /&gt;
|-&lt;br /&gt;
| Stored Locations&lt;br /&gt;
| Composition&lt;br /&gt;
| ?&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch): '0' - 2D Bird;s eye view; '15' - 3D view 15 degrees&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom): '2' - zoom in with factor 2; '-2' zoom out with factor -2; factor: &amp;gt; 1 and &amp;lt; -1&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Multimedia ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Multimedia&lt;br /&gt;
&lt;br /&gt;
=== Communication ===&lt;br /&gt;
Basically, IVI shares Qt Mobility functions.&lt;br /&gt;
This section is for IVI exclusive functionality about Communication&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/Navigation</id>
		<title>In-vehicle/Roadmap/Navigation</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/Navigation"/>
				<updated>2011-06-27T09:40:08Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal of navigation framework.&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
== Use Cases ==&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
...&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/Navigation</id>
		<title>In-vehicle/Roadmap/Navigation</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/Navigation"/>
				<updated>2011-06-27T09:36:11Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal of navigation framework.&lt;br /&gt;
&lt;br /&gt;
== Abstract ==&lt;br /&gt;
&lt;br /&gt;
== Use Cases ==&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/Navigation</id>
		<title>In-vehicle/Roadmap/Navigation</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/Navigation"/>
				<updated>2011-06-27T09:26:11Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: Created page with &amp;quot;This is a proposal of navigation framework.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a proposal of navigation framework.&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap</id>
		<title>In-vehicle/Roadmap</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap"/>
				<updated>2011-06-27T09:10:13Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* High-level Roadmap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== High-level Roadmap ==&lt;br /&gt;
&lt;br /&gt;
The big picture:&lt;br /&gt;
* [[In-vehicle/Roadmap/FeatureScope|Feature Scope]]&lt;br /&gt;
* [[In-vehicle/Roadmap/SystemArchitecture|System Architecture]]&lt;br /&gt;
&lt;br /&gt;
Details on Roadmap items:&lt;br /&gt;
* [[In-vehicle/Roadmap/AutomotiveNetworking|Automotive Networking]]&lt;br /&gt;
* [[In-vehicle/Roadmap/AudioManagement|Audio management]]&lt;br /&gt;
* [[In-vehicle/Roadmap/UX|User Experience]]&lt;br /&gt;
* [[In-vehicle/Roadmap/API|API]]&lt;br /&gt;
* App Store Demonstration&lt;br /&gt;
* CE Device connectivity&lt;br /&gt;
* [[In-vehicle/Roadmap/Navigation|Navigation]]&lt;br /&gt;
* Auto UX&lt;br /&gt;
* BSP/ARM-support&lt;br /&gt;
&lt;br /&gt;
To help the discussion of the road map content, there is a separate overview of the [[In-vehicle/Roadmap/FeatureScope|potential feature scope]] for In-Vehicle Infotainment.&lt;br /&gt;
&lt;br /&gt;
== Feature list from Bugzilla ==&lt;br /&gt;
Feature suggestions and planning is tracked in the MeeGo bugzilla system.&lt;br /&gt;
&lt;br /&gt;
[https://bugs.meego.com/enter_bug.cgi?product=MeeGo%20IVI%20Features Submit new MeeGo IVI feature suggestions]&lt;br /&gt;
&lt;br /&gt;
New feature suggestions need design and development resources to be committed before they become &amp;quot;ACCEPTED&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[https://bugs.meego.com/report.cgi?x_axis_field=bug_status&amp;amp;y_axis_field=version&amp;amp;z_axis_field=&amp;amp;query_format=report-table&amp;amp;short_desc_type=allwordssubstr&amp;amp;short_desc=&amp;amp;classification=MeeGo+Features&amp;amp;longdesc_type=allwordssubstr&amp;amp;longdesc=&amp;amp;bug_file_loc_type=allwordssubstr&amp;amp;bug_file_loc=&amp;amp;deadlinefrom=&amp;amp;deadlineto=&amp;amp;rep_platform=Automotive&amp;amp;emailassigned_to1=1&amp;amp;emailtype1=substring&amp;amp;email1=&amp;amp;emailassigned_to2=1&amp;amp;emailreporter2=1&amp;amp;emailqa_contact2=1&amp;amp;emailcc2=1&amp;amp;emailtype2=substring&amp;amp;email2=&amp;amp;bugidtype=include&amp;amp;bug_id=&amp;amp;votes=&amp;amp;chfieldfrom=&amp;amp;chfieldto=Now&amp;amp;chfieldvalue=&amp;amp;format=table&amp;amp;action=wrap&amp;amp;field0-0-0=noop&amp;amp;type0-0-0=noop&amp;amp;value0-0-0= Current status of features suggested or planned for MeeGo IVI]&lt;br /&gt;
&lt;br /&gt;
== MeeGo 1.2 Target Features ==&lt;br /&gt;
The MeeGo 1.2 development milestones are:&lt;br /&gt;
* November 1, 2010 MeeGo 1.2 merge window open&lt;br /&gt;
* January 20, 2011 MeeGo 1.2 Feature freeze (Alpha finish, Beta start)&lt;br /&gt;
* March 20, 2011 MeeGo 1.2 Release Candidate start&lt;br /&gt;
* April 29, 2011 MeeGo 1.2 Release branch created&lt;br /&gt;
* May 19, 2011 MeeGo 1.2.0 Final Release&lt;br /&gt;
&lt;br /&gt;
The new features planned for the MeeGo IVI 1.2 release are:&lt;br /&gt;
* Terminal Mode from Nokia [https://bugs.meego.com/show_bug.cgi?id=8704 Feature 8704]&lt;br /&gt;
* Integration of EMGD graphics [https://bugs.meego.com/show_bug.cgi?id=6863 Feature 6863] [http://bugs.meego.com/show_bug.cgi?id=8815 Feature 8815]&lt;br /&gt;
* Integration of TopCliff/Crown Bay drivers [https://bugs.meego.com/show_bug.cgi?id=6862 Feature 6862]&lt;br /&gt;
* Integration of Crossville ML7213/OKI IVI IOH drivers [https://bugs.meego.com/show_bug.cgi?id=12050 Feature 12050]&lt;br /&gt;
* Updating IVI Home screen with new layout for the task launch menus and porting from QT to QML.&lt;br /&gt;
* Updating sample apps (browser, contacts, video player, photo player, music player, settings) from MeeGo Touch Framework based (MTF) to QML based.&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/API</id>
		<title>In-vehicle/Roadmap/API</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/API"/>
				<updated>2011-06-27T09:09:13Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* API Functional Groups and Functions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Automotive API ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
[[File:MeeGo-IVI-Stack.png|800px|MeeGo IVI Stack]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Requirements ==&lt;br /&gt;
&lt;br /&gt;
=== Functionality ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
If an API is implemented it must adhere to the API specification:&lt;br /&gt;
* Parameters are required to have the specified types and must accept values within the specified range.&lt;br /&gt;
* Return values must be of the specified type and only return values within the specified range.&lt;br /&gt;
* Only the specified exceptions (if exceptions are used at all by the API) must be thrown.&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== API Functional Groups and Functions ==&lt;br /&gt;
&lt;br /&gt;
This section list proposed APIs and places them into functional groups.&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;br /&gt;
&lt;br /&gt;
{|  x:str border=1 cellpadding=0 cellspacing=0 &lt;br /&gt;
|  rowspan=2 | Group&lt;br /&gt;
|  rowspan=2 | Function&lt;br /&gt;
|  colspan=2 | Parameter&lt;br /&gt;
|  rowspan=2 | Operation&lt;br /&gt;
|- &lt;br /&gt;
| Type&lt;br /&gt;
| Contents&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Application&amp;lt;br&amp;gt;&lt;br /&gt;
Interoperability&lt;br /&gt;
| Supported Features&lt;br /&gt;
| Integer&lt;br /&gt;
| Bit setting per each APIs&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Manufacturer&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Car Model Name&lt;br /&gt;
| String&lt;br /&gt;
| 　&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=5 | Car Information&lt;br /&gt;
| Car Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Sedan, Coupe, Cabriole, Roadster, SUV, Truck&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Door Type&lt;br /&gt;
| Composition&lt;br /&gt;
| # of doors in first row, second row, third row&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Engine Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Gasoline, Diesel, Hybrid, Electric&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Type&lt;br /&gt;
| Enum&lt;br /&gt;
| Auto/Manual&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Information&lt;br /&gt;
| Composition&lt;br /&gt;
| Radius of Wheel, Wheel Track (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=17 | Running Status&lt;br /&gt;
| Vehicle Power Mode&lt;br /&gt;
| Enum&lt;br /&gt;
| Off / Acc / Run / Ignition&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Speedometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Speed&lt;br /&gt;
| Integer&lt;br /&gt;
| rpm&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Trip meter&lt;br /&gt;
| Integer&lt;br /&gt;
| km or mile&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Gear Status&lt;br /&gt;
| Enum&lt;br /&gt;
| 0=N,1,2,3,4,5,6,7,8,9,10, 64=R, 128=Auto&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Cruise Control Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate, Speed&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| Idle, Engaged, Malfunction&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Head, Turn Right, Turn Left, Brake, Fog, Hazard Signal, Parking)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Interior Lights Status&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each light (Driver, Passenger, Center)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Horn&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Chime&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Coolant&lt;br /&gt;
| Composition&lt;br /&gt;
| Level, Temperature, Pressure&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Compass Status&lt;br /&gt;
| Enum&lt;br /&gt;
| N, S, W, E, NE, NW, SE, SW&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Angle&lt;br /&gt;
| Integer&lt;br /&gt;
| (for GPS Dead Reckoning)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Wheel Tick Sensor&lt;br /&gt;
| Composition&lt;br /&gt;
| Left Wheel Rotation Counter, Right Wheel Rotation Counter (for GPS Dead Reckoning)&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| GPS Data - Date, Time&lt;br /&gt;
| Composition&lt;br /&gt;
| Date, Time&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
| GPS Data - Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Latitude, Longitude&lt;br /&gt;
| Get&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=8 | Maintenance&lt;br /&gt;
| Odometer&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Fuel&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining % (Remaining, Total Capacity in liter or gallon)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Engine Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transmission Oil&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Brake Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Washer Fluid&lt;br /&gt;
| Integer&lt;br /&gt;
| Remaining %&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage, Current&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Tire Pressure&lt;br /&gt;
| Composition&lt;br /&gt;
| PSI or Status (Normal, Low) per each tire (front left, front right, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=8 | Personalization&lt;br /&gt;
| Key ID (Driver ID)&lt;br /&gt;
| Enum&lt;br /&gt;
| 　&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Language&lt;br /&gt;
| Enum&lt;br /&gt;
| English, Spanish, French, …&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Measurement System&lt;br /&gt;
| Boolean&lt;br /&gt;
| Km (litter), mile (gallon)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Mirror&lt;br /&gt;
| Composition&lt;br /&gt;
| 2byte(Tilt, Pan) position per each mirror (driver side, passenger side, inside mirror)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (slide, tilt)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Driver Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Passenger Seat Position&lt;br /&gt;
| Composition&lt;br /&gt;
| Level per each part (recline seatback, slide, cushion height, headrest, back cushion, side cushion)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Dashboard Illumination&lt;br /&gt;
| Enum&lt;br /&gt;
| % of Illumination ( 0 : Darkest, 100 : Brightest)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=10 | Driving Safety&lt;br /&gt;
| Antilock Braking System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Engaged&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Transaction Control System&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), On/Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Vehicle Top Speed Limit&lt;br /&gt;
| Integer&lt;br /&gt;
| km/h or mph (0 means no limitation)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|- &lt;br /&gt;
| Airbag Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Activate/Deactivate/Deployment per each airbag (driver, passenger, side)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Open Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Open/Ajar/Close per each door (driver, passenger, rear left, rear right, trunk, fuel filler cap, hood)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Door Lock Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each door (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Occupants Status&lt;br /&gt;
| Composition&lt;br /&gt;
| Type (Adults/Child/Vacant) per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Seat Belt&lt;br /&gt;
| Composition&lt;br /&gt;
| Fasten or not per each seat (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Window Lock&lt;br /&gt;
| Composition&lt;br /&gt;
| Lock/Unlock per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Obstacle Distance&lt;br /&gt;
| Composition&lt;br /&gt;
| Sensor Status (available or not), Distance per each sensor (Position #)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=3 | Parking&lt;br /&gt;
| Security Alert&lt;br /&gt;
| Enum&lt;br /&gt;
| Available (Equipped), Idle, Activated, Alarm Detected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Brake&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Parking Lights&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=16 | Climate&amp;lt;br&amp;gt;&lt;br /&gt;
/ Environment&lt;br /&gt;
| Interior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Temperature&lt;br /&gt;
| Integer&lt;br /&gt;
| 0.1 degrees of Celsius&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Exterior Brightness&lt;br /&gt;
| Integer&lt;br /&gt;
| lux&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Rain Sensor&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of rain intensity ( 0 : No Rain ~ 10 : Heaviest Rain)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Windshield Wiper&lt;br /&gt;
| Enum&lt;br /&gt;
| Level of speed ( 0 : Off, 1 : Slowest, 5 : Fastest, 10 : Auto)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| HVAC Fan&lt;br /&gt;
| Composition&lt;br /&gt;
| Airflow Direction (Front Panel, Floor Duct, Front+Floor, Defroster+Floor), Level of Fan Speed (0~7), Target Temperature (1 degrees of Celsius)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Conditioning&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Air-Recirculation&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Defrost&lt;br /&gt;
| Composition&lt;br /&gt;
| On / Off per each position (Windshield, Rear Window, Side Mirrors)&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Steering Wheel Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Heater&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Seat Cooler&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Window&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness per each window (driver, passenger, rear left, rear right)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Sunroof&lt;br /&gt;
| Composition&lt;br /&gt;
| % of openness ( 0 : Closed, 100 : Fully Opened), % of tilt ( 0 : Closed, 100 : Maximum Tilted )&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Convertible roof&lt;br /&gt;
| Boolean&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
|  rowspan=7 | Electric Vehicle&lt;br /&gt;
| Hybrid Power Status&lt;br /&gt;
| Enum&lt;br /&gt;
| Idle, Battery Mode, Engine Mode, Hybrid Mode&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Charging Status&lt;br /&gt;
| Boolen&lt;br /&gt;
| On / Off&lt;br /&gt;
| Get / Noti / Set&lt;br /&gt;
|- &lt;br /&gt;
| Battery Voltage&lt;br /&gt;
| Composition&lt;br /&gt;
| Voltage ( 0.1 volt ), Level of charge (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Battery Charge Cord&lt;br /&gt;
| Boolen&lt;br /&gt;
| Not Connected / Connected&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Target Charge Level&lt;br /&gt;
| Integer&lt;br /&gt;
| Level of charge capacity (0~100%)&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to full charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|- &lt;br /&gt;
| Est. time to target charge&lt;br /&gt;
| Integer&lt;br /&gt;
| Number of minutes remaining&lt;br /&gt;
| Get / Noti&lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=2 | Maps / Navigation&lt;br /&gt;
| Pitch&lt;br /&gt;
| Integer&lt;br /&gt;
| 2D/3D representation (pitch)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|-&lt;br /&gt;
| Zoom&lt;br /&gt;
| Integer&lt;br /&gt;
| zooming (IN / OUT / auto-zoom)&lt;br /&gt;
| Get / Set&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope</id>
		<title>In-vehicle/Roadmap/FeatureScope</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope"/>
				<updated>2011-06-25T11:11:17Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation_Engine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This topic provides an outline of requirements for a head unit.  The requirements are derived from a real life development project for in-vehicle infotainment platform.  ''This is still work in progress--the content will be added gradually.''&lt;br /&gt;
&lt;br /&gt;
Some of the requirements below will be fulfilled outside of the MeeGo IVI based software.  For example, the implementation of CAN network interface and early audio functions most probably falls into this category.  The decisions about implementation of specific requirements in MeeGo IVI software will be made assuming a specific [[In-vehicle/Roadmap/SystemArchitecture|system architecture]].&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
=== Performance ===&lt;br /&gt;
# After power-on, the head unit displays a static splash screen within 200 ms.&lt;br /&gt;
# After power-on, the head unit displays an animated splash screen (pre-defined, fixed) within 200 ms and at the frame rate above 4 fps.&lt;br /&gt;
# After power-on, the head unit is able to play early audio (e.g. chimes and gongs--minimal set, best suited type, simple) within max. 1 s.&lt;br /&gt;
# After power-on, the head unit plays FM radio, resuming the last station before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit plays compressed audio from a connected media device (e.g. MP3 from USB stick), resuming the last track played before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the rear view camera output within max. 2 s.&lt;br /&gt;
# After power-on, the head unit accepts first user input (e.g. HMI menu, screen, volume control) within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the Navigation map and starts the route guidance, resuming the previous route, within max. 5 s.&lt;br /&gt;
# Head unit reacts to user input via HMI (touch screen events, button or switch presses) within max. 100 ms.  Head unit displays interim response (e.g. sand glass) for all requests that cannot be completed within this time&lt;br /&gt;
# Head unit performs voice recognition for a single word against G2P vocabulary within max. 200 ms measured from the end of utterance (silence detection) to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit performs hand writing recognition against Chinese standard 2000 character set within max. 200 ms measured from end of entry to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit exhibits the refresh rate of min 15 fps for the navigation map in any scaling.&lt;br /&gt;
# Head unit exhibits a graphics rendering frame rate (for HMI animations and Navigation maps) of min. 15 fps.&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
=== Audio_Codecs_Playback ===&lt;br /&gt;
# Head unit supports the following codecs:&lt;br /&gt;
## AAC LC&lt;br /&gt;
## MP3&lt;br /&gt;
## WMA&lt;br /&gt;
## WAV&lt;br /&gt;
## Ogg Vorbis&lt;br /&gt;
## FLAC&lt;br /&gt;
&lt;br /&gt;
=== Audio_Processing_And_Management ===&lt;br /&gt;
# Head unit supports up to 4 independent audio zones (sinks).  One zone if 5.1 channels (e.g. cabin speakers) and others are stereo.  (Each zone might require its own independent audio processing and audio codec instances.)&lt;br /&gt;
# Head unit allows the user to adjust at least audio treble and bass level.&lt;br /&gt;
# Head unit allows the user to adjust balance and fade level.&lt;br /&gt;
# Head unit is capable of playing back any of its sources to any of 4 audio zones including simultaneous playback to up to 4 audio zones.&lt;br /&gt;
# Head unit uses pre-defined fader ramps when switching the audio source for any particular audio zone.&lt;br /&gt;
# For each audio zone, the head unit keeps track of the most recently played audio source and restores it upon startup.  (For example, when the FM tuner was played to the cabin speakers and the head unit has been switched off, it would attempt tuning to the same FM station and putting it to the cabin speakers upon the next startup.)&lt;br /&gt;
# For each audio zone, all available audio sources are assigned a unique priority.  When an audio source is being played back and a higher priority source becomes available (e.g. the phone application attempts to play a ring tone), the latter overrides the former.&lt;br /&gt;
## As a configuration option, overriding can be done either by muting the first source and playing back the second source, or by lowering the volume of the first source and mixing it with the second source.&lt;br /&gt;
&lt;br /&gt;
=== Audio_Generation ===&lt;br /&gt;
# chimes and gongs&lt;br /&gt;
# calibration to interior&lt;br /&gt;
&lt;br /&gt;
=== Audio_Recording ===&lt;br /&gt;
# voice&lt;br /&gt;
# radio&lt;br /&gt;
# podcasts&lt;br /&gt;
&lt;br /&gt;
=== Audio_Volume_Control ===&lt;br /&gt;
# Volume level is adjustable by the user.&lt;br /&gt;
## Adjustments by the user are only accepted during actual audio playback.  (In other words, any volume changes e.g. during start up phase and before the audio output can be heard will be ignored.)&lt;br /&gt;
## The volume level selection by the user is maintained for each audio source / sink pair individually.&lt;br /&gt;
# Volume level is adjusted by the head unit accordingly to the current vehicle speed.&lt;br /&gt;
# Volume level set by the user is preserved through shutdown cycle.&lt;br /&gt;
## Upon start up, the previous volume level is only restored up to a defined 'start up maximum' (as contrasted to the 'absolute maximum' that can be set after the head unit is up and running in its normal mode).&lt;br /&gt;
# Under limit volume need to be set as some low level NOT minimum just to make sure that at leaset user can recognize low level volume even though user set the volume to minimum &amp;quot;basically mute&amp;quot; before the power cycle&lt;br /&gt;
# Upper limit volume need to be set as some high level NOT maximum just to make sure that user can not be annoyed due to the previous maximum volume setting.&lt;br /&gt;
# In Emergency Case, volume should not be adjusted by the user, volume need to be fit as some very loud level as much as no sound is masked with ambient noisy backgroud,&lt;br /&gt;
&lt;br /&gt;
=== Handfree Functionality ===&lt;br /&gt;
# Noise reduction &lt;br /&gt;
# Echo cancellation &lt;br /&gt;
# Residual echo cancellation &lt;br /&gt;
# Automatic gain control&lt;br /&gt;
# Programmable Equalization &lt;br /&gt;
# Performance Requirement &lt;br /&gt;
  - objective testing : VDA 1.6 &lt;br /&gt;
  - subjective testing : In-Vehicle live testing&lt;br /&gt;
&lt;br /&gt;
== Connectivity ==&lt;br /&gt;
=== Wireless_Interfaces ===&lt;br /&gt;
==== Wireless_Infrared_IRDA ====&lt;br /&gt;
==== Wireless_WiFi_Connection ====&lt;br /&gt;
# access point&lt;br /&gt;
# client&lt;br /&gt;
&lt;br /&gt;
==== Wireless_Bluetooth_Connection_and_Telephony ====&lt;br /&gt;
==== Wireless_Cellular_Mobile_Telephony ====&lt;br /&gt;
==== Wireless_BT_Hands-free_Telephony ====&lt;br /&gt;
# profiles&lt;br /&gt;
# Acoustic Echo Cancellation / Noise Reduction (AEC / NR)&lt;br /&gt;
# single and dual microphone&lt;br /&gt;
&lt;br /&gt;
=== Wired_Interfaces ===&lt;br /&gt;
==== USB_Connection_to_CE_Devices ====&lt;br /&gt;
==== Removable_SD_Card_Connections ====&lt;br /&gt;
&lt;br /&gt;
=== Internet_Access_and_Browser ===&lt;br /&gt;
# internet radio&lt;br /&gt;
# podcasts&lt;br /&gt;
# applications (e.g. google maps)&lt;br /&gt;
# social networks&lt;br /&gt;
&lt;br /&gt;
=== Phone_Functionality ===&lt;br /&gt;
# internal phone book&lt;br /&gt;
# VoIP&lt;br /&gt;
&lt;br /&gt;
=== Terminal_Mode_Functionality ===&lt;br /&gt;
=== Microsoft_Plays_From_Device ===&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Personalization ===&lt;br /&gt;
# user profiles&lt;br /&gt;
&lt;br /&gt;
== Driver_Assistance ==&lt;br /&gt;
# camera input processing&lt;br /&gt;
# electronic horizon&lt;br /&gt;
&lt;br /&gt;
== Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
== HMI ==&lt;br /&gt;
=== User_Inputs_Support ===&lt;br /&gt;
==== UI_Devices_Support ====&lt;br /&gt;
==== UI_Touch_Sreen_Hand_Writing_Detection ====&lt;br /&gt;
==== UI_Speech_Recognition_Function ====&lt;br /&gt;
1. Recognition Category&lt;br /&gt;
   1. discrete command - command, single digit ( e.g. &amp;quot;dial&amp;quot;,'1','2',..etc )&lt;br /&gt;
   2. continuous command - continuous digit ( e.g. &amp;quot;dial 555-1212&amp;quot;, &amp;quot; 555-1212&amp;quot; )&lt;br /&gt;
   3. natural language understaning - flexible recognition ( e.g. &amp;quot;I want to make a call to john&amp;quot;,&lt;br /&gt;
     &amp;quot;please route to the san franciso regency hyatt hotel&amp;quot;,..etc)&lt;br /&gt;
&lt;br /&gt;
2. Recognition Response time &lt;br /&gt;
   1. discrete command - 300ms &lt;br /&gt;
   2. continuous command - 1200ms &lt;br /&gt;
   3. natural language understanding - 1500ms&lt;br /&gt;
&lt;br /&gt;
3. Recognition performance measurement &lt;br /&gt;
   1. overall accuracy measurement&lt;br /&gt;
      Average Sentence Accuracy = (Total Number of Correct Sentences)/(Total Number of Sentence Attempted)&lt;br /&gt;
   2. individual accuracy measurement &lt;br /&gt;
      Average Word Accuracy = ((Total number of attempts) - (insertions) - (deletions) - (substitutions))/Total number of attempts&lt;br /&gt;
  &lt;br /&gt;
4. Regnition performance requirement &lt;br /&gt;
   1. discrete command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection ) &lt;br /&gt;
   2. continuous command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection )&lt;br /&gt;
&lt;br /&gt;
=== Multiple_HMI_Languages ===&lt;br /&gt;
=== Software_Support ===&lt;br /&gt;
=== Users_Manual_Integrated ===&lt;br /&gt;
=== Graphics_Functions ===&lt;br /&gt;
&lt;br /&gt;
== Media ==&lt;br /&gt;
=== Media_Player_and_Browser_Requirements ===&lt;br /&gt;
# number of player instances&lt;br /&gt;
# playlists&lt;br /&gt;
# ripping&lt;br /&gt;
&lt;br /&gt;
=== Storage_Media_Support ===&lt;br /&gt;
&lt;br /&gt;
== Navigation ==&lt;br /&gt;
=== Navigation_Engine ===&lt;br /&gt;
# map source&lt;br /&gt;
# routing&lt;br /&gt;
# searching (local / web service)&lt;br /&gt;
# geocoding / reverse geocoding&lt;br /&gt;
&lt;br /&gt;
=== Map_Function ===&lt;br /&gt;
# database&lt;br /&gt;
# 2D/3D representation (pitch)&lt;br /&gt;
# zooming (IN / OUT / auto-zoom)&lt;br /&gt;
# panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
# orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
# 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)&lt;br /&gt;
# set / clear destination&lt;br /&gt;
# center the map&lt;br /&gt;
# set/change map layout (day / night / detailed - POIs / plain simple)&lt;br /&gt;
# bookmarks (see also Destination_Import)&lt;br /&gt;
# OSD (on-screen display) information&lt;br /&gt;
&lt;br /&gt;
=== Real_Time_Traffic_Information ===&lt;br /&gt;
=== Speech_Support_for_Navigation ===&lt;br /&gt;
=== Positioning_Capabilities ===&lt;br /&gt;
=== Points_of_Interestes_POIs ===&lt;br /&gt;
=== Destination_Import ===&lt;br /&gt;
# from file (eg. USB)&lt;br /&gt;
# from web server / web service&lt;br /&gt;
# free input&lt;br /&gt;
# coordinate units conversion&lt;br /&gt;
&lt;br /&gt;
== Network ==&lt;br /&gt;
=== CAN_Network_Interface ===&lt;br /&gt;
=== MOST_Network_Interface ===&lt;br /&gt;
=== Ethernet_Network_Interface ===&lt;br /&gt;
# DLNA&lt;br /&gt;
# AVB&lt;br /&gt;
&lt;br /&gt;
=== Serial_Network_Interfaces ===&lt;br /&gt;
# UART&lt;br /&gt;
# LIN&lt;br /&gt;
&lt;br /&gt;
=== Gateway ===&lt;br /&gt;
&lt;br /&gt;
== Power ==&lt;br /&gt;
=== Power_Management_Master ===&lt;br /&gt;
=== Power_Modes ===&lt;br /&gt;
=== Wakeup_Conditions ===&lt;br /&gt;
=== Monitor_Voltage_Ranges ===&lt;br /&gt;
&lt;br /&gt;
== Telematics and Data Services ==&lt;br /&gt;
=== Emergency_and_Breakdown_Call ===&lt;br /&gt;
=== JAVA_Telematics_Client ===&lt;br /&gt;
=== Remote_Diagnostics ===&lt;br /&gt;
=== Vehicle_Tracking ===&lt;br /&gt;
&lt;br /&gt;
== Radio and Video Broadcast Tuner ==&lt;br /&gt;
=== Radio_Broadcast_Reception ===&lt;br /&gt;
==== Radio_AM_FM_Broadcast_Reception ====&lt;br /&gt;
==== Radio_SDARS_Broadcast_Reception ====&lt;br /&gt;
==== Radio_HD_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DAB_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DRM_Broadcast_Reception ====&lt;br /&gt;
==== Broadcast_Sources_Pause_Resume ====&lt;br /&gt;
# time shift&lt;br /&gt;
&lt;br /&gt;
==== Radio_Further_Traffic_and_Data_Services ====&lt;br /&gt;
=== Video_Broadcast_Reception ===&lt;br /&gt;
&lt;br /&gt;
== Video ==&lt;br /&gt;
=== Video_Playback_Formats_and_Codecs ===&lt;br /&gt;
# containers&lt;br /&gt;
# codecs&lt;br /&gt;
# resolutions&lt;br /&gt;
# frame rates&lt;br /&gt;
&lt;br /&gt;
=== Video_Decoding_Performance ===&lt;br /&gt;
&lt;br /&gt;
== Voice ==&lt;br /&gt;
=== Voice_Tag_Processing ===&lt;br /&gt;
=== Voice_Recognition_Capabilties ===&lt;br /&gt;
=== Voice_Output_Functionality ===&lt;br /&gt;
&lt;br /&gt;
== Software Services ==&lt;br /&gt;
=== Software_Architectural_Requirements ===&lt;br /&gt;
=== Software_Update ===&lt;br /&gt;
=== Office_Applications ===&lt;br /&gt;
=== Security_Features ===&lt;br /&gt;
# user privacy&lt;br /&gt;
# data storage security&lt;br /&gt;
# data access authorization&lt;br /&gt;
&lt;br /&gt;
=== Gaming_Features ===&lt;br /&gt;
# pre-installed&lt;br /&gt;
# nomadic device&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope</id>
		<title>In-vehicle/Roadmap/FeatureScope</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope"/>
				<updated>2011-06-25T11:10:44Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation_Engine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This topic provides an outline of requirements for a head unit.  The requirements are derived from a real life development project for in-vehicle infotainment platform.  ''This is still work in progress--the content will be added gradually.''&lt;br /&gt;
&lt;br /&gt;
Some of the requirements below will be fulfilled outside of the MeeGo IVI based software.  For example, the implementation of CAN network interface and early audio functions most probably falls into this category.  The decisions about implementation of specific requirements in MeeGo IVI software will be made assuming a specific [[In-vehicle/Roadmap/SystemArchitecture|system architecture]].&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
=== Performance ===&lt;br /&gt;
# After power-on, the head unit displays a static splash screen within 200 ms.&lt;br /&gt;
# After power-on, the head unit displays an animated splash screen (pre-defined, fixed) within 200 ms and at the frame rate above 4 fps.&lt;br /&gt;
# After power-on, the head unit is able to play early audio (e.g. chimes and gongs--minimal set, best suited type, simple) within max. 1 s.&lt;br /&gt;
# After power-on, the head unit plays FM radio, resuming the last station before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit plays compressed audio from a connected media device (e.g. MP3 from USB stick), resuming the last track played before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the rear view camera output within max. 2 s.&lt;br /&gt;
# After power-on, the head unit accepts first user input (e.g. HMI menu, screen, volume control) within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the Navigation map and starts the route guidance, resuming the previous route, within max. 5 s.&lt;br /&gt;
# Head unit reacts to user input via HMI (touch screen events, button or switch presses) within max. 100 ms.  Head unit displays interim response (e.g. sand glass) for all requests that cannot be completed within this time&lt;br /&gt;
# Head unit performs voice recognition for a single word against G2P vocabulary within max. 200 ms measured from the end of utterance (silence detection) to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit performs hand writing recognition against Chinese standard 2000 character set within max. 200 ms measured from end of entry to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit exhibits the refresh rate of min 15 fps for the navigation map in any scaling.&lt;br /&gt;
# Head unit exhibits a graphics rendering frame rate (for HMI animations and Navigation maps) of min. 15 fps.&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
=== Audio_Codecs_Playback ===&lt;br /&gt;
# Head unit supports the following codecs:&lt;br /&gt;
## AAC LC&lt;br /&gt;
## MP3&lt;br /&gt;
## WMA&lt;br /&gt;
## WAV&lt;br /&gt;
## Ogg Vorbis&lt;br /&gt;
## FLAC&lt;br /&gt;
&lt;br /&gt;
=== Audio_Processing_And_Management ===&lt;br /&gt;
# Head unit supports up to 4 independent audio zones (sinks).  One zone if 5.1 channels (e.g. cabin speakers) and others are stereo.  (Each zone might require its own independent audio processing and audio codec instances.)&lt;br /&gt;
# Head unit allows the user to adjust at least audio treble and bass level.&lt;br /&gt;
# Head unit allows the user to adjust balance and fade level.&lt;br /&gt;
# Head unit is capable of playing back any of its sources to any of 4 audio zones including simultaneous playback to up to 4 audio zones.&lt;br /&gt;
# Head unit uses pre-defined fader ramps when switching the audio source for any particular audio zone.&lt;br /&gt;
# For each audio zone, the head unit keeps track of the most recently played audio source and restores it upon startup.  (For example, when the FM tuner was played to the cabin speakers and the head unit has been switched off, it would attempt tuning to the same FM station and putting it to the cabin speakers upon the next startup.)&lt;br /&gt;
# For each audio zone, all available audio sources are assigned a unique priority.  When an audio source is being played back and a higher priority source becomes available (e.g. the phone application attempts to play a ring tone), the latter overrides the former.&lt;br /&gt;
## As a configuration option, overriding can be done either by muting the first source and playing back the second source, or by lowering the volume of the first source and mixing it with the second source.&lt;br /&gt;
&lt;br /&gt;
=== Audio_Generation ===&lt;br /&gt;
# chimes and gongs&lt;br /&gt;
# calibration to interior&lt;br /&gt;
&lt;br /&gt;
=== Audio_Recording ===&lt;br /&gt;
# voice&lt;br /&gt;
# radio&lt;br /&gt;
# podcasts&lt;br /&gt;
&lt;br /&gt;
=== Audio_Volume_Control ===&lt;br /&gt;
# Volume level is adjustable by the user.&lt;br /&gt;
## Adjustments by the user are only accepted during actual audio playback.  (In other words, any volume changes e.g. during start up phase and before the audio output can be heard will be ignored.)&lt;br /&gt;
## The volume level selection by the user is maintained for each audio source / sink pair individually.&lt;br /&gt;
# Volume level is adjusted by the head unit accordingly to the current vehicle speed.&lt;br /&gt;
# Volume level set by the user is preserved through shutdown cycle.&lt;br /&gt;
## Upon start up, the previous volume level is only restored up to a defined 'start up maximum' (as contrasted to the 'absolute maximum' that can be set after the head unit is up and running in its normal mode).&lt;br /&gt;
# Under limit volume need to be set as some low level NOT minimum just to make sure that at leaset user can recognize low level volume even though user set the volume to minimum &amp;quot;basically mute&amp;quot; before the power cycle&lt;br /&gt;
# Upper limit volume need to be set as some high level NOT maximum just to make sure that user can not be annoyed due to the previous maximum volume setting.&lt;br /&gt;
# In Emergency Case, volume should not be adjusted by the user, volume need to be fit as some very loud level as much as no sound is masked with ambient noisy backgroud,&lt;br /&gt;
&lt;br /&gt;
=== Handfree Functionality ===&lt;br /&gt;
# Noise reduction &lt;br /&gt;
# Echo cancellation &lt;br /&gt;
# Residual echo cancellation &lt;br /&gt;
# Automatic gain control&lt;br /&gt;
# Programmable Equalization &lt;br /&gt;
# Performance Requirement &lt;br /&gt;
  - objective testing : VDA 1.6 &lt;br /&gt;
  - subjective testing : In-Vehicle live testing&lt;br /&gt;
&lt;br /&gt;
== Connectivity ==&lt;br /&gt;
=== Wireless_Interfaces ===&lt;br /&gt;
==== Wireless_Infrared_IRDA ====&lt;br /&gt;
==== Wireless_WiFi_Connection ====&lt;br /&gt;
# access point&lt;br /&gt;
# client&lt;br /&gt;
&lt;br /&gt;
==== Wireless_Bluetooth_Connection_and_Telephony ====&lt;br /&gt;
==== Wireless_Cellular_Mobile_Telephony ====&lt;br /&gt;
==== Wireless_BT_Hands-free_Telephony ====&lt;br /&gt;
# profiles&lt;br /&gt;
# Acoustic Echo Cancellation / Noise Reduction (AEC / NR)&lt;br /&gt;
# single and dual microphone&lt;br /&gt;
&lt;br /&gt;
=== Wired_Interfaces ===&lt;br /&gt;
==== USB_Connection_to_CE_Devices ====&lt;br /&gt;
==== Removable_SD_Card_Connections ====&lt;br /&gt;
&lt;br /&gt;
=== Internet_Access_and_Browser ===&lt;br /&gt;
# internet radio&lt;br /&gt;
# podcasts&lt;br /&gt;
# applications (e.g. google maps)&lt;br /&gt;
# social networks&lt;br /&gt;
&lt;br /&gt;
=== Phone_Functionality ===&lt;br /&gt;
# internal phone book&lt;br /&gt;
# VoIP&lt;br /&gt;
&lt;br /&gt;
=== Terminal_Mode_Functionality ===&lt;br /&gt;
=== Microsoft_Plays_From_Device ===&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Personalization ===&lt;br /&gt;
# user profiles&lt;br /&gt;
&lt;br /&gt;
== Driver_Assistance ==&lt;br /&gt;
# camera input processing&lt;br /&gt;
# electronic horizon&lt;br /&gt;
&lt;br /&gt;
== Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
== HMI ==&lt;br /&gt;
=== User_Inputs_Support ===&lt;br /&gt;
==== UI_Devices_Support ====&lt;br /&gt;
==== UI_Touch_Sreen_Hand_Writing_Detection ====&lt;br /&gt;
==== UI_Speech_Recognition_Function ====&lt;br /&gt;
1. Recognition Category&lt;br /&gt;
   1. discrete command - command, single digit ( e.g. &amp;quot;dial&amp;quot;,'1','2',..etc )&lt;br /&gt;
   2. continuous command - continuous digit ( e.g. &amp;quot;dial 555-1212&amp;quot;, &amp;quot; 555-1212&amp;quot; )&lt;br /&gt;
   3. natural language understaning - flexible recognition ( e.g. &amp;quot;I want to make a call to john&amp;quot;,&lt;br /&gt;
     &amp;quot;please route to the san franciso regency hyatt hotel&amp;quot;,..etc)&lt;br /&gt;
&lt;br /&gt;
2. Recognition Response time &lt;br /&gt;
   1. discrete command - 300ms &lt;br /&gt;
   2. continuous command - 1200ms &lt;br /&gt;
   3. natural language understanding - 1500ms&lt;br /&gt;
&lt;br /&gt;
3. Recognition performance measurement &lt;br /&gt;
   1. overall accuracy measurement&lt;br /&gt;
      Average Sentence Accuracy = (Total Number of Correct Sentences)/(Total Number of Sentence Attempted)&lt;br /&gt;
   2. individual accuracy measurement &lt;br /&gt;
      Average Word Accuracy = ((Total number of attempts) - (insertions) - (deletions) - (substitutions))/Total number of attempts&lt;br /&gt;
  &lt;br /&gt;
4. Regnition performance requirement &lt;br /&gt;
   1. discrete command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection ) &lt;br /&gt;
   2. continuous command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection )&lt;br /&gt;
&lt;br /&gt;
=== Multiple_HMI_Languages ===&lt;br /&gt;
=== Software_Support ===&lt;br /&gt;
=== Users_Manual_Integrated ===&lt;br /&gt;
=== Graphics_Functions ===&lt;br /&gt;
&lt;br /&gt;
== Media ==&lt;br /&gt;
=== Media_Player_and_Browser_Requirements ===&lt;br /&gt;
# number of player instances&lt;br /&gt;
# playlists&lt;br /&gt;
# ripping&lt;br /&gt;
&lt;br /&gt;
=== Storage_Media_Support ===&lt;br /&gt;
&lt;br /&gt;
== Navigation ==&lt;br /&gt;
=== Navigation_Engine ===&lt;br /&gt;
# map source&lt;br /&gt;
# routing&lt;br /&gt;
# searching (local / web service)&lt;br /&gt;
&lt;br /&gt;
=== Map_Function ===&lt;br /&gt;
# database&lt;br /&gt;
# 2D/3D representation (pitch)&lt;br /&gt;
# zooming (IN / OUT / auto-zoom)&lt;br /&gt;
# panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
# orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
# 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)&lt;br /&gt;
# set / clear destination&lt;br /&gt;
# center the map&lt;br /&gt;
# set/change map layout (day / night / detailed - POIs / plain simple)&lt;br /&gt;
# bookmarks (see also Destination_Import)&lt;br /&gt;
# OSD (on-screen display) information&lt;br /&gt;
&lt;br /&gt;
=== Real_Time_Traffic_Information ===&lt;br /&gt;
=== Speech_Support_for_Navigation ===&lt;br /&gt;
=== Positioning_Capabilities ===&lt;br /&gt;
=== Points_of_Interestes_POIs ===&lt;br /&gt;
=== Destination_Import ===&lt;br /&gt;
# from file (eg. USB)&lt;br /&gt;
# from web server / web service&lt;br /&gt;
# free input&lt;br /&gt;
# coordinate units conversion&lt;br /&gt;
&lt;br /&gt;
== Network ==&lt;br /&gt;
=== CAN_Network_Interface ===&lt;br /&gt;
=== MOST_Network_Interface ===&lt;br /&gt;
=== Ethernet_Network_Interface ===&lt;br /&gt;
# DLNA&lt;br /&gt;
# AVB&lt;br /&gt;
&lt;br /&gt;
=== Serial_Network_Interfaces ===&lt;br /&gt;
# UART&lt;br /&gt;
# LIN&lt;br /&gt;
&lt;br /&gt;
=== Gateway ===&lt;br /&gt;
&lt;br /&gt;
== Power ==&lt;br /&gt;
=== Power_Management_Master ===&lt;br /&gt;
=== Power_Modes ===&lt;br /&gt;
=== Wakeup_Conditions ===&lt;br /&gt;
=== Monitor_Voltage_Ranges ===&lt;br /&gt;
&lt;br /&gt;
== Telematics and Data Services ==&lt;br /&gt;
=== Emergency_and_Breakdown_Call ===&lt;br /&gt;
=== JAVA_Telematics_Client ===&lt;br /&gt;
=== Remote_Diagnostics ===&lt;br /&gt;
=== Vehicle_Tracking ===&lt;br /&gt;
&lt;br /&gt;
== Radio and Video Broadcast Tuner ==&lt;br /&gt;
=== Radio_Broadcast_Reception ===&lt;br /&gt;
==== Radio_AM_FM_Broadcast_Reception ====&lt;br /&gt;
==== Radio_SDARS_Broadcast_Reception ====&lt;br /&gt;
==== Radio_HD_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DAB_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DRM_Broadcast_Reception ====&lt;br /&gt;
==== Broadcast_Sources_Pause_Resume ====&lt;br /&gt;
# time shift&lt;br /&gt;
&lt;br /&gt;
==== Radio_Further_Traffic_and_Data_Services ====&lt;br /&gt;
=== Video_Broadcast_Reception ===&lt;br /&gt;
&lt;br /&gt;
== Video ==&lt;br /&gt;
=== Video_Playback_Formats_and_Codecs ===&lt;br /&gt;
# containers&lt;br /&gt;
# codecs&lt;br /&gt;
# resolutions&lt;br /&gt;
# frame rates&lt;br /&gt;
&lt;br /&gt;
=== Video_Decoding_Performance ===&lt;br /&gt;
&lt;br /&gt;
== Voice ==&lt;br /&gt;
=== Voice_Tag_Processing ===&lt;br /&gt;
=== Voice_Recognition_Capabilties ===&lt;br /&gt;
=== Voice_Output_Functionality ===&lt;br /&gt;
&lt;br /&gt;
== Software Services ==&lt;br /&gt;
=== Software_Architectural_Requirements ===&lt;br /&gt;
=== Software_Update ===&lt;br /&gt;
=== Office_Applications ===&lt;br /&gt;
=== Security_Features ===&lt;br /&gt;
# user privacy&lt;br /&gt;
# data storage security&lt;br /&gt;
# data access authorization&lt;br /&gt;
&lt;br /&gt;
=== Gaming_Features ===&lt;br /&gt;
# pre-installed&lt;br /&gt;
# nomadic device&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope</id>
		<title>In-vehicle/Roadmap/FeatureScope</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope"/>
				<updated>2011-06-25T11:03:48Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Navigation_Engine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This topic provides an outline of requirements for a head unit.  The requirements are derived from a real life development project for in-vehicle infotainment platform.  ''This is still work in progress--the content will be added gradually.''&lt;br /&gt;
&lt;br /&gt;
Some of the requirements below will be fulfilled outside of the MeeGo IVI based software.  For example, the implementation of CAN network interface and early audio functions most probably falls into this category.  The decisions about implementation of specific requirements in MeeGo IVI software will be made assuming a specific [[In-vehicle/Roadmap/SystemArchitecture|system architecture]].&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
=== Performance ===&lt;br /&gt;
# After power-on, the head unit displays a static splash screen within 200 ms.&lt;br /&gt;
# After power-on, the head unit displays an animated splash screen (pre-defined, fixed) within 200 ms and at the frame rate above 4 fps.&lt;br /&gt;
# After power-on, the head unit is able to play early audio (e.g. chimes and gongs--minimal set, best suited type, simple) within max. 1 s.&lt;br /&gt;
# After power-on, the head unit plays FM radio, resuming the last station before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit plays compressed audio from a connected media device (e.g. MP3 from USB stick), resuming the last track played before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the rear view camera output within max. 2 s.&lt;br /&gt;
# After power-on, the head unit accepts first user input (e.g. HMI menu, screen, volume control) within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the Navigation map and starts the route guidance, resuming the previous route, within max. 5 s.&lt;br /&gt;
# Head unit reacts to user input via HMI (touch screen events, button or switch presses) within max. 100 ms.  Head unit displays interim response (e.g. sand glass) for all requests that cannot be completed within this time&lt;br /&gt;
# Head unit performs voice recognition for a single word against G2P vocabulary within max. 200 ms measured from the end of utterance (silence detection) to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit performs hand writing recognition against Chinese standard 2000 character set within max. 200 ms measured from end of entry to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit exhibits the refresh rate of min 15 fps for the navigation map in any scaling.&lt;br /&gt;
# Head unit exhibits a graphics rendering frame rate (for HMI animations and Navigation maps) of min. 15 fps.&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
=== Audio_Codecs_Playback ===&lt;br /&gt;
# Head unit supports the following codecs:&lt;br /&gt;
## AAC LC&lt;br /&gt;
## MP3&lt;br /&gt;
## WMA&lt;br /&gt;
## WAV&lt;br /&gt;
## Ogg Vorbis&lt;br /&gt;
## FLAC&lt;br /&gt;
&lt;br /&gt;
=== Audio_Processing_And_Management ===&lt;br /&gt;
# Head unit supports up to 4 independent audio zones (sinks).  One zone if 5.1 channels (e.g. cabin speakers) and others are stereo.  (Each zone might require its own independent audio processing and audio codec instances.)&lt;br /&gt;
# Head unit allows the user to adjust at least audio treble and bass level.&lt;br /&gt;
# Head unit allows the user to adjust balance and fade level.&lt;br /&gt;
# Head unit is capable of playing back any of its sources to any of 4 audio zones including simultaneous playback to up to 4 audio zones.&lt;br /&gt;
# Head unit uses pre-defined fader ramps when switching the audio source for any particular audio zone.&lt;br /&gt;
# For each audio zone, the head unit keeps track of the most recently played audio source and restores it upon startup.  (For example, when the FM tuner was played to the cabin speakers and the head unit has been switched off, it would attempt tuning to the same FM station and putting it to the cabin speakers upon the next startup.)&lt;br /&gt;
# For each audio zone, all available audio sources are assigned a unique priority.  When an audio source is being played back and a higher priority source becomes available (e.g. the phone application attempts to play a ring tone), the latter overrides the former.&lt;br /&gt;
## As a configuration option, overriding can be done either by muting the first source and playing back the second source, or by lowering the volume of the first source and mixing it with the second source.&lt;br /&gt;
&lt;br /&gt;
=== Audio_Generation ===&lt;br /&gt;
# chimes and gongs&lt;br /&gt;
# calibration to interior&lt;br /&gt;
&lt;br /&gt;
=== Audio_Recording ===&lt;br /&gt;
# voice&lt;br /&gt;
# radio&lt;br /&gt;
# podcasts&lt;br /&gt;
&lt;br /&gt;
=== Audio_Volume_Control ===&lt;br /&gt;
# Volume level is adjustable by the user.&lt;br /&gt;
## Adjustments by the user are only accepted during actual audio playback.  (In other words, any volume changes e.g. during start up phase and before the audio output can be heard will be ignored.)&lt;br /&gt;
## The volume level selection by the user is maintained for each audio source / sink pair individually.&lt;br /&gt;
# Volume level is adjusted by the head unit accordingly to the current vehicle speed.&lt;br /&gt;
# Volume level set by the user is preserved through shutdown cycle.&lt;br /&gt;
## Upon start up, the previous volume level is only restored up to a defined 'start up maximum' (as contrasted to the 'absolute maximum' that can be set after the head unit is up and running in its normal mode).&lt;br /&gt;
# Under limit volume need to be set as some low level NOT minimum just to make sure that at leaset user can recognize low level volume even though user set the volume to minimum &amp;quot;basically mute&amp;quot; before the power cycle&lt;br /&gt;
# Upper limit volume need to be set as some high level NOT maximum just to make sure that user can not be annoyed due to the previous maximum volume setting.&lt;br /&gt;
# In Emergency Case, volume should not be adjusted by the user, volume need to be fit as some very loud level as much as no sound is masked with ambient noisy backgroud,&lt;br /&gt;
&lt;br /&gt;
=== Handfree Functionality ===&lt;br /&gt;
# Noise reduction &lt;br /&gt;
# Echo cancellation &lt;br /&gt;
# Residual echo cancellation &lt;br /&gt;
# Automatic gain control&lt;br /&gt;
# Programmable Equalization &lt;br /&gt;
# Performance Requirement &lt;br /&gt;
  - objective testing : VDA 1.6 &lt;br /&gt;
  - subjective testing : In-Vehicle live testing&lt;br /&gt;
&lt;br /&gt;
== Connectivity ==&lt;br /&gt;
=== Wireless_Interfaces ===&lt;br /&gt;
==== Wireless_Infrared_IRDA ====&lt;br /&gt;
==== Wireless_WiFi_Connection ====&lt;br /&gt;
# access point&lt;br /&gt;
# client&lt;br /&gt;
&lt;br /&gt;
==== Wireless_Bluetooth_Connection_and_Telephony ====&lt;br /&gt;
==== Wireless_Cellular_Mobile_Telephony ====&lt;br /&gt;
==== Wireless_BT_Hands-free_Telephony ====&lt;br /&gt;
# profiles&lt;br /&gt;
# Acoustic Echo Cancellation / Noise Reduction (AEC / NR)&lt;br /&gt;
# single and dual microphone&lt;br /&gt;
&lt;br /&gt;
=== Wired_Interfaces ===&lt;br /&gt;
==== USB_Connection_to_CE_Devices ====&lt;br /&gt;
==== Removable_SD_Card_Connections ====&lt;br /&gt;
&lt;br /&gt;
=== Internet_Access_and_Browser ===&lt;br /&gt;
# internet radio&lt;br /&gt;
# podcasts&lt;br /&gt;
# applications (e.g. google maps)&lt;br /&gt;
# social networks&lt;br /&gt;
&lt;br /&gt;
=== Phone_Functionality ===&lt;br /&gt;
# internal phone book&lt;br /&gt;
# VoIP&lt;br /&gt;
&lt;br /&gt;
=== Terminal_Mode_Functionality ===&lt;br /&gt;
=== Microsoft_Plays_From_Device ===&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Personalization ===&lt;br /&gt;
# user profiles&lt;br /&gt;
&lt;br /&gt;
== Driver_Assistance ==&lt;br /&gt;
# camera input processing&lt;br /&gt;
# electronic horizon&lt;br /&gt;
&lt;br /&gt;
== Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
== HMI ==&lt;br /&gt;
=== User_Inputs_Support ===&lt;br /&gt;
==== UI_Devices_Support ====&lt;br /&gt;
==== UI_Touch_Sreen_Hand_Writing_Detection ====&lt;br /&gt;
==== UI_Speech_Recognition_Function ====&lt;br /&gt;
1. Recognition Category&lt;br /&gt;
   1. discrete command - command, single digit ( e.g. &amp;quot;dial&amp;quot;,'1','2',..etc )&lt;br /&gt;
   2. continuous command - continuous digit ( e.g. &amp;quot;dial 555-1212&amp;quot;, &amp;quot; 555-1212&amp;quot; )&lt;br /&gt;
   3. natural language understaning - flexible recognition ( e.g. &amp;quot;I want to make a call to john&amp;quot;,&lt;br /&gt;
     &amp;quot;please route to the san franciso regency hyatt hotel&amp;quot;,..etc)&lt;br /&gt;
&lt;br /&gt;
2. Recognition Response time &lt;br /&gt;
   1. discrete command - 300ms &lt;br /&gt;
   2. continuous command - 1200ms &lt;br /&gt;
   3. natural language understanding - 1500ms&lt;br /&gt;
&lt;br /&gt;
3. Recognition performance measurement &lt;br /&gt;
   1. overall accuracy measurement&lt;br /&gt;
      Average Sentence Accuracy = (Total Number of Correct Sentences)/(Total Number of Sentence Attempted)&lt;br /&gt;
   2. individual accuracy measurement &lt;br /&gt;
      Average Word Accuracy = ((Total number of attempts) - (insertions) - (deletions) - (substitutions))/Total number of attempts&lt;br /&gt;
  &lt;br /&gt;
4. Regnition performance requirement &lt;br /&gt;
   1. discrete command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection ) &lt;br /&gt;
   2. continuous command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection )&lt;br /&gt;
&lt;br /&gt;
=== Multiple_HMI_Languages ===&lt;br /&gt;
=== Software_Support ===&lt;br /&gt;
=== Users_Manual_Integrated ===&lt;br /&gt;
=== Graphics_Functions ===&lt;br /&gt;
&lt;br /&gt;
== Media ==&lt;br /&gt;
=== Media_Player_and_Browser_Requirements ===&lt;br /&gt;
# number of player instances&lt;br /&gt;
# playlists&lt;br /&gt;
# ripping&lt;br /&gt;
&lt;br /&gt;
=== Storage_Media_Support ===&lt;br /&gt;
&lt;br /&gt;
== Navigation ==&lt;br /&gt;
=== Navigation_Engine ===&lt;br /&gt;
# map source&lt;br /&gt;
&lt;br /&gt;
=== Map_Function ===&lt;br /&gt;
# database&lt;br /&gt;
# 2D/3D representation (pitch)&lt;br /&gt;
# zooming (IN / OUT / auto-zoom)&lt;br /&gt;
# panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
# orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
# 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)&lt;br /&gt;
# set / clear destination&lt;br /&gt;
# center the map&lt;br /&gt;
# set/change map layout (day / night / detailed - POIs / plain simple)&lt;br /&gt;
# bookmarks (see also Destination_Import)&lt;br /&gt;
# OSD (on-screen display) information&lt;br /&gt;
&lt;br /&gt;
=== Real_Time_Traffic_Information ===&lt;br /&gt;
=== Speech_Support_for_Navigation ===&lt;br /&gt;
=== Positioning_Capabilities ===&lt;br /&gt;
=== Points_of_Interestes_POIs ===&lt;br /&gt;
=== Destination_Import ===&lt;br /&gt;
# from file (eg. USB)&lt;br /&gt;
# from web server / web service&lt;br /&gt;
# free input&lt;br /&gt;
# coordinate units conversion&lt;br /&gt;
&lt;br /&gt;
== Network ==&lt;br /&gt;
=== CAN_Network_Interface ===&lt;br /&gt;
=== MOST_Network_Interface ===&lt;br /&gt;
=== Ethernet_Network_Interface ===&lt;br /&gt;
# DLNA&lt;br /&gt;
# AVB&lt;br /&gt;
&lt;br /&gt;
=== Serial_Network_Interfaces ===&lt;br /&gt;
# UART&lt;br /&gt;
# LIN&lt;br /&gt;
&lt;br /&gt;
=== Gateway ===&lt;br /&gt;
&lt;br /&gt;
== Power ==&lt;br /&gt;
=== Power_Management_Master ===&lt;br /&gt;
=== Power_Modes ===&lt;br /&gt;
=== Wakeup_Conditions ===&lt;br /&gt;
=== Monitor_Voltage_Ranges ===&lt;br /&gt;
&lt;br /&gt;
== Telematics and Data Services ==&lt;br /&gt;
=== Emergency_and_Breakdown_Call ===&lt;br /&gt;
=== JAVA_Telematics_Client ===&lt;br /&gt;
=== Remote_Diagnostics ===&lt;br /&gt;
=== Vehicle_Tracking ===&lt;br /&gt;
&lt;br /&gt;
== Radio and Video Broadcast Tuner ==&lt;br /&gt;
=== Radio_Broadcast_Reception ===&lt;br /&gt;
==== Radio_AM_FM_Broadcast_Reception ====&lt;br /&gt;
==== Radio_SDARS_Broadcast_Reception ====&lt;br /&gt;
==== Radio_HD_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DAB_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DRM_Broadcast_Reception ====&lt;br /&gt;
==== Broadcast_Sources_Pause_Resume ====&lt;br /&gt;
# time shift&lt;br /&gt;
&lt;br /&gt;
==== Radio_Further_Traffic_and_Data_Services ====&lt;br /&gt;
=== Video_Broadcast_Reception ===&lt;br /&gt;
&lt;br /&gt;
== Video ==&lt;br /&gt;
=== Video_Playback_Formats_and_Codecs ===&lt;br /&gt;
# containers&lt;br /&gt;
# codecs&lt;br /&gt;
# resolutions&lt;br /&gt;
# frame rates&lt;br /&gt;
&lt;br /&gt;
=== Video_Decoding_Performance ===&lt;br /&gt;
&lt;br /&gt;
== Voice ==&lt;br /&gt;
=== Voice_Tag_Processing ===&lt;br /&gt;
=== Voice_Recognition_Capabilties ===&lt;br /&gt;
=== Voice_Output_Functionality ===&lt;br /&gt;
&lt;br /&gt;
== Software Services ==&lt;br /&gt;
=== Software_Architectural_Requirements ===&lt;br /&gt;
=== Software_Update ===&lt;br /&gt;
=== Office_Applications ===&lt;br /&gt;
=== Security_Features ===&lt;br /&gt;
# user privacy&lt;br /&gt;
# data storage security&lt;br /&gt;
# data access authorization&lt;br /&gt;
&lt;br /&gt;
=== Gaming_Features ===&lt;br /&gt;
# pre-installed&lt;br /&gt;
# nomadic device&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope</id>
		<title>In-vehicle/Roadmap/FeatureScope</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope"/>
				<updated>2011-06-25T11:03:37Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Map_Function */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This topic provides an outline of requirements for a head unit.  The requirements are derived from a real life development project for in-vehicle infotainment platform.  ''This is still work in progress--the content will be added gradually.''&lt;br /&gt;
&lt;br /&gt;
Some of the requirements below will be fulfilled outside of the MeeGo IVI based software.  For example, the implementation of CAN network interface and early audio functions most probably falls into this category.  The decisions about implementation of specific requirements in MeeGo IVI software will be made assuming a specific [[In-vehicle/Roadmap/SystemArchitecture|system architecture]].&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
=== Performance ===&lt;br /&gt;
# After power-on, the head unit displays a static splash screen within 200 ms.&lt;br /&gt;
# After power-on, the head unit displays an animated splash screen (pre-defined, fixed) within 200 ms and at the frame rate above 4 fps.&lt;br /&gt;
# After power-on, the head unit is able to play early audio (e.g. chimes and gongs--minimal set, best suited type, simple) within max. 1 s.&lt;br /&gt;
# After power-on, the head unit plays FM radio, resuming the last station before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit plays compressed audio from a connected media device (e.g. MP3 from USB stick), resuming the last track played before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the rear view camera output within max. 2 s.&lt;br /&gt;
# After power-on, the head unit accepts first user input (e.g. HMI menu, screen, volume control) within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the Navigation map and starts the route guidance, resuming the previous route, within max. 5 s.&lt;br /&gt;
# Head unit reacts to user input via HMI (touch screen events, button or switch presses) within max. 100 ms.  Head unit displays interim response (e.g. sand glass) for all requests that cannot be completed within this time&lt;br /&gt;
# Head unit performs voice recognition for a single word against G2P vocabulary within max. 200 ms measured from the end of utterance (silence detection) to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit performs hand writing recognition against Chinese standard 2000 character set within max. 200 ms measured from end of entry to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit exhibits the refresh rate of min 15 fps for the navigation map in any scaling.&lt;br /&gt;
# Head unit exhibits a graphics rendering frame rate (for HMI animations and Navigation maps) of min. 15 fps.&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
=== Audio_Codecs_Playback ===&lt;br /&gt;
# Head unit supports the following codecs:&lt;br /&gt;
## AAC LC&lt;br /&gt;
## MP3&lt;br /&gt;
## WMA&lt;br /&gt;
## WAV&lt;br /&gt;
## Ogg Vorbis&lt;br /&gt;
## FLAC&lt;br /&gt;
&lt;br /&gt;
=== Audio_Processing_And_Management ===&lt;br /&gt;
# Head unit supports up to 4 independent audio zones (sinks).  One zone if 5.1 channels (e.g. cabin speakers) and others are stereo.  (Each zone might require its own independent audio processing and audio codec instances.)&lt;br /&gt;
# Head unit allows the user to adjust at least audio treble and bass level.&lt;br /&gt;
# Head unit allows the user to adjust balance and fade level.&lt;br /&gt;
# Head unit is capable of playing back any of its sources to any of 4 audio zones including simultaneous playback to up to 4 audio zones.&lt;br /&gt;
# Head unit uses pre-defined fader ramps when switching the audio source for any particular audio zone.&lt;br /&gt;
# For each audio zone, the head unit keeps track of the most recently played audio source and restores it upon startup.  (For example, when the FM tuner was played to the cabin speakers and the head unit has been switched off, it would attempt tuning to the same FM station and putting it to the cabin speakers upon the next startup.)&lt;br /&gt;
# For each audio zone, all available audio sources are assigned a unique priority.  When an audio source is being played back and a higher priority source becomes available (e.g. the phone application attempts to play a ring tone), the latter overrides the former.&lt;br /&gt;
## As a configuration option, overriding can be done either by muting the first source and playing back the second source, or by lowering the volume of the first source and mixing it with the second source.&lt;br /&gt;
&lt;br /&gt;
=== Audio_Generation ===&lt;br /&gt;
# chimes and gongs&lt;br /&gt;
# calibration to interior&lt;br /&gt;
&lt;br /&gt;
=== Audio_Recording ===&lt;br /&gt;
# voice&lt;br /&gt;
# radio&lt;br /&gt;
# podcasts&lt;br /&gt;
&lt;br /&gt;
=== Audio_Volume_Control ===&lt;br /&gt;
# Volume level is adjustable by the user.&lt;br /&gt;
## Adjustments by the user are only accepted during actual audio playback.  (In other words, any volume changes e.g. during start up phase and before the audio output can be heard will be ignored.)&lt;br /&gt;
## The volume level selection by the user is maintained for each audio source / sink pair individually.&lt;br /&gt;
# Volume level is adjusted by the head unit accordingly to the current vehicle speed.&lt;br /&gt;
# Volume level set by the user is preserved through shutdown cycle.&lt;br /&gt;
## Upon start up, the previous volume level is only restored up to a defined 'start up maximum' (as contrasted to the 'absolute maximum' that can be set after the head unit is up and running in its normal mode).&lt;br /&gt;
# Under limit volume need to be set as some low level NOT minimum just to make sure that at leaset user can recognize low level volume even though user set the volume to minimum &amp;quot;basically mute&amp;quot; before the power cycle&lt;br /&gt;
# Upper limit volume need to be set as some high level NOT maximum just to make sure that user can not be annoyed due to the previous maximum volume setting.&lt;br /&gt;
# In Emergency Case, volume should not be adjusted by the user, volume need to be fit as some very loud level as much as no sound is masked with ambient noisy backgroud,&lt;br /&gt;
&lt;br /&gt;
=== Handfree Functionality ===&lt;br /&gt;
# Noise reduction &lt;br /&gt;
# Echo cancellation &lt;br /&gt;
# Residual echo cancellation &lt;br /&gt;
# Automatic gain control&lt;br /&gt;
# Programmable Equalization &lt;br /&gt;
# Performance Requirement &lt;br /&gt;
  - objective testing : VDA 1.6 &lt;br /&gt;
  - subjective testing : In-Vehicle live testing&lt;br /&gt;
&lt;br /&gt;
== Connectivity ==&lt;br /&gt;
=== Wireless_Interfaces ===&lt;br /&gt;
==== Wireless_Infrared_IRDA ====&lt;br /&gt;
==== Wireless_WiFi_Connection ====&lt;br /&gt;
# access point&lt;br /&gt;
# client&lt;br /&gt;
&lt;br /&gt;
==== Wireless_Bluetooth_Connection_and_Telephony ====&lt;br /&gt;
==== Wireless_Cellular_Mobile_Telephony ====&lt;br /&gt;
==== Wireless_BT_Hands-free_Telephony ====&lt;br /&gt;
# profiles&lt;br /&gt;
# Acoustic Echo Cancellation / Noise Reduction (AEC / NR)&lt;br /&gt;
# single and dual microphone&lt;br /&gt;
&lt;br /&gt;
=== Wired_Interfaces ===&lt;br /&gt;
==== USB_Connection_to_CE_Devices ====&lt;br /&gt;
==== Removable_SD_Card_Connections ====&lt;br /&gt;
&lt;br /&gt;
=== Internet_Access_and_Browser ===&lt;br /&gt;
# internet radio&lt;br /&gt;
# podcasts&lt;br /&gt;
# applications (e.g. google maps)&lt;br /&gt;
# social networks&lt;br /&gt;
&lt;br /&gt;
=== Phone_Functionality ===&lt;br /&gt;
# internal phone book&lt;br /&gt;
# VoIP&lt;br /&gt;
&lt;br /&gt;
=== Terminal_Mode_Functionality ===&lt;br /&gt;
=== Microsoft_Plays_From_Device ===&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Personalization ===&lt;br /&gt;
# user profiles&lt;br /&gt;
&lt;br /&gt;
== Driver_Assistance ==&lt;br /&gt;
# camera input processing&lt;br /&gt;
# electronic horizon&lt;br /&gt;
&lt;br /&gt;
== Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
== HMI ==&lt;br /&gt;
=== User_Inputs_Support ===&lt;br /&gt;
==== UI_Devices_Support ====&lt;br /&gt;
==== UI_Touch_Sreen_Hand_Writing_Detection ====&lt;br /&gt;
==== UI_Speech_Recognition_Function ====&lt;br /&gt;
1. Recognition Category&lt;br /&gt;
   1. discrete command - command, single digit ( e.g. &amp;quot;dial&amp;quot;,'1','2',..etc )&lt;br /&gt;
   2. continuous command - continuous digit ( e.g. &amp;quot;dial 555-1212&amp;quot;, &amp;quot; 555-1212&amp;quot; )&lt;br /&gt;
   3. natural language understaning - flexible recognition ( e.g. &amp;quot;I want to make a call to john&amp;quot;,&lt;br /&gt;
     &amp;quot;please route to the san franciso regency hyatt hotel&amp;quot;,..etc)&lt;br /&gt;
&lt;br /&gt;
2. Recognition Response time &lt;br /&gt;
   1. discrete command - 300ms &lt;br /&gt;
   2. continuous command - 1200ms &lt;br /&gt;
   3. natural language understanding - 1500ms&lt;br /&gt;
&lt;br /&gt;
3. Recognition performance measurement &lt;br /&gt;
   1. overall accuracy measurement&lt;br /&gt;
      Average Sentence Accuracy = (Total Number of Correct Sentences)/(Total Number of Sentence Attempted)&lt;br /&gt;
   2. individual accuracy measurement &lt;br /&gt;
      Average Word Accuracy = ((Total number of attempts) - (insertions) - (deletions) - (substitutions))/Total number of attempts&lt;br /&gt;
  &lt;br /&gt;
4. Regnition performance requirement &lt;br /&gt;
   1. discrete command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection ) &lt;br /&gt;
   2. continuous command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection )&lt;br /&gt;
&lt;br /&gt;
=== Multiple_HMI_Languages ===&lt;br /&gt;
=== Software_Support ===&lt;br /&gt;
=== Users_Manual_Integrated ===&lt;br /&gt;
=== Graphics_Functions ===&lt;br /&gt;
&lt;br /&gt;
== Media ==&lt;br /&gt;
=== Media_Player_and_Browser_Requirements ===&lt;br /&gt;
# number of player instances&lt;br /&gt;
# playlists&lt;br /&gt;
# ripping&lt;br /&gt;
&lt;br /&gt;
=== Storage_Media_Support ===&lt;br /&gt;
&lt;br /&gt;
== Navigation ==&lt;br /&gt;
=== Navigation_Engine ===&lt;br /&gt;
=== Map_Function ===&lt;br /&gt;
# database&lt;br /&gt;
# 2D/3D representation (pitch)&lt;br /&gt;
# zooming (IN / OUT / auto-zoom)&lt;br /&gt;
# panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
# orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
# 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)&lt;br /&gt;
# set / clear destination&lt;br /&gt;
# center the map&lt;br /&gt;
# set/change map layout (day / night / detailed - POIs / plain simple)&lt;br /&gt;
# bookmarks (see also Destination_Import)&lt;br /&gt;
# OSD (on-screen display) information&lt;br /&gt;
&lt;br /&gt;
=== Real_Time_Traffic_Information ===&lt;br /&gt;
=== Speech_Support_for_Navigation ===&lt;br /&gt;
=== Positioning_Capabilities ===&lt;br /&gt;
=== Points_of_Interestes_POIs ===&lt;br /&gt;
=== Destination_Import ===&lt;br /&gt;
# from file (eg. USB)&lt;br /&gt;
# from web server / web service&lt;br /&gt;
# free input&lt;br /&gt;
# coordinate units conversion&lt;br /&gt;
&lt;br /&gt;
== Network ==&lt;br /&gt;
=== CAN_Network_Interface ===&lt;br /&gt;
=== MOST_Network_Interface ===&lt;br /&gt;
=== Ethernet_Network_Interface ===&lt;br /&gt;
# DLNA&lt;br /&gt;
# AVB&lt;br /&gt;
&lt;br /&gt;
=== Serial_Network_Interfaces ===&lt;br /&gt;
# UART&lt;br /&gt;
# LIN&lt;br /&gt;
&lt;br /&gt;
=== Gateway ===&lt;br /&gt;
&lt;br /&gt;
== Power ==&lt;br /&gt;
=== Power_Management_Master ===&lt;br /&gt;
=== Power_Modes ===&lt;br /&gt;
=== Wakeup_Conditions ===&lt;br /&gt;
=== Monitor_Voltage_Ranges ===&lt;br /&gt;
&lt;br /&gt;
== Telematics and Data Services ==&lt;br /&gt;
=== Emergency_and_Breakdown_Call ===&lt;br /&gt;
=== JAVA_Telematics_Client ===&lt;br /&gt;
=== Remote_Diagnostics ===&lt;br /&gt;
=== Vehicle_Tracking ===&lt;br /&gt;
&lt;br /&gt;
== Radio and Video Broadcast Tuner ==&lt;br /&gt;
=== Radio_Broadcast_Reception ===&lt;br /&gt;
==== Radio_AM_FM_Broadcast_Reception ====&lt;br /&gt;
==== Radio_SDARS_Broadcast_Reception ====&lt;br /&gt;
==== Radio_HD_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DAB_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DRM_Broadcast_Reception ====&lt;br /&gt;
==== Broadcast_Sources_Pause_Resume ====&lt;br /&gt;
# time shift&lt;br /&gt;
&lt;br /&gt;
==== Radio_Further_Traffic_and_Data_Services ====&lt;br /&gt;
=== Video_Broadcast_Reception ===&lt;br /&gt;
&lt;br /&gt;
== Video ==&lt;br /&gt;
=== Video_Playback_Formats_and_Codecs ===&lt;br /&gt;
# containers&lt;br /&gt;
# codecs&lt;br /&gt;
# resolutions&lt;br /&gt;
# frame rates&lt;br /&gt;
&lt;br /&gt;
=== Video_Decoding_Performance ===&lt;br /&gt;
&lt;br /&gt;
== Voice ==&lt;br /&gt;
=== Voice_Tag_Processing ===&lt;br /&gt;
=== Voice_Recognition_Capabilties ===&lt;br /&gt;
=== Voice_Output_Functionality ===&lt;br /&gt;
&lt;br /&gt;
== Software Services ==&lt;br /&gt;
=== Software_Architectural_Requirements ===&lt;br /&gt;
=== Software_Update ===&lt;br /&gt;
=== Office_Applications ===&lt;br /&gt;
=== Security_Features ===&lt;br /&gt;
# user privacy&lt;br /&gt;
# data storage security&lt;br /&gt;
# data access authorization&lt;br /&gt;
&lt;br /&gt;
=== Gaming_Features ===&lt;br /&gt;
# pre-installed&lt;br /&gt;
# nomadic device&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope</id>
		<title>In-vehicle/Roadmap/FeatureScope</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope"/>
				<updated>2011-06-25T11:02:22Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Destination_Import */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This topic provides an outline of requirements for a head unit.  The requirements are derived from a real life development project for in-vehicle infotainment platform.  ''This is still work in progress--the content will be added gradually.''&lt;br /&gt;
&lt;br /&gt;
Some of the requirements below will be fulfilled outside of the MeeGo IVI based software.  For example, the implementation of CAN network interface and early audio functions most probably falls into this category.  The decisions about implementation of specific requirements in MeeGo IVI software will be made assuming a specific [[In-vehicle/Roadmap/SystemArchitecture|system architecture]].&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
=== Performance ===&lt;br /&gt;
# After power-on, the head unit displays a static splash screen within 200 ms.&lt;br /&gt;
# After power-on, the head unit displays an animated splash screen (pre-defined, fixed) within 200 ms and at the frame rate above 4 fps.&lt;br /&gt;
# After power-on, the head unit is able to play early audio (e.g. chimes and gongs--minimal set, best suited type, simple) within max. 1 s.&lt;br /&gt;
# After power-on, the head unit plays FM radio, resuming the last station before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit plays compressed audio from a connected media device (e.g. MP3 from USB stick), resuming the last track played before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the rear view camera output within max. 2 s.&lt;br /&gt;
# After power-on, the head unit accepts first user input (e.g. HMI menu, screen, volume control) within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the Navigation map and starts the route guidance, resuming the previous route, within max. 5 s.&lt;br /&gt;
# Head unit reacts to user input via HMI (touch screen events, button or switch presses) within max. 100 ms.  Head unit displays interim response (e.g. sand glass) for all requests that cannot be completed within this time&lt;br /&gt;
# Head unit performs voice recognition for a single word against G2P vocabulary within max. 200 ms measured from the end of utterance (silence detection) to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit performs hand writing recognition against Chinese standard 2000 character set within max. 200 ms measured from end of entry to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit exhibits the refresh rate of min 15 fps for the navigation map in any scaling.&lt;br /&gt;
# Head unit exhibits a graphics rendering frame rate (for HMI animations and Navigation maps) of min. 15 fps.&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
=== Audio_Codecs_Playback ===&lt;br /&gt;
# Head unit supports the following codecs:&lt;br /&gt;
## AAC LC&lt;br /&gt;
## MP3&lt;br /&gt;
## WMA&lt;br /&gt;
## WAV&lt;br /&gt;
## Ogg Vorbis&lt;br /&gt;
## FLAC&lt;br /&gt;
&lt;br /&gt;
=== Audio_Processing_And_Management ===&lt;br /&gt;
# Head unit supports up to 4 independent audio zones (sinks).  One zone if 5.1 channels (e.g. cabin speakers) and others are stereo.  (Each zone might require its own independent audio processing and audio codec instances.)&lt;br /&gt;
# Head unit allows the user to adjust at least audio treble and bass level.&lt;br /&gt;
# Head unit allows the user to adjust balance and fade level.&lt;br /&gt;
# Head unit is capable of playing back any of its sources to any of 4 audio zones including simultaneous playback to up to 4 audio zones.&lt;br /&gt;
# Head unit uses pre-defined fader ramps when switching the audio source for any particular audio zone.&lt;br /&gt;
# For each audio zone, the head unit keeps track of the most recently played audio source and restores it upon startup.  (For example, when the FM tuner was played to the cabin speakers and the head unit has been switched off, it would attempt tuning to the same FM station and putting it to the cabin speakers upon the next startup.)&lt;br /&gt;
# For each audio zone, all available audio sources are assigned a unique priority.  When an audio source is being played back and a higher priority source becomes available (e.g. the phone application attempts to play a ring tone), the latter overrides the former.&lt;br /&gt;
## As a configuration option, overriding can be done either by muting the first source and playing back the second source, or by lowering the volume of the first source and mixing it with the second source.&lt;br /&gt;
&lt;br /&gt;
=== Audio_Generation ===&lt;br /&gt;
# chimes and gongs&lt;br /&gt;
# calibration to interior&lt;br /&gt;
&lt;br /&gt;
=== Audio_Recording ===&lt;br /&gt;
# voice&lt;br /&gt;
# radio&lt;br /&gt;
# podcasts&lt;br /&gt;
&lt;br /&gt;
=== Audio_Volume_Control ===&lt;br /&gt;
# Volume level is adjustable by the user.&lt;br /&gt;
## Adjustments by the user are only accepted during actual audio playback.  (In other words, any volume changes e.g. during start up phase and before the audio output can be heard will be ignored.)&lt;br /&gt;
## The volume level selection by the user is maintained for each audio source / sink pair individually.&lt;br /&gt;
# Volume level is adjusted by the head unit accordingly to the current vehicle speed.&lt;br /&gt;
# Volume level set by the user is preserved through shutdown cycle.&lt;br /&gt;
## Upon start up, the previous volume level is only restored up to a defined 'start up maximum' (as contrasted to the 'absolute maximum' that can be set after the head unit is up and running in its normal mode).&lt;br /&gt;
# Under limit volume need to be set as some low level NOT minimum just to make sure that at leaset user can recognize low level volume even though user set the volume to minimum &amp;quot;basically mute&amp;quot; before the power cycle&lt;br /&gt;
# Upper limit volume need to be set as some high level NOT maximum just to make sure that user can not be annoyed due to the previous maximum volume setting.&lt;br /&gt;
# In Emergency Case, volume should not be adjusted by the user, volume need to be fit as some very loud level as much as no sound is masked with ambient noisy backgroud,&lt;br /&gt;
&lt;br /&gt;
=== Handfree Functionality ===&lt;br /&gt;
# Noise reduction &lt;br /&gt;
# Echo cancellation &lt;br /&gt;
# Residual echo cancellation &lt;br /&gt;
# Automatic gain control&lt;br /&gt;
# Programmable Equalization &lt;br /&gt;
# Performance Requirement &lt;br /&gt;
  - objective testing : VDA 1.6 &lt;br /&gt;
  - subjective testing : In-Vehicle live testing&lt;br /&gt;
&lt;br /&gt;
== Connectivity ==&lt;br /&gt;
=== Wireless_Interfaces ===&lt;br /&gt;
==== Wireless_Infrared_IRDA ====&lt;br /&gt;
==== Wireless_WiFi_Connection ====&lt;br /&gt;
# access point&lt;br /&gt;
# client&lt;br /&gt;
&lt;br /&gt;
==== Wireless_Bluetooth_Connection_and_Telephony ====&lt;br /&gt;
==== Wireless_Cellular_Mobile_Telephony ====&lt;br /&gt;
==== Wireless_BT_Hands-free_Telephony ====&lt;br /&gt;
# profiles&lt;br /&gt;
# Acoustic Echo Cancellation / Noise Reduction (AEC / NR)&lt;br /&gt;
# single and dual microphone&lt;br /&gt;
&lt;br /&gt;
=== Wired_Interfaces ===&lt;br /&gt;
==== USB_Connection_to_CE_Devices ====&lt;br /&gt;
==== Removable_SD_Card_Connections ====&lt;br /&gt;
&lt;br /&gt;
=== Internet_Access_and_Browser ===&lt;br /&gt;
# internet radio&lt;br /&gt;
# podcasts&lt;br /&gt;
# applications (e.g. google maps)&lt;br /&gt;
# social networks&lt;br /&gt;
&lt;br /&gt;
=== Phone_Functionality ===&lt;br /&gt;
# internal phone book&lt;br /&gt;
# VoIP&lt;br /&gt;
&lt;br /&gt;
=== Terminal_Mode_Functionality ===&lt;br /&gt;
=== Microsoft_Plays_From_Device ===&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Personalization ===&lt;br /&gt;
# user profiles&lt;br /&gt;
&lt;br /&gt;
== Driver_Assistance ==&lt;br /&gt;
# camera input processing&lt;br /&gt;
# electronic horizon&lt;br /&gt;
&lt;br /&gt;
== Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
== HMI ==&lt;br /&gt;
=== User_Inputs_Support ===&lt;br /&gt;
==== UI_Devices_Support ====&lt;br /&gt;
==== UI_Touch_Sreen_Hand_Writing_Detection ====&lt;br /&gt;
==== UI_Speech_Recognition_Function ====&lt;br /&gt;
1. Recognition Category&lt;br /&gt;
   1. discrete command - command, single digit ( e.g. &amp;quot;dial&amp;quot;,'1','2',..etc )&lt;br /&gt;
   2. continuous command - continuous digit ( e.g. &amp;quot;dial 555-1212&amp;quot;, &amp;quot; 555-1212&amp;quot; )&lt;br /&gt;
   3. natural language understaning - flexible recognition ( e.g. &amp;quot;I want to make a call to john&amp;quot;,&lt;br /&gt;
     &amp;quot;please route to the san franciso regency hyatt hotel&amp;quot;,..etc)&lt;br /&gt;
&lt;br /&gt;
2. Recognition Response time &lt;br /&gt;
   1. discrete command - 300ms &lt;br /&gt;
   2. continuous command - 1200ms &lt;br /&gt;
   3. natural language understanding - 1500ms&lt;br /&gt;
&lt;br /&gt;
3. Recognition performance measurement &lt;br /&gt;
   1. overall accuracy measurement&lt;br /&gt;
      Average Sentence Accuracy = (Total Number of Correct Sentences)/(Total Number of Sentence Attempted)&lt;br /&gt;
   2. individual accuracy measurement &lt;br /&gt;
      Average Word Accuracy = ((Total number of attempts) - (insertions) - (deletions) - (substitutions))/Total number of attempts&lt;br /&gt;
  &lt;br /&gt;
4. Regnition performance requirement &lt;br /&gt;
   1. discrete command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection ) &lt;br /&gt;
   2. continuous command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection )&lt;br /&gt;
&lt;br /&gt;
=== Multiple_HMI_Languages ===&lt;br /&gt;
=== Software_Support ===&lt;br /&gt;
=== Users_Manual_Integrated ===&lt;br /&gt;
=== Graphics_Functions ===&lt;br /&gt;
&lt;br /&gt;
== Media ==&lt;br /&gt;
=== Media_Player_and_Browser_Requirements ===&lt;br /&gt;
# number of player instances&lt;br /&gt;
# playlists&lt;br /&gt;
# ripping&lt;br /&gt;
&lt;br /&gt;
=== Storage_Media_Support ===&lt;br /&gt;
&lt;br /&gt;
== Navigation ==&lt;br /&gt;
=== Navigation_Engine ===&lt;br /&gt;
=== Map_Function ===&lt;br /&gt;
# database&lt;br /&gt;
# map source&lt;br /&gt;
# 2D/3D representation (pitch)&lt;br /&gt;
# zooming (IN / OUT / auto-zoom)&lt;br /&gt;
# panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
# orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
# 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)&lt;br /&gt;
# set / clear destination&lt;br /&gt;
# center the map&lt;br /&gt;
# set/change map layout (day / night / detailed - POIs / plain simple)&lt;br /&gt;
# bookmarks (see also Destination_Import)&lt;br /&gt;
# OSD (on-screen display) information&lt;br /&gt;
&lt;br /&gt;
=== Real_Time_Traffic_Information ===&lt;br /&gt;
=== Speech_Support_for_Navigation ===&lt;br /&gt;
=== Positioning_Capabilities ===&lt;br /&gt;
=== Points_of_Interestes_POIs ===&lt;br /&gt;
=== Destination_Import ===&lt;br /&gt;
# from file (eg. USB)&lt;br /&gt;
# from web server / web service&lt;br /&gt;
# free input&lt;br /&gt;
# coordinate units conversion&lt;br /&gt;
&lt;br /&gt;
== Network ==&lt;br /&gt;
=== CAN_Network_Interface ===&lt;br /&gt;
=== MOST_Network_Interface ===&lt;br /&gt;
=== Ethernet_Network_Interface ===&lt;br /&gt;
# DLNA&lt;br /&gt;
# AVB&lt;br /&gt;
&lt;br /&gt;
=== Serial_Network_Interfaces ===&lt;br /&gt;
# UART&lt;br /&gt;
# LIN&lt;br /&gt;
&lt;br /&gt;
=== Gateway ===&lt;br /&gt;
&lt;br /&gt;
== Power ==&lt;br /&gt;
=== Power_Management_Master ===&lt;br /&gt;
=== Power_Modes ===&lt;br /&gt;
=== Wakeup_Conditions ===&lt;br /&gt;
=== Monitor_Voltage_Ranges ===&lt;br /&gt;
&lt;br /&gt;
== Telematics and Data Services ==&lt;br /&gt;
=== Emergency_and_Breakdown_Call ===&lt;br /&gt;
=== JAVA_Telematics_Client ===&lt;br /&gt;
=== Remote_Diagnostics ===&lt;br /&gt;
=== Vehicle_Tracking ===&lt;br /&gt;
&lt;br /&gt;
== Radio and Video Broadcast Tuner ==&lt;br /&gt;
=== Radio_Broadcast_Reception ===&lt;br /&gt;
==== Radio_AM_FM_Broadcast_Reception ====&lt;br /&gt;
==== Radio_SDARS_Broadcast_Reception ====&lt;br /&gt;
==== Radio_HD_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DAB_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DRM_Broadcast_Reception ====&lt;br /&gt;
==== Broadcast_Sources_Pause_Resume ====&lt;br /&gt;
# time shift&lt;br /&gt;
&lt;br /&gt;
==== Radio_Further_Traffic_and_Data_Services ====&lt;br /&gt;
=== Video_Broadcast_Reception ===&lt;br /&gt;
&lt;br /&gt;
== Video ==&lt;br /&gt;
=== Video_Playback_Formats_and_Codecs ===&lt;br /&gt;
# containers&lt;br /&gt;
# codecs&lt;br /&gt;
# resolutions&lt;br /&gt;
# frame rates&lt;br /&gt;
&lt;br /&gt;
=== Video_Decoding_Performance ===&lt;br /&gt;
&lt;br /&gt;
== Voice ==&lt;br /&gt;
=== Voice_Tag_Processing ===&lt;br /&gt;
=== Voice_Recognition_Capabilties ===&lt;br /&gt;
=== Voice_Output_Functionality ===&lt;br /&gt;
&lt;br /&gt;
== Software Services ==&lt;br /&gt;
=== Software_Architectural_Requirements ===&lt;br /&gt;
=== Software_Update ===&lt;br /&gt;
=== Office_Applications ===&lt;br /&gt;
=== Security_Features ===&lt;br /&gt;
# user privacy&lt;br /&gt;
# data storage security&lt;br /&gt;
# data access authorization&lt;br /&gt;
&lt;br /&gt;
=== Gaming_Features ===&lt;br /&gt;
# pre-installed&lt;br /&gt;
# nomadic device&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope</id>
		<title>In-vehicle/Roadmap/FeatureScope</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope"/>
				<updated>2011-06-25T10:57:22Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Map_Function */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This topic provides an outline of requirements for a head unit.  The requirements are derived from a real life development project for in-vehicle infotainment platform.  ''This is still work in progress--the content will be added gradually.''&lt;br /&gt;
&lt;br /&gt;
Some of the requirements below will be fulfilled outside of the MeeGo IVI based software.  For example, the implementation of CAN network interface and early audio functions most probably falls into this category.  The decisions about implementation of specific requirements in MeeGo IVI software will be made assuming a specific [[In-vehicle/Roadmap/SystemArchitecture|system architecture]].&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
=== Performance ===&lt;br /&gt;
# After power-on, the head unit displays a static splash screen within 200 ms.&lt;br /&gt;
# After power-on, the head unit displays an animated splash screen (pre-defined, fixed) within 200 ms and at the frame rate above 4 fps.&lt;br /&gt;
# After power-on, the head unit is able to play early audio (e.g. chimes and gongs--minimal set, best suited type, simple) within max. 1 s.&lt;br /&gt;
# After power-on, the head unit plays FM radio, resuming the last station before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit plays compressed audio from a connected media device (e.g. MP3 from USB stick), resuming the last track played before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the rear view camera output within max. 2 s.&lt;br /&gt;
# After power-on, the head unit accepts first user input (e.g. HMI menu, screen, volume control) within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the Navigation map and starts the route guidance, resuming the previous route, within max. 5 s.&lt;br /&gt;
# Head unit reacts to user input via HMI (touch screen events, button or switch presses) within max. 100 ms.  Head unit displays interim response (e.g. sand glass) for all requests that cannot be completed within this time&lt;br /&gt;
# Head unit performs voice recognition for a single word against G2P vocabulary within max. 200 ms measured from the end of utterance (silence detection) to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit performs hand writing recognition against Chinese standard 2000 character set within max. 200 ms measured from end of entry to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit exhibits the refresh rate of min 15 fps for the navigation map in any scaling.&lt;br /&gt;
# Head unit exhibits a graphics rendering frame rate (for HMI animations and Navigation maps) of min. 15 fps.&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
=== Audio_Codecs_Playback ===&lt;br /&gt;
# Head unit supports the following codecs:&lt;br /&gt;
## AAC LC&lt;br /&gt;
## MP3&lt;br /&gt;
## WMA&lt;br /&gt;
## WAV&lt;br /&gt;
## Ogg Vorbis&lt;br /&gt;
## FLAC&lt;br /&gt;
&lt;br /&gt;
=== Audio_Processing_And_Management ===&lt;br /&gt;
# Head unit supports up to 4 independent audio zones (sinks).  One zone if 5.1 channels (e.g. cabin speakers) and others are stereo.  (Each zone might require its own independent audio processing and audio codec instances.)&lt;br /&gt;
# Head unit allows the user to adjust at least audio treble and bass level.&lt;br /&gt;
# Head unit allows the user to adjust balance and fade level.&lt;br /&gt;
# Head unit is capable of playing back any of its sources to any of 4 audio zones including simultaneous playback to up to 4 audio zones.&lt;br /&gt;
# Head unit uses pre-defined fader ramps when switching the audio source for any particular audio zone.&lt;br /&gt;
# For each audio zone, the head unit keeps track of the most recently played audio source and restores it upon startup.  (For example, when the FM tuner was played to the cabin speakers and the head unit has been switched off, it would attempt tuning to the same FM station and putting it to the cabin speakers upon the next startup.)&lt;br /&gt;
# For each audio zone, all available audio sources are assigned a unique priority.  When an audio source is being played back and a higher priority source becomes available (e.g. the phone application attempts to play a ring tone), the latter overrides the former.&lt;br /&gt;
## As a configuration option, overriding can be done either by muting the first source and playing back the second source, or by lowering the volume of the first source and mixing it with the second source.&lt;br /&gt;
&lt;br /&gt;
=== Audio_Generation ===&lt;br /&gt;
# chimes and gongs&lt;br /&gt;
# calibration to interior&lt;br /&gt;
&lt;br /&gt;
=== Audio_Recording ===&lt;br /&gt;
# voice&lt;br /&gt;
# radio&lt;br /&gt;
# podcasts&lt;br /&gt;
&lt;br /&gt;
=== Audio_Volume_Control ===&lt;br /&gt;
# Volume level is adjustable by the user.&lt;br /&gt;
## Adjustments by the user are only accepted during actual audio playback.  (In other words, any volume changes e.g. during start up phase and before the audio output can be heard will be ignored.)&lt;br /&gt;
## The volume level selection by the user is maintained for each audio source / sink pair individually.&lt;br /&gt;
# Volume level is adjusted by the head unit accordingly to the current vehicle speed.&lt;br /&gt;
# Volume level set by the user is preserved through shutdown cycle.&lt;br /&gt;
## Upon start up, the previous volume level is only restored up to a defined 'start up maximum' (as contrasted to the 'absolute maximum' that can be set after the head unit is up and running in its normal mode).&lt;br /&gt;
# Under limit volume need to be set as some low level NOT minimum just to make sure that at leaset user can recognize low level volume even though user set the volume to minimum &amp;quot;basically mute&amp;quot; before the power cycle&lt;br /&gt;
# Upper limit volume need to be set as some high level NOT maximum just to make sure that user can not be annoyed due to the previous maximum volume setting.&lt;br /&gt;
# In Emergency Case, volume should not be adjusted by the user, volume need to be fit as some very loud level as much as no sound is masked with ambient noisy backgroud,&lt;br /&gt;
&lt;br /&gt;
=== Handfree Functionality ===&lt;br /&gt;
# Noise reduction &lt;br /&gt;
# Echo cancellation &lt;br /&gt;
# Residual echo cancellation &lt;br /&gt;
# Automatic gain control&lt;br /&gt;
# Programmable Equalization &lt;br /&gt;
# Performance Requirement &lt;br /&gt;
  - objective testing : VDA 1.6 &lt;br /&gt;
  - subjective testing : In-Vehicle live testing&lt;br /&gt;
&lt;br /&gt;
== Connectivity ==&lt;br /&gt;
=== Wireless_Interfaces ===&lt;br /&gt;
==== Wireless_Infrared_IRDA ====&lt;br /&gt;
==== Wireless_WiFi_Connection ====&lt;br /&gt;
# access point&lt;br /&gt;
# client&lt;br /&gt;
&lt;br /&gt;
==== Wireless_Bluetooth_Connection_and_Telephony ====&lt;br /&gt;
==== Wireless_Cellular_Mobile_Telephony ====&lt;br /&gt;
==== Wireless_BT_Hands-free_Telephony ====&lt;br /&gt;
# profiles&lt;br /&gt;
# Acoustic Echo Cancellation / Noise Reduction (AEC / NR)&lt;br /&gt;
# single and dual microphone&lt;br /&gt;
&lt;br /&gt;
=== Wired_Interfaces ===&lt;br /&gt;
==== USB_Connection_to_CE_Devices ====&lt;br /&gt;
==== Removable_SD_Card_Connections ====&lt;br /&gt;
&lt;br /&gt;
=== Internet_Access_and_Browser ===&lt;br /&gt;
# internet radio&lt;br /&gt;
# podcasts&lt;br /&gt;
# applications (e.g. google maps)&lt;br /&gt;
# social networks&lt;br /&gt;
&lt;br /&gt;
=== Phone_Functionality ===&lt;br /&gt;
# internal phone book&lt;br /&gt;
# VoIP&lt;br /&gt;
&lt;br /&gt;
=== Terminal_Mode_Functionality ===&lt;br /&gt;
=== Microsoft_Plays_From_Device ===&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Personalization ===&lt;br /&gt;
# user profiles&lt;br /&gt;
&lt;br /&gt;
== Driver_Assistance ==&lt;br /&gt;
# camera input processing&lt;br /&gt;
# electronic horizon&lt;br /&gt;
&lt;br /&gt;
== Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
== HMI ==&lt;br /&gt;
=== User_Inputs_Support ===&lt;br /&gt;
==== UI_Devices_Support ====&lt;br /&gt;
==== UI_Touch_Sreen_Hand_Writing_Detection ====&lt;br /&gt;
==== UI_Speech_Recognition_Function ====&lt;br /&gt;
1. Recognition Category&lt;br /&gt;
   1. discrete command - command, single digit ( e.g. &amp;quot;dial&amp;quot;,'1','2',..etc )&lt;br /&gt;
   2. continuous command - continuous digit ( e.g. &amp;quot;dial 555-1212&amp;quot;, &amp;quot; 555-1212&amp;quot; )&lt;br /&gt;
   3. natural language understaning - flexible recognition ( e.g. &amp;quot;I want to make a call to john&amp;quot;,&lt;br /&gt;
     &amp;quot;please route to the san franciso regency hyatt hotel&amp;quot;,..etc)&lt;br /&gt;
&lt;br /&gt;
2. Recognition Response time &lt;br /&gt;
   1. discrete command - 300ms &lt;br /&gt;
   2. continuous command - 1200ms &lt;br /&gt;
   3. natural language understanding - 1500ms&lt;br /&gt;
&lt;br /&gt;
3. Recognition performance measurement &lt;br /&gt;
   1. overall accuracy measurement&lt;br /&gt;
      Average Sentence Accuracy = (Total Number of Correct Sentences)/(Total Number of Sentence Attempted)&lt;br /&gt;
   2. individual accuracy measurement &lt;br /&gt;
      Average Word Accuracy = ((Total number of attempts) - (insertions) - (deletions) - (substitutions))/Total number of attempts&lt;br /&gt;
  &lt;br /&gt;
4. Regnition performance requirement &lt;br /&gt;
   1. discrete command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection ) &lt;br /&gt;
   2. continuous command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection )&lt;br /&gt;
&lt;br /&gt;
=== Multiple_HMI_Languages ===&lt;br /&gt;
=== Software_Support ===&lt;br /&gt;
=== Users_Manual_Integrated ===&lt;br /&gt;
=== Graphics_Functions ===&lt;br /&gt;
&lt;br /&gt;
== Media ==&lt;br /&gt;
=== Media_Player_and_Browser_Requirements ===&lt;br /&gt;
# number of player instances&lt;br /&gt;
# playlists&lt;br /&gt;
# ripping&lt;br /&gt;
&lt;br /&gt;
=== Storage_Media_Support ===&lt;br /&gt;
&lt;br /&gt;
== Navigation ==&lt;br /&gt;
=== Navigation_Engine ===&lt;br /&gt;
=== Map_Function ===&lt;br /&gt;
# database&lt;br /&gt;
# map source&lt;br /&gt;
# 2D/3D representation (pitch)&lt;br /&gt;
# zooming (IN / OUT / auto-zoom)&lt;br /&gt;
# panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
# orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
# 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)&lt;br /&gt;
# set / clear destination&lt;br /&gt;
# center the map&lt;br /&gt;
# set/change map layout (day / night / detailed - POIs / plain simple)&lt;br /&gt;
# bookmarks (see also Destination_Import)&lt;br /&gt;
# OSD (on-screen display) information&lt;br /&gt;
&lt;br /&gt;
=== Real_Time_Traffic_Information ===&lt;br /&gt;
=== Speech_Support_for_Navigation ===&lt;br /&gt;
=== Positioning_Capabilities ===&lt;br /&gt;
=== Points_of_Interestes_POIs ===&lt;br /&gt;
=== Destination_Import ===&lt;br /&gt;
# from file (eg. USB)&lt;br /&gt;
# from web server / web service&lt;br /&gt;
# free input&lt;br /&gt;
&lt;br /&gt;
== Network ==&lt;br /&gt;
=== CAN_Network_Interface ===&lt;br /&gt;
=== MOST_Network_Interface ===&lt;br /&gt;
=== Ethernet_Network_Interface ===&lt;br /&gt;
# DLNA&lt;br /&gt;
# AVB&lt;br /&gt;
&lt;br /&gt;
=== Serial_Network_Interfaces ===&lt;br /&gt;
# UART&lt;br /&gt;
# LIN&lt;br /&gt;
&lt;br /&gt;
=== Gateway ===&lt;br /&gt;
&lt;br /&gt;
== Power ==&lt;br /&gt;
=== Power_Management_Master ===&lt;br /&gt;
=== Power_Modes ===&lt;br /&gt;
=== Wakeup_Conditions ===&lt;br /&gt;
=== Monitor_Voltage_Ranges ===&lt;br /&gt;
&lt;br /&gt;
== Telematics and Data Services ==&lt;br /&gt;
=== Emergency_and_Breakdown_Call ===&lt;br /&gt;
=== JAVA_Telematics_Client ===&lt;br /&gt;
=== Remote_Diagnostics ===&lt;br /&gt;
=== Vehicle_Tracking ===&lt;br /&gt;
&lt;br /&gt;
== Radio and Video Broadcast Tuner ==&lt;br /&gt;
=== Radio_Broadcast_Reception ===&lt;br /&gt;
==== Radio_AM_FM_Broadcast_Reception ====&lt;br /&gt;
==== Radio_SDARS_Broadcast_Reception ====&lt;br /&gt;
==== Radio_HD_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DAB_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DRM_Broadcast_Reception ====&lt;br /&gt;
==== Broadcast_Sources_Pause_Resume ====&lt;br /&gt;
# time shift&lt;br /&gt;
&lt;br /&gt;
==== Radio_Further_Traffic_and_Data_Services ====&lt;br /&gt;
=== Video_Broadcast_Reception ===&lt;br /&gt;
&lt;br /&gt;
== Video ==&lt;br /&gt;
=== Video_Playback_Formats_and_Codecs ===&lt;br /&gt;
# containers&lt;br /&gt;
# codecs&lt;br /&gt;
# resolutions&lt;br /&gt;
# frame rates&lt;br /&gt;
&lt;br /&gt;
=== Video_Decoding_Performance ===&lt;br /&gt;
&lt;br /&gt;
== Voice ==&lt;br /&gt;
=== Voice_Tag_Processing ===&lt;br /&gt;
=== Voice_Recognition_Capabilties ===&lt;br /&gt;
=== Voice_Output_Functionality ===&lt;br /&gt;
&lt;br /&gt;
== Software Services ==&lt;br /&gt;
=== Software_Architectural_Requirements ===&lt;br /&gt;
=== Software_Update ===&lt;br /&gt;
=== Office_Applications ===&lt;br /&gt;
=== Security_Features ===&lt;br /&gt;
# user privacy&lt;br /&gt;
# data storage security&lt;br /&gt;
# data access authorization&lt;br /&gt;
&lt;br /&gt;
=== Gaming_Features ===&lt;br /&gt;
# pre-installed&lt;br /&gt;
# nomadic device&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope</id>
		<title>In-vehicle/Roadmap/FeatureScope</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope"/>
				<updated>2011-06-25T10:54:06Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: /* Destination_Import */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This topic provides an outline of requirements for a head unit.  The requirements are derived from a real life development project for in-vehicle infotainment platform.  ''This is still work in progress--the content will be added gradually.''&lt;br /&gt;
&lt;br /&gt;
Some of the requirements below will be fulfilled outside of the MeeGo IVI based software.  For example, the implementation of CAN network interface and early audio functions most probably falls into this category.  The decisions about implementation of specific requirements in MeeGo IVI software will be made assuming a specific [[In-vehicle/Roadmap/SystemArchitecture|system architecture]].&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
=== Performance ===&lt;br /&gt;
# After power-on, the head unit displays a static splash screen within 200 ms.&lt;br /&gt;
# After power-on, the head unit displays an animated splash screen (pre-defined, fixed) within 200 ms and at the frame rate above 4 fps.&lt;br /&gt;
# After power-on, the head unit is able to play early audio (e.g. chimes and gongs--minimal set, best suited type, simple) within max. 1 s.&lt;br /&gt;
# After power-on, the head unit plays FM radio, resuming the last station before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit plays compressed audio from a connected media device (e.g. MP3 from USB stick), resuming the last track played before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the rear view camera output within max. 2 s.&lt;br /&gt;
# After power-on, the head unit accepts first user input (e.g. HMI menu, screen, volume control) within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the Navigation map and starts the route guidance, resuming the previous route, within max. 5 s.&lt;br /&gt;
# Head unit reacts to user input via HMI (touch screen events, button or switch presses) within max. 100 ms.  Head unit displays interim response (e.g. sand glass) for all requests that cannot be completed within this time&lt;br /&gt;
# Head unit performs voice recognition for a single word against G2P vocabulary within max. 200 ms measured from the end of utterance (silence detection) to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit performs hand writing recognition against Chinese standard 2000 character set within max. 200 ms measured from end of entry to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit exhibits the refresh rate of min 15 fps for the navigation map in any scaling.&lt;br /&gt;
# Head unit exhibits a graphics rendering frame rate (for HMI animations and Navigation maps) of min. 15 fps.&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
=== Audio_Codecs_Playback ===&lt;br /&gt;
# Head unit supports the following codecs:&lt;br /&gt;
## AAC LC&lt;br /&gt;
## MP3&lt;br /&gt;
## WMA&lt;br /&gt;
## WAV&lt;br /&gt;
## Ogg Vorbis&lt;br /&gt;
## FLAC&lt;br /&gt;
&lt;br /&gt;
=== Audio_Processing_And_Management ===&lt;br /&gt;
# Head unit supports up to 4 independent audio zones (sinks).  One zone if 5.1 channels (e.g. cabin speakers) and others are stereo.  (Each zone might require its own independent audio processing and audio codec instances.)&lt;br /&gt;
# Head unit allows the user to adjust at least audio treble and bass level.&lt;br /&gt;
# Head unit allows the user to adjust balance and fade level.&lt;br /&gt;
# Head unit is capable of playing back any of its sources to any of 4 audio zones including simultaneous playback to up to 4 audio zones.&lt;br /&gt;
# Head unit uses pre-defined fader ramps when switching the audio source for any particular audio zone.&lt;br /&gt;
# For each audio zone, the head unit keeps track of the most recently played audio source and restores it upon startup.  (For example, when the FM tuner was played to the cabin speakers and the head unit has been switched off, it would attempt tuning to the same FM station and putting it to the cabin speakers upon the next startup.)&lt;br /&gt;
# For each audio zone, all available audio sources are assigned a unique priority.  When an audio source is being played back and a higher priority source becomes available (e.g. the phone application attempts to play a ring tone), the latter overrides the former.&lt;br /&gt;
## As a configuration option, overriding can be done either by muting the first source and playing back the second source, or by lowering the volume of the first source and mixing it with the second source.&lt;br /&gt;
&lt;br /&gt;
=== Audio_Generation ===&lt;br /&gt;
# chimes and gongs&lt;br /&gt;
# calibration to interior&lt;br /&gt;
&lt;br /&gt;
=== Audio_Recording ===&lt;br /&gt;
# voice&lt;br /&gt;
# radio&lt;br /&gt;
# podcasts&lt;br /&gt;
&lt;br /&gt;
=== Audio_Volume_Control ===&lt;br /&gt;
# Volume level is adjustable by the user.&lt;br /&gt;
## Adjustments by the user are only accepted during actual audio playback.  (In other words, any volume changes e.g. during start up phase and before the audio output can be heard will be ignored.)&lt;br /&gt;
## The volume level selection by the user is maintained for each audio source / sink pair individually.&lt;br /&gt;
# Volume level is adjusted by the head unit accordingly to the current vehicle speed.&lt;br /&gt;
# Volume level set by the user is preserved through shutdown cycle.&lt;br /&gt;
## Upon start up, the previous volume level is only restored up to a defined 'start up maximum' (as contrasted to the 'absolute maximum' that can be set after the head unit is up and running in its normal mode).&lt;br /&gt;
# Under limit volume need to be set as some low level NOT minimum just to make sure that at leaset user can recognize low level volume even though user set the volume to minimum &amp;quot;basically mute&amp;quot; before the power cycle&lt;br /&gt;
# Upper limit volume need to be set as some high level NOT maximum just to make sure that user can not be annoyed due to the previous maximum volume setting.&lt;br /&gt;
# In Emergency Case, volume should not be adjusted by the user, volume need to be fit as some very loud level as much as no sound is masked with ambient noisy backgroud,&lt;br /&gt;
&lt;br /&gt;
=== Handfree Functionality ===&lt;br /&gt;
# Noise reduction &lt;br /&gt;
# Echo cancellation &lt;br /&gt;
# Residual echo cancellation &lt;br /&gt;
# Automatic gain control&lt;br /&gt;
# Programmable Equalization &lt;br /&gt;
# Performance Requirement &lt;br /&gt;
  - objective testing : VDA 1.6 &lt;br /&gt;
  - subjective testing : In-Vehicle live testing&lt;br /&gt;
&lt;br /&gt;
== Connectivity ==&lt;br /&gt;
=== Wireless_Interfaces ===&lt;br /&gt;
==== Wireless_Infrared_IRDA ====&lt;br /&gt;
==== Wireless_WiFi_Connection ====&lt;br /&gt;
# access point&lt;br /&gt;
# client&lt;br /&gt;
&lt;br /&gt;
==== Wireless_Bluetooth_Connection_and_Telephony ====&lt;br /&gt;
==== Wireless_Cellular_Mobile_Telephony ====&lt;br /&gt;
==== Wireless_BT_Hands-free_Telephony ====&lt;br /&gt;
# profiles&lt;br /&gt;
# Acoustic Echo Cancellation / Noise Reduction (AEC / NR)&lt;br /&gt;
# single and dual microphone&lt;br /&gt;
&lt;br /&gt;
=== Wired_Interfaces ===&lt;br /&gt;
==== USB_Connection_to_CE_Devices ====&lt;br /&gt;
==== Removable_SD_Card_Connections ====&lt;br /&gt;
&lt;br /&gt;
=== Internet_Access_and_Browser ===&lt;br /&gt;
# internet radio&lt;br /&gt;
# podcasts&lt;br /&gt;
# applications (e.g. google maps)&lt;br /&gt;
# social networks&lt;br /&gt;
&lt;br /&gt;
=== Phone_Functionality ===&lt;br /&gt;
# internal phone book&lt;br /&gt;
# VoIP&lt;br /&gt;
&lt;br /&gt;
=== Terminal_Mode_Functionality ===&lt;br /&gt;
=== Microsoft_Plays_From_Device ===&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Personalization ===&lt;br /&gt;
# user profiles&lt;br /&gt;
&lt;br /&gt;
== Driver_Assistance ==&lt;br /&gt;
# camera input processing&lt;br /&gt;
# electronic horizon&lt;br /&gt;
&lt;br /&gt;
== Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
== HMI ==&lt;br /&gt;
=== User_Inputs_Support ===&lt;br /&gt;
==== UI_Devices_Support ====&lt;br /&gt;
==== UI_Touch_Sreen_Hand_Writing_Detection ====&lt;br /&gt;
==== UI_Speech_Recognition_Function ====&lt;br /&gt;
1. Recognition Category&lt;br /&gt;
   1. discrete command - command, single digit ( e.g. &amp;quot;dial&amp;quot;,'1','2',..etc )&lt;br /&gt;
   2. continuous command - continuous digit ( e.g. &amp;quot;dial 555-1212&amp;quot;, &amp;quot; 555-1212&amp;quot; )&lt;br /&gt;
   3. natural language understaning - flexible recognition ( e.g. &amp;quot;I want to make a call to john&amp;quot;,&lt;br /&gt;
     &amp;quot;please route to the san franciso regency hyatt hotel&amp;quot;,..etc)&lt;br /&gt;
&lt;br /&gt;
2. Recognition Response time &lt;br /&gt;
   1. discrete command - 300ms &lt;br /&gt;
   2. continuous command - 1200ms &lt;br /&gt;
   3. natural language understanding - 1500ms&lt;br /&gt;
&lt;br /&gt;
3. Recognition performance measurement &lt;br /&gt;
   1. overall accuracy measurement&lt;br /&gt;
      Average Sentence Accuracy = (Total Number of Correct Sentences)/(Total Number of Sentence Attempted)&lt;br /&gt;
   2. individual accuracy measurement &lt;br /&gt;
      Average Word Accuracy = ((Total number of attempts) - (insertions) - (deletions) - (substitutions))/Total number of attempts&lt;br /&gt;
  &lt;br /&gt;
4. Regnition performance requirement &lt;br /&gt;
   1. discrete command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection ) &lt;br /&gt;
   2. continuous command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection )&lt;br /&gt;
&lt;br /&gt;
=== Multiple_HMI_Languages ===&lt;br /&gt;
=== Software_Support ===&lt;br /&gt;
=== Users_Manual_Integrated ===&lt;br /&gt;
=== Graphics_Functions ===&lt;br /&gt;
&lt;br /&gt;
== Media ==&lt;br /&gt;
=== Media_Player_and_Browser_Requirements ===&lt;br /&gt;
# number of player instances&lt;br /&gt;
# playlists&lt;br /&gt;
# ripping&lt;br /&gt;
&lt;br /&gt;
=== Storage_Media_Support ===&lt;br /&gt;
&lt;br /&gt;
== Navigation ==&lt;br /&gt;
=== Navigation_Engine ===&lt;br /&gt;
=== Map_Function ===&lt;br /&gt;
# database&lt;br /&gt;
# map source&lt;br /&gt;
# 2D/3D representation (pitch)&lt;br /&gt;
# zooming (IN / OUT / auto-zoom)&lt;br /&gt;
# panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
# orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
# 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)&lt;br /&gt;
# set / clear destination&lt;br /&gt;
# center the map&lt;br /&gt;
# set/change map layout (day / night / detailed - POIs / plain simple)&lt;br /&gt;
# bookmarks (see also Destination_Import)&lt;br /&gt;
&lt;br /&gt;
=== Real_Time_Traffic_Information ===&lt;br /&gt;
=== Speech_Support_for_Navigation ===&lt;br /&gt;
=== Positioning_Capabilities ===&lt;br /&gt;
=== Points_of_Interestes_POIs ===&lt;br /&gt;
=== Destination_Import ===&lt;br /&gt;
# from file (eg. USB)&lt;br /&gt;
# from web server / web service&lt;br /&gt;
# free input&lt;br /&gt;
&lt;br /&gt;
== Network ==&lt;br /&gt;
=== CAN_Network_Interface ===&lt;br /&gt;
=== MOST_Network_Interface ===&lt;br /&gt;
=== Ethernet_Network_Interface ===&lt;br /&gt;
# DLNA&lt;br /&gt;
# AVB&lt;br /&gt;
&lt;br /&gt;
=== Serial_Network_Interfaces ===&lt;br /&gt;
# UART&lt;br /&gt;
# LIN&lt;br /&gt;
&lt;br /&gt;
=== Gateway ===&lt;br /&gt;
&lt;br /&gt;
== Power ==&lt;br /&gt;
=== Power_Management_Master ===&lt;br /&gt;
=== Power_Modes ===&lt;br /&gt;
=== Wakeup_Conditions ===&lt;br /&gt;
=== Monitor_Voltage_Ranges ===&lt;br /&gt;
&lt;br /&gt;
== Telematics and Data Services ==&lt;br /&gt;
=== Emergency_and_Breakdown_Call ===&lt;br /&gt;
=== JAVA_Telematics_Client ===&lt;br /&gt;
=== Remote_Diagnostics ===&lt;br /&gt;
=== Vehicle_Tracking ===&lt;br /&gt;
&lt;br /&gt;
== Radio and Video Broadcast Tuner ==&lt;br /&gt;
=== Radio_Broadcast_Reception ===&lt;br /&gt;
==== Radio_AM_FM_Broadcast_Reception ====&lt;br /&gt;
==== Radio_SDARS_Broadcast_Reception ====&lt;br /&gt;
==== Radio_HD_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DAB_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DRM_Broadcast_Reception ====&lt;br /&gt;
==== Broadcast_Sources_Pause_Resume ====&lt;br /&gt;
# time shift&lt;br /&gt;
&lt;br /&gt;
==== Radio_Further_Traffic_and_Data_Services ====&lt;br /&gt;
=== Video_Broadcast_Reception ===&lt;br /&gt;
&lt;br /&gt;
== Video ==&lt;br /&gt;
=== Video_Playback_Formats_and_Codecs ===&lt;br /&gt;
# containers&lt;br /&gt;
# codecs&lt;br /&gt;
# resolutions&lt;br /&gt;
# frame rates&lt;br /&gt;
&lt;br /&gt;
=== Video_Decoding_Performance ===&lt;br /&gt;
&lt;br /&gt;
== Voice ==&lt;br /&gt;
=== Voice_Tag_Processing ===&lt;br /&gt;
=== Voice_Recognition_Capabilties ===&lt;br /&gt;
=== Voice_Output_Functionality ===&lt;br /&gt;
&lt;br /&gt;
== Software Services ==&lt;br /&gt;
=== Software_Architectural_Requirements ===&lt;br /&gt;
=== Software_Update ===&lt;br /&gt;
=== Office_Applications ===&lt;br /&gt;
=== Security_Features ===&lt;br /&gt;
# user privacy&lt;br /&gt;
# data storage security&lt;br /&gt;
# data access authorization&lt;br /&gt;
&lt;br /&gt;
=== Gaming_Features ===&lt;br /&gt;
# pre-installed&lt;br /&gt;
# nomadic device&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope</id>
		<title>In-vehicle/Roadmap/FeatureScope</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope"/>
				<updated>2011-06-25T10:53:06Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This topic provides an outline of requirements for a head unit.  The requirements are derived from a real life development project for in-vehicle infotainment platform.  ''This is still work in progress--the content will be added gradually.''&lt;br /&gt;
&lt;br /&gt;
Some of the requirements below will be fulfilled outside of the MeeGo IVI based software.  For example, the implementation of CAN network interface and early audio functions most probably falls into this category.  The decisions about implementation of specific requirements in MeeGo IVI software will be made assuming a specific [[In-vehicle/Roadmap/SystemArchitecture|system architecture]].&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
=== Performance ===&lt;br /&gt;
# After power-on, the head unit displays a static splash screen within 200 ms.&lt;br /&gt;
# After power-on, the head unit displays an animated splash screen (pre-defined, fixed) within 200 ms and at the frame rate above 4 fps.&lt;br /&gt;
# After power-on, the head unit is able to play early audio (e.g. chimes and gongs--minimal set, best suited type, simple) within max. 1 s.&lt;br /&gt;
# After power-on, the head unit plays FM radio, resuming the last station before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit plays compressed audio from a connected media device (e.g. MP3 from USB stick), resuming the last track played before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the rear view camera output within max. 2 s.&lt;br /&gt;
# After power-on, the head unit accepts first user input (e.g. HMI menu, screen, volume control) within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the Navigation map and starts the route guidance, resuming the previous route, within max. 5 s.&lt;br /&gt;
# Head unit reacts to user input via HMI (touch screen events, button or switch presses) within max. 100 ms.  Head unit displays interim response (e.g. sand glass) for all requests that cannot be completed within this time&lt;br /&gt;
# Head unit performs voice recognition for a single word against G2P vocabulary within max. 200 ms measured from the end of utterance (silence detection) to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit performs hand writing recognition against Chinese standard 2000 character set within max. 200 ms measured from end of entry to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit exhibits the refresh rate of min 15 fps for the navigation map in any scaling.&lt;br /&gt;
# Head unit exhibits a graphics rendering frame rate (for HMI animations and Navigation maps) of min. 15 fps.&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
=== Audio_Codecs_Playback ===&lt;br /&gt;
# Head unit supports the following codecs:&lt;br /&gt;
## AAC LC&lt;br /&gt;
## MP3&lt;br /&gt;
## WMA&lt;br /&gt;
## WAV&lt;br /&gt;
## Ogg Vorbis&lt;br /&gt;
## FLAC&lt;br /&gt;
&lt;br /&gt;
=== Audio_Processing_And_Management ===&lt;br /&gt;
# Head unit supports up to 4 independent audio zones (sinks).  One zone if 5.1 channels (e.g. cabin speakers) and others are stereo.  (Each zone might require its own independent audio processing and audio codec instances.)&lt;br /&gt;
# Head unit allows the user to adjust at least audio treble and bass level.&lt;br /&gt;
# Head unit allows the user to adjust balance and fade level.&lt;br /&gt;
# Head unit is capable of playing back any of its sources to any of 4 audio zones including simultaneous playback to up to 4 audio zones.&lt;br /&gt;
# Head unit uses pre-defined fader ramps when switching the audio source for any particular audio zone.&lt;br /&gt;
# For each audio zone, the head unit keeps track of the most recently played audio source and restores it upon startup.  (For example, when the FM tuner was played to the cabin speakers and the head unit has been switched off, it would attempt tuning to the same FM station and putting it to the cabin speakers upon the next startup.)&lt;br /&gt;
# For each audio zone, all available audio sources are assigned a unique priority.  When an audio source is being played back and a higher priority source becomes available (e.g. the phone application attempts to play a ring tone), the latter overrides the former.&lt;br /&gt;
## As a configuration option, overriding can be done either by muting the first source and playing back the second source, or by lowering the volume of the first source and mixing it with the second source.&lt;br /&gt;
&lt;br /&gt;
=== Audio_Generation ===&lt;br /&gt;
# chimes and gongs&lt;br /&gt;
# calibration to interior&lt;br /&gt;
&lt;br /&gt;
=== Audio_Recording ===&lt;br /&gt;
# voice&lt;br /&gt;
# radio&lt;br /&gt;
# podcasts&lt;br /&gt;
&lt;br /&gt;
=== Audio_Volume_Control ===&lt;br /&gt;
# Volume level is adjustable by the user.&lt;br /&gt;
## Adjustments by the user are only accepted during actual audio playback.  (In other words, any volume changes e.g. during start up phase and before the audio output can be heard will be ignored.)&lt;br /&gt;
## The volume level selection by the user is maintained for each audio source / sink pair individually.&lt;br /&gt;
# Volume level is adjusted by the head unit accordingly to the current vehicle speed.&lt;br /&gt;
# Volume level set by the user is preserved through shutdown cycle.&lt;br /&gt;
## Upon start up, the previous volume level is only restored up to a defined 'start up maximum' (as contrasted to the 'absolute maximum' that can be set after the head unit is up and running in its normal mode).&lt;br /&gt;
# Under limit volume need to be set as some low level NOT minimum just to make sure that at leaset user can recognize low level volume even though user set the volume to minimum &amp;quot;basically mute&amp;quot; before the power cycle&lt;br /&gt;
# Upper limit volume need to be set as some high level NOT maximum just to make sure that user can not be annoyed due to the previous maximum volume setting.&lt;br /&gt;
# In Emergency Case, volume should not be adjusted by the user, volume need to be fit as some very loud level as much as no sound is masked with ambient noisy backgroud,&lt;br /&gt;
&lt;br /&gt;
=== Handfree Functionality ===&lt;br /&gt;
# Noise reduction &lt;br /&gt;
# Echo cancellation &lt;br /&gt;
# Residual echo cancellation &lt;br /&gt;
# Automatic gain control&lt;br /&gt;
# Programmable Equalization &lt;br /&gt;
# Performance Requirement &lt;br /&gt;
  - objective testing : VDA 1.6 &lt;br /&gt;
  - subjective testing : In-Vehicle live testing&lt;br /&gt;
&lt;br /&gt;
== Connectivity ==&lt;br /&gt;
=== Wireless_Interfaces ===&lt;br /&gt;
==== Wireless_Infrared_IRDA ====&lt;br /&gt;
==== Wireless_WiFi_Connection ====&lt;br /&gt;
# access point&lt;br /&gt;
# client&lt;br /&gt;
&lt;br /&gt;
==== Wireless_Bluetooth_Connection_and_Telephony ====&lt;br /&gt;
==== Wireless_Cellular_Mobile_Telephony ====&lt;br /&gt;
==== Wireless_BT_Hands-free_Telephony ====&lt;br /&gt;
# profiles&lt;br /&gt;
# Acoustic Echo Cancellation / Noise Reduction (AEC / NR)&lt;br /&gt;
# single and dual microphone&lt;br /&gt;
&lt;br /&gt;
=== Wired_Interfaces ===&lt;br /&gt;
==== USB_Connection_to_CE_Devices ====&lt;br /&gt;
==== Removable_SD_Card_Connections ====&lt;br /&gt;
&lt;br /&gt;
=== Internet_Access_and_Browser ===&lt;br /&gt;
# internet radio&lt;br /&gt;
# podcasts&lt;br /&gt;
# applications (e.g. google maps)&lt;br /&gt;
# social networks&lt;br /&gt;
&lt;br /&gt;
=== Phone_Functionality ===&lt;br /&gt;
# internal phone book&lt;br /&gt;
# VoIP&lt;br /&gt;
&lt;br /&gt;
=== Terminal_Mode_Functionality ===&lt;br /&gt;
=== Microsoft_Plays_From_Device ===&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Personalization ===&lt;br /&gt;
# user profiles&lt;br /&gt;
&lt;br /&gt;
== Driver_Assistance ==&lt;br /&gt;
# camera input processing&lt;br /&gt;
# electronic horizon&lt;br /&gt;
&lt;br /&gt;
== Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
== HMI ==&lt;br /&gt;
=== User_Inputs_Support ===&lt;br /&gt;
==== UI_Devices_Support ====&lt;br /&gt;
==== UI_Touch_Sreen_Hand_Writing_Detection ====&lt;br /&gt;
==== UI_Speech_Recognition_Function ====&lt;br /&gt;
1. Recognition Category&lt;br /&gt;
   1. discrete command - command, single digit ( e.g. &amp;quot;dial&amp;quot;,'1','2',..etc )&lt;br /&gt;
   2. continuous command - continuous digit ( e.g. &amp;quot;dial 555-1212&amp;quot;, &amp;quot; 555-1212&amp;quot; )&lt;br /&gt;
   3. natural language understaning - flexible recognition ( e.g. &amp;quot;I want to make a call to john&amp;quot;,&lt;br /&gt;
     &amp;quot;please route to the san franciso regency hyatt hotel&amp;quot;,..etc)&lt;br /&gt;
&lt;br /&gt;
2. Recognition Response time &lt;br /&gt;
   1. discrete command - 300ms &lt;br /&gt;
   2. continuous command - 1200ms &lt;br /&gt;
   3. natural language understanding - 1500ms&lt;br /&gt;
&lt;br /&gt;
3. Recognition performance measurement &lt;br /&gt;
   1. overall accuracy measurement&lt;br /&gt;
      Average Sentence Accuracy = (Total Number of Correct Sentences)/(Total Number of Sentence Attempted)&lt;br /&gt;
   2. individual accuracy measurement &lt;br /&gt;
      Average Word Accuracy = ((Total number of attempts) - (insertions) - (deletions) - (substitutions))/Total number of attempts&lt;br /&gt;
  &lt;br /&gt;
4. Regnition performance requirement &lt;br /&gt;
   1. discrete command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection ) &lt;br /&gt;
   2. continuous command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection )&lt;br /&gt;
&lt;br /&gt;
=== Multiple_HMI_Languages ===&lt;br /&gt;
=== Software_Support ===&lt;br /&gt;
=== Users_Manual_Integrated ===&lt;br /&gt;
=== Graphics_Functions ===&lt;br /&gt;
&lt;br /&gt;
== Media ==&lt;br /&gt;
=== Media_Player_and_Browser_Requirements ===&lt;br /&gt;
# number of player instances&lt;br /&gt;
# playlists&lt;br /&gt;
# ripping&lt;br /&gt;
&lt;br /&gt;
=== Storage_Media_Support ===&lt;br /&gt;
&lt;br /&gt;
== Navigation ==&lt;br /&gt;
=== Navigation_Engine ===&lt;br /&gt;
=== Map_Function ===&lt;br /&gt;
# database&lt;br /&gt;
# map source&lt;br /&gt;
# 2D/3D representation (pitch)&lt;br /&gt;
# zooming (IN / OUT / auto-zoom)&lt;br /&gt;
# panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
# orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
# 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)&lt;br /&gt;
# set / clear destination&lt;br /&gt;
# center the map&lt;br /&gt;
# set/change map layout (day / night / detailed - POIs / plain simple)&lt;br /&gt;
# bookmarks (see also Destination_Import)&lt;br /&gt;
&lt;br /&gt;
=== Real_Time_Traffic_Information ===&lt;br /&gt;
=== Speech_Support_for_Navigation ===&lt;br /&gt;
=== Positioning_Capabilities ===&lt;br /&gt;
=== Points_of_Interestes_POIs ===&lt;br /&gt;
=== Destination_Import ===&lt;br /&gt;
# from file (eg. USB)&lt;br /&gt;
# from web server&lt;br /&gt;
# free input&lt;br /&gt;
&lt;br /&gt;
== Network ==&lt;br /&gt;
=== CAN_Network_Interface ===&lt;br /&gt;
=== MOST_Network_Interface ===&lt;br /&gt;
=== Ethernet_Network_Interface ===&lt;br /&gt;
# DLNA&lt;br /&gt;
# AVB&lt;br /&gt;
&lt;br /&gt;
=== Serial_Network_Interfaces ===&lt;br /&gt;
# UART&lt;br /&gt;
# LIN&lt;br /&gt;
&lt;br /&gt;
=== Gateway ===&lt;br /&gt;
&lt;br /&gt;
== Power ==&lt;br /&gt;
=== Power_Management_Master ===&lt;br /&gt;
=== Power_Modes ===&lt;br /&gt;
=== Wakeup_Conditions ===&lt;br /&gt;
=== Monitor_Voltage_Ranges ===&lt;br /&gt;
&lt;br /&gt;
== Telematics and Data Services ==&lt;br /&gt;
=== Emergency_and_Breakdown_Call ===&lt;br /&gt;
=== JAVA_Telematics_Client ===&lt;br /&gt;
=== Remote_Diagnostics ===&lt;br /&gt;
=== Vehicle_Tracking ===&lt;br /&gt;
&lt;br /&gt;
== Radio and Video Broadcast Tuner ==&lt;br /&gt;
=== Radio_Broadcast_Reception ===&lt;br /&gt;
==== Radio_AM_FM_Broadcast_Reception ====&lt;br /&gt;
==== Radio_SDARS_Broadcast_Reception ====&lt;br /&gt;
==== Radio_HD_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DAB_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DRM_Broadcast_Reception ====&lt;br /&gt;
==== Broadcast_Sources_Pause_Resume ====&lt;br /&gt;
# time shift&lt;br /&gt;
&lt;br /&gt;
==== Radio_Further_Traffic_and_Data_Services ====&lt;br /&gt;
=== Video_Broadcast_Reception ===&lt;br /&gt;
&lt;br /&gt;
== Video ==&lt;br /&gt;
=== Video_Playback_Formats_and_Codecs ===&lt;br /&gt;
# containers&lt;br /&gt;
# codecs&lt;br /&gt;
# resolutions&lt;br /&gt;
# frame rates&lt;br /&gt;
&lt;br /&gt;
=== Video_Decoding_Performance ===&lt;br /&gt;
&lt;br /&gt;
== Voice ==&lt;br /&gt;
=== Voice_Tag_Processing ===&lt;br /&gt;
=== Voice_Recognition_Capabilties ===&lt;br /&gt;
=== Voice_Output_Functionality ===&lt;br /&gt;
&lt;br /&gt;
== Software Services ==&lt;br /&gt;
=== Software_Architectural_Requirements ===&lt;br /&gt;
=== Software_Update ===&lt;br /&gt;
=== Office_Applications ===&lt;br /&gt;
=== Security_Features ===&lt;br /&gt;
# user privacy&lt;br /&gt;
# data storage security&lt;br /&gt;
# data access authorization&lt;br /&gt;
&lt;br /&gt;
=== Gaming_Features ===&lt;br /&gt;
# pre-installed&lt;br /&gt;
# nomadic device&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope</id>
		<title>In-vehicle/Roadmap/FeatureScope</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope"/>
				<updated>2011-06-25T10:50:34Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This topic provides an outline of requirements for a head unit.  The requirements are derived from a real life development project for in-vehicle infotainment platform.  ''This is still work in progress--the content will be added gradually.''&lt;br /&gt;
&lt;br /&gt;
Some of the requirements below will be fulfilled outside of the MeeGo IVI based software.  For example, the implementation of CAN network interface and early audio functions most probably falls into this category.  The decisions about implementation of specific requirements in MeeGo IVI software will be made assuming a specific [[In-vehicle/Roadmap/SystemArchitecture|system architecture]].&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
=== Performance ===&lt;br /&gt;
# After power-on, the head unit displays a static splash screen within 200 ms.&lt;br /&gt;
# After power-on, the head unit displays an animated splash screen (pre-defined, fixed) within 200 ms and at the frame rate above 4 fps.&lt;br /&gt;
# After power-on, the head unit is able to play early audio (e.g. chimes and gongs--minimal set, best suited type, simple) within max. 1 s.&lt;br /&gt;
# After power-on, the head unit plays FM radio, resuming the last station before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit plays compressed audio from a connected media device (e.g. MP3 from USB stick), resuming the last track played before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the rear view camera output within max. 2 s.&lt;br /&gt;
# After power-on, the head unit accepts first user input (e.g. HMI menu, screen, volume control) within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the Navigation map and starts the route guidance, resuming the previous route, within max. 5 s.&lt;br /&gt;
# Head unit reacts to user input via HMI (touch screen events, button or switch presses) within max. 100 ms.  Head unit displays interim response (e.g. sand glass) for all requests that cannot be completed within this time&lt;br /&gt;
# Head unit performs voice recognition for a single word against G2P vocabulary within max. 200 ms measured from the end of utterance (silence detection) to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit performs hand writing recognition against Chinese standard 2000 character set within max. 200 ms measured from end of entry to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit exhibits the refresh rate of min 15 fps for the navigation map in any scaling.&lt;br /&gt;
# Head unit exhibits a graphics rendering frame rate (for HMI animations and Navigation maps) of min. 15 fps.&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
=== Audio_Codecs_Playback ===&lt;br /&gt;
# Head unit supports the following codecs:&lt;br /&gt;
## AAC LC&lt;br /&gt;
## MP3&lt;br /&gt;
## WMA&lt;br /&gt;
## WAV&lt;br /&gt;
## Ogg Vorbis&lt;br /&gt;
## FLAC&lt;br /&gt;
&lt;br /&gt;
=== Audio_Processing_And_Management ===&lt;br /&gt;
# Head unit supports up to 4 independent audio zones (sinks).  One zone if 5.1 channels (e.g. cabin speakers) and others are stereo.  (Each zone might require its own independent audio processing and audio codec instances.)&lt;br /&gt;
# Head unit allows the user to adjust at least audio treble and bass level.&lt;br /&gt;
# Head unit allows the user to adjust balance and fade level.&lt;br /&gt;
# Head unit is capable of playing back any of its sources to any of 4 audio zones including simultaneous playback to up to 4 audio zones.&lt;br /&gt;
# Head unit uses pre-defined fader ramps when switching the audio source for any particular audio zone.&lt;br /&gt;
# For each audio zone, the head unit keeps track of the most recently played audio source and restores it upon startup.  (For example, when the FM tuner was played to the cabin speakers and the head unit has been switched off, it would attempt tuning to the same FM station and putting it to the cabin speakers upon the next startup.)&lt;br /&gt;
# For each audio zone, all available audio sources are assigned a unique priority.  When an audio source is being played back and a higher priority source becomes available (e.g. the phone application attempts to play a ring tone), the latter overrides the former.&lt;br /&gt;
## As a configuration option, overriding can be done either by muting the first source and playing back the second source, or by lowering the volume of the first source and mixing it with the second source.&lt;br /&gt;
&lt;br /&gt;
=== Audio_Generation ===&lt;br /&gt;
# chimes and gongs&lt;br /&gt;
# calibration to interior&lt;br /&gt;
&lt;br /&gt;
=== Audio_Recording ===&lt;br /&gt;
# voice&lt;br /&gt;
# radio&lt;br /&gt;
# podcasts&lt;br /&gt;
&lt;br /&gt;
=== Audio_Volume_Control ===&lt;br /&gt;
# Volume level is adjustable by the user.&lt;br /&gt;
## Adjustments by the user are only accepted during actual audio playback.  (In other words, any volume changes e.g. during start up phase and before the audio output can be heard will be ignored.)&lt;br /&gt;
## The volume level selection by the user is maintained for each audio source / sink pair individually.&lt;br /&gt;
# Volume level is adjusted by the head unit accordingly to the current vehicle speed.&lt;br /&gt;
# Volume level set by the user is preserved through shutdown cycle.&lt;br /&gt;
## Upon start up, the previous volume level is only restored up to a defined 'start up maximum' (as contrasted to the 'absolute maximum' that can be set after the head unit is up and running in its normal mode).&lt;br /&gt;
# Under limit volume need to be set as some low level NOT minimum just to make sure that at leaset user can recognize low level volume even though user set the volume to minimum &amp;quot;basically mute&amp;quot; before the power cycle&lt;br /&gt;
# Upper limit volume need to be set as some high level NOT maximum just to make sure that user can not be annoyed due to the previous maximum volume setting.&lt;br /&gt;
# In Emergency Case, volume should not be adjusted by the user, volume need to be fit as some very loud level as much as no sound is masked with ambient noisy backgroud,&lt;br /&gt;
&lt;br /&gt;
=== Handfree Functionality ===&lt;br /&gt;
# Noise reduction &lt;br /&gt;
# Echo cancellation &lt;br /&gt;
# Residual echo cancellation &lt;br /&gt;
# Automatic gain control&lt;br /&gt;
# Programmable Equalization &lt;br /&gt;
# Performance Requirement &lt;br /&gt;
  - objective testing : VDA 1.6 &lt;br /&gt;
  - subjective testing : In-Vehicle live testing&lt;br /&gt;
&lt;br /&gt;
== Connectivity ==&lt;br /&gt;
=== Wireless_Interfaces ===&lt;br /&gt;
==== Wireless_Infrared_IRDA ====&lt;br /&gt;
==== Wireless_WiFi_Connection ====&lt;br /&gt;
# access point&lt;br /&gt;
# client&lt;br /&gt;
&lt;br /&gt;
==== Wireless_Bluetooth_Connection_and_Telephony ====&lt;br /&gt;
==== Wireless_Cellular_Mobile_Telephony ====&lt;br /&gt;
==== Wireless_BT_Hands-free_Telephony ====&lt;br /&gt;
# profiles&lt;br /&gt;
# Acoustic Echo Cancellation / Noise Reduction (AEC / NR)&lt;br /&gt;
# single and dual microphone&lt;br /&gt;
&lt;br /&gt;
=== Wired_Interfaces ===&lt;br /&gt;
==== USB_Connection_to_CE_Devices ====&lt;br /&gt;
==== Removable_SD_Card_Connections ====&lt;br /&gt;
&lt;br /&gt;
=== Internet_Access_and_Browser ===&lt;br /&gt;
# internet radio&lt;br /&gt;
# podcasts&lt;br /&gt;
# applications (e.g. google maps)&lt;br /&gt;
# social networks&lt;br /&gt;
&lt;br /&gt;
=== Phone_Functionality ===&lt;br /&gt;
# internal phone book&lt;br /&gt;
# VoIP&lt;br /&gt;
&lt;br /&gt;
=== Terminal_Mode_Functionality ===&lt;br /&gt;
=== Microsoft_Plays_From_Device ===&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Personalization ===&lt;br /&gt;
# user profiles&lt;br /&gt;
&lt;br /&gt;
== Driver_Assistance ==&lt;br /&gt;
# camera input processing&lt;br /&gt;
# electronic horizon&lt;br /&gt;
&lt;br /&gt;
== Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
== HMI ==&lt;br /&gt;
=== User_Inputs_Support ===&lt;br /&gt;
==== UI_Devices_Support ====&lt;br /&gt;
==== UI_Touch_Sreen_Hand_Writing_Detection ====&lt;br /&gt;
==== UI_Speech_Recognition_Function ====&lt;br /&gt;
1. Recognition Category&lt;br /&gt;
   1. discrete command - command, single digit ( e.g. &amp;quot;dial&amp;quot;,'1','2',..etc )&lt;br /&gt;
   2. continuous command - continuous digit ( e.g. &amp;quot;dial 555-1212&amp;quot;, &amp;quot; 555-1212&amp;quot; )&lt;br /&gt;
   3. natural language understaning - flexible recognition ( e.g. &amp;quot;I want to make a call to john&amp;quot;,&lt;br /&gt;
     &amp;quot;please route to the san franciso regency hyatt hotel&amp;quot;,..etc)&lt;br /&gt;
&lt;br /&gt;
2. Recognition Response time &lt;br /&gt;
   1. discrete command - 300ms &lt;br /&gt;
   2. continuous command - 1200ms &lt;br /&gt;
   3. natural language understanding - 1500ms&lt;br /&gt;
&lt;br /&gt;
3. Recognition performance measurement &lt;br /&gt;
   1. overall accuracy measurement&lt;br /&gt;
      Average Sentence Accuracy = (Total Number of Correct Sentences)/(Total Number of Sentence Attempted)&lt;br /&gt;
   2. individual accuracy measurement &lt;br /&gt;
      Average Word Accuracy = ((Total number of attempts) - (insertions) - (deletions) - (substitutions))/Total number of attempts&lt;br /&gt;
  &lt;br /&gt;
4. Regnition performance requirement &lt;br /&gt;
   1. discrete command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection ) &lt;br /&gt;
   2. continuous command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection )&lt;br /&gt;
&lt;br /&gt;
=== Multiple_HMI_Languages ===&lt;br /&gt;
=== Software_Support ===&lt;br /&gt;
=== Users_Manual_Integrated ===&lt;br /&gt;
=== Graphics_Functions ===&lt;br /&gt;
&lt;br /&gt;
== Media ==&lt;br /&gt;
=== Media_Player_and_Browser_Requirements ===&lt;br /&gt;
# number of player instances&lt;br /&gt;
# playlists&lt;br /&gt;
# ripping&lt;br /&gt;
&lt;br /&gt;
=== Storage_Media_Support ===&lt;br /&gt;
&lt;br /&gt;
== Navigation ==&lt;br /&gt;
=== Navigation_Engine ===&lt;br /&gt;
=== Map_Function ===&lt;br /&gt;
# database&lt;br /&gt;
# map source&lt;br /&gt;
# 2D/3D representation (pitch)&lt;br /&gt;
# zooming (IN / OUT / auto-zoom)&lt;br /&gt;
# panning (NORTH / SOUTH / EAST / WEST / and combination of these 4 eg. NORTH-WEST)&lt;br /&gt;
# orientation / northing (ON - map oriented north / OFF - map oriented in travelling direction)&lt;br /&gt;
# 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)&lt;br /&gt;
# set / clear destination&lt;br /&gt;
# center the map&lt;br /&gt;
# set/change map layout (day / night / detailed - POIs / plain simple)&lt;br /&gt;
# bookmarks (see also Destination_Import)&lt;br /&gt;
&lt;br /&gt;
=== Real_Time_Traffic_Information ===&lt;br /&gt;
=== Speech_Support_for_Navigation ===&lt;br /&gt;
=== Positioning_Capabilities ===&lt;br /&gt;
=== Points_of_Interestes_POIs ===&lt;br /&gt;
=== Destination_Import ===&lt;br /&gt;
# from file (eg. USB)&lt;br /&gt;
# from web server&lt;br /&gt;
# free input&lt;br /&gt;
&lt;br /&gt;
== Network ==&lt;br /&gt;
=== CAN_Network_Interface ===&lt;br /&gt;
=== MOST_Network_Interface ===&lt;br /&gt;
=== Ethernet_Network_Interface ===&lt;br /&gt;
# DLNA&lt;br /&gt;
# AVB&lt;br /&gt;
&lt;br /&gt;
=== Serial_Network_Interfaces ===&lt;br /&gt;
# UART&lt;br /&gt;
# LIN&lt;br /&gt;
&lt;br /&gt;
=== Gateway ===&lt;br /&gt;
&lt;br /&gt;
== Power ==&lt;br /&gt;
=== Power_Management_Master ===&lt;br /&gt;
=== Power_Modes ===&lt;br /&gt;
=== Wakeup_Conditions ===&lt;br /&gt;
=== Monitor_Voltage_Ranges ===&lt;br /&gt;
&lt;br /&gt;
== Telematics and Data Services ==&lt;br /&gt;
=== Emergency_and_Breakdown_Call ===&lt;br /&gt;
=== JAVA_Telematics_Client ===&lt;br /&gt;
=== Remote_Diagnostics ===&lt;br /&gt;
=== Vehicle_Tracking ===&lt;br /&gt;
&lt;br /&gt;
== Radio and Video Broadcast Tuner ==&lt;br /&gt;
=== Radio_Broadcast_Reception ===&lt;br /&gt;
==== Radio_AM_FM_Broadcast_Reception ====&lt;br /&gt;
==== Radio_SDARS_Broadcast_Reception ====&lt;br /&gt;
==== Radio_HD_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DAB_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DRM_Broadcast_Reception ====&lt;br /&gt;
==== Broadcast_Sources_Pause_Resume ====&lt;br /&gt;
# time shift&lt;br /&gt;
&lt;br /&gt;
==== Radio_Further_Traffic_and_Data_Services ====&lt;br /&gt;
=== Video_Broadcast_Reception ===&lt;br /&gt;
&lt;br /&gt;
== Video ==&lt;br /&gt;
=== Video_Playback_Formats_and_Codecs ===&lt;br /&gt;
# containers&lt;br /&gt;
# codecs&lt;br /&gt;
# resolutions&lt;br /&gt;
# frame rates&lt;br /&gt;
&lt;br /&gt;
=== Video_Decoding_Performance ===&lt;br /&gt;
&lt;br /&gt;
== Voice ==&lt;br /&gt;
=== Voice_Tag_Processing ===&lt;br /&gt;
=== Voice_Recognition_Capabilties ===&lt;br /&gt;
=== Voice_Output_Functionality ===&lt;br /&gt;
&lt;br /&gt;
== Software Services ==&lt;br /&gt;
=== Software_Architectural_Requirements ===&lt;br /&gt;
=== Software_Update ===&lt;br /&gt;
=== Office_Applications ===&lt;br /&gt;
=== Security_Features ===&lt;br /&gt;
# user privacy&lt;br /&gt;
# data storage security&lt;br /&gt;
# data access authorization&lt;br /&gt;
&lt;br /&gt;
=== Gaming_Features ===&lt;br /&gt;
# pre-installed&lt;br /&gt;
# nomadic device&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	<entry>
		<id>http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope</id>
		<title>In-vehicle/Roadmap/FeatureScope</title>
		<link rel="alternate" type="text/html" href="http://wiki.meego.com/In-vehicle/Roadmap/FeatureScope"/>
				<updated>2011-06-25T10:19:53Z</updated>
		
		<summary type="html">&lt;p&gt;Simonbolek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This topic provides an outline of requirements for a head unit.  The requirements are derived from a real life development project for in-vehicle infotainment platform.  ''This is still work in progress--the content will be added gradually.''&lt;br /&gt;
&lt;br /&gt;
Some of the requirements below will be fulfilled outside of the MeeGo IVI based software.  For example, the implementation of CAN network interface and early audio functions most probably falls into this category.  The decisions about implementation of specific requirements in MeeGo IVI software will be made assuming a specific [[In-vehicle/Roadmap/SystemArchitecture|system architecture]].&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Constraints ==&lt;br /&gt;
=== Performance ===&lt;br /&gt;
# After power-on, the head unit displays a static splash screen within 200 ms.&lt;br /&gt;
# After power-on, the head unit displays an animated splash screen (pre-defined, fixed) within 200 ms and at the frame rate above 4 fps.&lt;br /&gt;
# After power-on, the head unit is able to play early audio (e.g. chimes and gongs--minimal set, best suited type, simple) within max. 1 s.&lt;br /&gt;
# After power-on, the head unit plays FM radio, resuming the last station before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit plays compressed audio from a connected media device (e.g. MP3 from USB stick), resuming the last track played before shut-down, within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the rear view camera output within max. 2 s.&lt;br /&gt;
# After power-on, the head unit accepts first user input (e.g. HMI menu, screen, volume control) within max. 2 s.&lt;br /&gt;
# After power-on, the head unit displays the Navigation map and starts the route guidance, resuming the previous route, within max. 5 s.&lt;br /&gt;
# Head unit reacts to user input via HMI (touch screen events, button or switch presses) within max. 100 ms.  Head unit displays interim response (e.g. sand glass) for all requests that cannot be completed within this time&lt;br /&gt;
# Head unit performs voice recognition for a single word against G2P vocabulary within max. 200 ms measured from the end of utterance (silence detection) to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit performs hand writing recognition against Chinese standard 2000 character set within max. 200 ms measured from end of entry to recognition result available (e.g. HMI display update or resulting voice prompt output).&lt;br /&gt;
# Head unit exhibits the refresh rate of min 15 fps for the navigation map in any scaling.&lt;br /&gt;
# Head unit exhibits a graphics rendering frame rate (for HMI animations and Navigation maps) of min. 15 fps.&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
=== Audio_Codecs_Playback ===&lt;br /&gt;
# Head unit supports the following codecs:&lt;br /&gt;
## AAC LC&lt;br /&gt;
## MP3&lt;br /&gt;
## WMA&lt;br /&gt;
## WAV&lt;br /&gt;
## Ogg Vorbis&lt;br /&gt;
## FLAC&lt;br /&gt;
&lt;br /&gt;
=== Audio_Processing_And_Management ===&lt;br /&gt;
# Head unit supports up to 4 independent audio zones (sinks).  One zone if 5.1 channels (e.g. cabin speakers) and others are stereo.  (Each zone might require its own independent audio processing and audio codec instances.)&lt;br /&gt;
# Head unit allows the user to adjust at least audio treble and bass level.&lt;br /&gt;
# Head unit allows the user to adjust balance and fade level.&lt;br /&gt;
# Head unit is capable of playing back any of its sources to any of 4 audio zones including simultaneous playback to up to 4 audio zones.&lt;br /&gt;
# Head unit uses pre-defined fader ramps when switching the audio source for any particular audio zone.&lt;br /&gt;
# For each audio zone, the head unit keeps track of the most recently played audio source and restores it upon startup.  (For example, when the FM tuner was played to the cabin speakers and the head unit has been switched off, it would attempt tuning to the same FM station and putting it to the cabin speakers upon the next startup.)&lt;br /&gt;
# For each audio zone, all available audio sources are assigned a unique priority.  When an audio source is being played back and a higher priority source becomes available (e.g. the phone application attempts to play a ring tone), the latter overrides the former.&lt;br /&gt;
## As a configuration option, overriding can be done either by muting the first source and playing back the second source, or by lowering the volume of the first source and mixing it with the second source.&lt;br /&gt;
&lt;br /&gt;
=== Audio_Generation ===&lt;br /&gt;
# chimes and gongs&lt;br /&gt;
# calibration to interior&lt;br /&gt;
&lt;br /&gt;
=== Audio_Recording ===&lt;br /&gt;
# voice&lt;br /&gt;
# radio&lt;br /&gt;
# podcasts&lt;br /&gt;
&lt;br /&gt;
=== Audio_Volume_Control ===&lt;br /&gt;
# Volume level is adjustable by the user.&lt;br /&gt;
## Adjustments by the user are only accepted during actual audio playback.  (In other words, any volume changes e.g. during start up phase and before the audio output can be heard will be ignored.)&lt;br /&gt;
## The volume level selection by the user is maintained for each audio source / sink pair individually.&lt;br /&gt;
# Volume level is adjusted by the head unit accordingly to the current vehicle speed.&lt;br /&gt;
# Volume level set by the user is preserved through shutdown cycle.&lt;br /&gt;
## Upon start up, the previous volume level is only restored up to a defined 'start up maximum' (as contrasted to the 'absolute maximum' that can be set after the head unit is up and running in its normal mode).&lt;br /&gt;
# Under limit volume need to be set as some low level NOT minimum just to make sure that at leaset user can recognize low level volume even though user set the volume to minimum &amp;quot;basically mute&amp;quot; before the power cycle&lt;br /&gt;
# Upper limit volume need to be set as some high level NOT maximum just to make sure that user can not be annoyed due to the previous maximum volume setting.&lt;br /&gt;
# In Emergency Case, volume should not be adjusted by the user, volume need to be fit as some very loud level as much as no sound is masked with ambient noisy backgroud,&lt;br /&gt;
&lt;br /&gt;
=== Handfree Functionality ===&lt;br /&gt;
# Noise reduction &lt;br /&gt;
# Echo cancellation &lt;br /&gt;
# Residual echo cancellation &lt;br /&gt;
# Automatic gain control&lt;br /&gt;
# Programmable Equalization &lt;br /&gt;
# Performance Requirement &lt;br /&gt;
  - objective testing : VDA 1.6 &lt;br /&gt;
  - subjective testing : In-Vehicle live testing&lt;br /&gt;
&lt;br /&gt;
== Connectivity ==&lt;br /&gt;
=== Wireless_Interfaces ===&lt;br /&gt;
==== Wireless_Infrared_IRDA ====&lt;br /&gt;
==== Wireless_WiFi_Connection ====&lt;br /&gt;
# access point&lt;br /&gt;
# client&lt;br /&gt;
&lt;br /&gt;
==== Wireless_Bluetooth_Connection_and_Telephony ====&lt;br /&gt;
==== Wireless_Cellular_Mobile_Telephony ====&lt;br /&gt;
==== Wireless_BT_Hands-free_Telephony ====&lt;br /&gt;
# profiles&lt;br /&gt;
# Acoustic Echo Cancellation / Noise Reduction (AEC / NR)&lt;br /&gt;
# single and dual microphone&lt;br /&gt;
&lt;br /&gt;
=== Wired_Interfaces ===&lt;br /&gt;
==== USB_Connection_to_CE_Devices ====&lt;br /&gt;
==== Removable_SD_Card_Connections ====&lt;br /&gt;
&lt;br /&gt;
=== Internet_Access_and_Browser ===&lt;br /&gt;
# internet radio&lt;br /&gt;
# podcasts&lt;br /&gt;
# applications (e.g. google maps)&lt;br /&gt;
# social networks&lt;br /&gt;
&lt;br /&gt;
=== Phone_Functionality ===&lt;br /&gt;
# internal phone book&lt;br /&gt;
# VoIP&lt;br /&gt;
&lt;br /&gt;
=== Terminal_Mode_Functionality ===&lt;br /&gt;
=== Microsoft_Plays_From_Device ===&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Personalization ===&lt;br /&gt;
# user profiles&lt;br /&gt;
&lt;br /&gt;
== Driver_Assistance ==&lt;br /&gt;
# camera input processing&lt;br /&gt;
# electronic horizon&lt;br /&gt;
&lt;br /&gt;
== Diagnostics ==&lt;br /&gt;
&lt;br /&gt;
== HMI ==&lt;br /&gt;
=== User_Inputs_Support ===&lt;br /&gt;
==== UI_Devices_Support ====&lt;br /&gt;
==== UI_Touch_Sreen_Hand_Writing_Detection ====&lt;br /&gt;
==== UI_Speech_Recognition_Function ====&lt;br /&gt;
1. Recognition Category&lt;br /&gt;
   1. discrete command - command, single digit ( e.g. &amp;quot;dial&amp;quot;,'1','2',..etc )&lt;br /&gt;
   2. continuous command - continuous digit ( e.g. &amp;quot;dial 555-1212&amp;quot;, &amp;quot; 555-1212&amp;quot; )&lt;br /&gt;
   3. natural language understaning - flexible recognition ( e.g. &amp;quot;I want to make a call to john&amp;quot;,&lt;br /&gt;
     &amp;quot;please route to the san franciso regency hyatt hotel&amp;quot;,..etc)&lt;br /&gt;
&lt;br /&gt;
2. Recognition Response time &lt;br /&gt;
   1. discrete command - 300ms &lt;br /&gt;
   2. continuous command - 1200ms &lt;br /&gt;
   3. natural language understanding - 1500ms&lt;br /&gt;
&lt;br /&gt;
3. Recognition performance measurement &lt;br /&gt;
   1. overall accuracy measurement&lt;br /&gt;
      Average Sentence Accuracy = (Total Number of Correct Sentences)/(Total Number of Sentence Attempted)&lt;br /&gt;
   2. individual accuracy measurement &lt;br /&gt;
      Average Word Accuracy = ((Total number of attempts) - (insertions) - (deletions) - (substitutions))/Total number of attempts&lt;br /&gt;
  &lt;br /&gt;
4. Regnition performance requirement &lt;br /&gt;
   1. discrete command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection ) &lt;br /&gt;
   2. continuous command&lt;br /&gt;
      IDLE SNR&amp;gt;20dB (98%&amp;gt;) , Middle noisy SNR&amp;gt;10dB ( 95%&amp;gt; ), Too much noisy SNR&amp;gt; 6dB ( 92%) , SNR &amp;lt;6dB (rejection )&lt;br /&gt;
&lt;br /&gt;
=== Multiple_HMI_Languages ===&lt;br /&gt;
=== Software_Support ===&lt;br /&gt;
=== Users_Manual_Integrated ===&lt;br /&gt;
=== Graphics_Functions ===&lt;br /&gt;
&lt;br /&gt;
== Media ==&lt;br /&gt;
=== Media_Player_and_Browser_Requirements ===&lt;br /&gt;
# number of player instances&lt;br /&gt;
# playlists&lt;br /&gt;
# ripping&lt;br /&gt;
&lt;br /&gt;
=== Storage_Media_Support ===&lt;br /&gt;
&lt;br /&gt;
== Navigation ==&lt;br /&gt;
=== Navigation_Engine ===&lt;br /&gt;
=== Map_Function ===&lt;br /&gt;
# database&lt;br /&gt;
# 2D/3D representation (pitch)&lt;br /&gt;
# zooming (in / out / auto-zoom)&lt;br /&gt;
# orientation / northing (on - map oriented north / off - map oriented in travelling direction)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Real_Time_Traffic_Information ===&lt;br /&gt;
=== Speech_Support_for_Navigation ===&lt;br /&gt;
=== Positioning_Capabilities ===&lt;br /&gt;
=== Points_of_Interestes_POIs ===&lt;br /&gt;
=== Destination_Import ===&lt;br /&gt;
&lt;br /&gt;
== Network ==&lt;br /&gt;
=== CAN_Network_Interface ===&lt;br /&gt;
=== MOST_Network_Interface ===&lt;br /&gt;
=== Ethernet_Network_Interface ===&lt;br /&gt;
# DLNA&lt;br /&gt;
# AVB&lt;br /&gt;
&lt;br /&gt;
=== Serial_Network_Interfaces ===&lt;br /&gt;
# UART&lt;br /&gt;
# LIN&lt;br /&gt;
&lt;br /&gt;
=== Gateway ===&lt;br /&gt;
&lt;br /&gt;
== Power ==&lt;br /&gt;
=== Power_Management_Master ===&lt;br /&gt;
=== Power_Modes ===&lt;br /&gt;
=== Wakeup_Conditions ===&lt;br /&gt;
=== Monitor_Voltage_Ranges ===&lt;br /&gt;
&lt;br /&gt;
== Telematics and Data Services ==&lt;br /&gt;
=== Emergency_and_Breakdown_Call ===&lt;br /&gt;
=== JAVA_Telematics_Client ===&lt;br /&gt;
=== Remote_Diagnostics ===&lt;br /&gt;
=== Vehicle_Tracking ===&lt;br /&gt;
&lt;br /&gt;
== Radio and Video Broadcast Tuner ==&lt;br /&gt;
=== Radio_Broadcast_Reception ===&lt;br /&gt;
==== Radio_AM_FM_Broadcast_Reception ====&lt;br /&gt;
==== Radio_SDARS_Broadcast_Reception ====&lt;br /&gt;
==== Radio_HD_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DAB_Broadcast_Reception ====&lt;br /&gt;
==== Radio_DRM_Broadcast_Reception ====&lt;br /&gt;
==== Broadcast_Sources_Pause_Resume ====&lt;br /&gt;
# time shift&lt;br /&gt;
&lt;br /&gt;
==== Radio_Further_Traffic_and_Data_Services ====&lt;br /&gt;
=== Video_Broadcast_Reception ===&lt;br /&gt;
&lt;br /&gt;
== Video ==&lt;br /&gt;
=== Video_Playback_Formats_and_Codecs ===&lt;br /&gt;
# containers&lt;br /&gt;
# codecs&lt;br /&gt;
# resolutions&lt;br /&gt;
# frame rates&lt;br /&gt;
&lt;br /&gt;
=== Video_Decoding_Performance ===&lt;br /&gt;
&lt;br /&gt;
== Voice ==&lt;br /&gt;
=== Voice_Tag_Processing ===&lt;br /&gt;
=== Voice_Recognition_Capabilties ===&lt;br /&gt;
=== Voice_Output_Functionality ===&lt;br /&gt;
&lt;br /&gt;
== Software Services ==&lt;br /&gt;
=== Software_Architectural_Requirements ===&lt;br /&gt;
=== Software_Update ===&lt;br /&gt;
=== Office_Applications ===&lt;br /&gt;
=== Security_Features ===&lt;br /&gt;
# user privacy&lt;br /&gt;
# data storage security&lt;br /&gt;
# data access authorization&lt;br /&gt;
&lt;br /&gt;
=== Gaming_Features ===&lt;br /&gt;
# pre-installed&lt;br /&gt;
# nomadic device&lt;br /&gt;
&lt;br /&gt;
[[Category:IVI]]&lt;/div&gt;</summary>
		<author><name>Simonbolek</name></author>	</entry>

	</feed>