Home arrow Smartphone Development arrow Page 4 - Introducing MeeGo IVI: Ignition Switch

The Path Ahead - Smartphone Development

MeeGo isn't just for netbooks and smartphones. The In-Vehicle Infotainment (IVI) branch might someday power the computer system on your automobile.

  1. Introducing MeeGo IVI: Ignition Switch
  2. The MeeGo IVI Architecture
  3. Getting Started with MeeGo IVI
  4. The Path Ahead
By: Nathan Willis
Rating: starstarstarstarstar / 1
June 17, 2011

print this article



MeeGo IVI is still in its infancy, but that means now is the perfect time to get involved.  As it stands, carmakers that include a IVI system generally do so only in their higher end models; until now, they had to roll their own solutions.  If you want to get more involved, you can join the MeeGo IVI mailing list and discussion forum [9].  Also, visit MP3Car.com [4], the largest DIY site for car computer enthusiasts.  A MeeGo IVI section exists on the MP3Car discussion boards, and many of the developers who have spent the past few years adapting open source code for their DIY systems are starting to explore porting their code to MeeGo's IVI UX. 

Because the MeeGo project is tasked with delivering the platform and an example user interface (meaning individual carmakers will almost certainly add their own custom designs to the products they deploy), this community work is likely to be the best showcase for open source IVI.  Considering the average product cycle, it will certainly beat carmakers' custom builds to the market.  Finally, follow the progress of the roadmap by watching the IVI feature request trackers in Bugzilla [10].

See the box titled “The Roadmap” for more on the MeeGo IVI work in progress.  Apart from official SDK components like an IVI target and QEMU runtime image, the next major milestones in the project will be the 1.2 release and the San Francisco MeeGo Conference in May of 2011.  The past few months have seen a growing list of carmakers and tier-one automotive suppliers come on board, so the months ahead are guaranteed to be a wild ride.

IVI To-do

on the list of changes for IVI are new components, such as the speech recognition and speech synthesis, acoustic echo cancellation, noise suppression for hands-free phone usage, and integration with new types of hardware, such as back-up cameras and door sensors.  IVI systems also must contend with extremely fast boot requirements and initializing devices within milliseconds of ignition, not to mention rapid shut-down sequences – and the “loaf of bread” scenario.  Suppose you start your car in the grocery store parking lot, then remember that you forgot to grab a loaf of bread, so you shut down the car and go back inside.  The computer has to boot up and begin initializing with the ignition switch and then start the shutdown cycle when you change your mind.  But, you can't simply speed up boot time by pushing more system maintenance to the shutdown cycle: Getting the bread takes less than a minute, at which point the computer must be fully shut down and ready to boot again, or else the system is in an undefined state.

Additionally, vehicle manufacturers are interested in using MeeGo IVI to support vehicle telematics, which means an entire layer of engine sensors and instruments will need a new set of APIs, plus logging, diagnostic, and emergency assistance applications.

Adding still more complexity to the design is the fact that vehicle makers already use industry-specific communications buses to relay this sort of information and to connect rear-seat entertainment unites to driver head units and media storage.  Several such buses are currently in deployment, like FlexRay, Media Oriented Systems Transport (MOST), and Controller Area Network (CAN) – and with few exceptions, the standards involved are not open or royalty-free.  Fortunately, the industry partners participating in the MeeGo IVI project can exert some friendly pressure on the standard owners, most of whom simply aren't familiar with the open source way of working – but the challenge of coding and testing the new components, remains.

The Roadmap

As daunting as the IVI challenge might seem, the developers are making progress.  The IVI Working Group is tasked with interfacing with the carmakers, automotive suppliers, industry groups, and the open source developer community.  One of the goals is to organize the list of requirements into a prioritized, manageable roadmap.  The Working Group operates in the open on the IVI mailing list, even posting its meeting minutes publicly on the project wiki, so application developers can easily follow the plan.

So far, the roadmap includes seven items for near-term focus: automotive networking (such as the vehicle buses discussed above), audio management (including multi-zone), device connectivity (phones and portable MP3 players), navigation, adding support for ARM processors, design work on the “example” IVI UX, and a demonstration implementation of an “app store” style user application installer.

Exactly how much of this work will make it into the next release of MeeGo remains unknown; version 1.2 is scheduled for a late April release.  Fortunately, more developers are joining in the effort.  Automotive product developers Pelagicore and GENIVI have both announced their involvement with the project. 

Pelagicore has already started contributing to Qt for IVI, an extension to the Qt application framework.  Currently, the project adds Terminal Mode to support to MeeGo, which links the automotive head unit (video screen, audio layer, and input devices) to a tethered device such as a Bluetooth phone, with VNC or other remote desktop protocol.  The user can then access the phone's address book, the mapping system, or other apps through the car's front end, presumably reducing any driver distraction that would arise from fumbling for the phone.

This functionality is split into two parts: libqterminalmode provides the remote connection functionality, while qterminalmodeclient provides the forward-facing interface.  Additional APIs that are under development but not yet released in Qt For IVI include integrating radio tuners and video cameras.  Both of these features are hardware supported in upstream Qt but are so far not supported in MeeGo itself.

The other major to-do item for MeeGo IVI is building up a development kit.  At the MeeGo conference, project manager Joel Clark solicited feedback from application developers for an IVI-specific software development kit (SDK); at the moment, the project recommends that independent IVI developers get started with the existing MeeGo SDK – the same core APIs are available on all UXs, and you can add additional components like Qt For IVI to test systems manually.

Although an SDK should be possible by the 1.2 release, the picture is a bit murkier on the hardware development kit front.  The ISO releases work on common Atom-based netbooks, but getting independent developers working on actual in-vehicle systems will require expanding the supported hardware considerably.  Most do-it-yourself car computer enthusiasts run mini-IT systems, often with cheaper, non-Atom CPUs and onboard graphics, and for now all MeeGo builds require support for the SSE3 instruction set and Intel graphics chips.

Because AMD recently joined the MeeGo project, wider CPU and GPU support is on the way.  Another possibility is the ARM architecture; the IVI Working Group is looking into development kits based on BeagleBoard or PandaBoard single-board computes running on Texas Instruments OMAP processors.


[1] MeeGo homepage: http://www.meego.com

[2] MeeGo core architecture documentation: http://www.meego.com/developers/meego-architecture

[3] MeeGo compliance program: http://wiki.meego.com/Quality/Compliance

[4] See MP3Car.com for the most active DIY car-computing forum

[5] SDK: http://wiki.meego.com/SDK

[6] SDK Host OS Support page: http://wiki.meego.com/SDK/Docs/1.1/MeeGo_1.1_SDK_Host_OS_Support

[7] MeeGo API: http://apidocs.meego.com/1.1/core/html/index.html

[8] MeeGo Platform API: http://apidocs.meego.com/1.1/platform/html/index.html

[9] Mailing list: http://lists.meego.com/listinfo/meego-ivi and discussion forum: http://forum.meego.com/forumdisplay.php?f=9

[10] Bugzilla: bugs.meego.com





>>> More Smartphone Development Articles          >>> More By Nathan Willis

blog comments powered by Disqus
escort Bursa Bursa escort Antalya eskort


- Is Facebook Working on a Branded Smartphone?
- Apple iOS 6 Packed With Features
- Finally, Ubuntu OS for Smartphones?
- App Developers Offer Thoughts on Windows Pho...
- App Promo Survey Displays Developer Struggles
- Apptopia Market Helps Developers Recoup Inve...
- Is Fragmentation a Plus for App Developers?
- Juniper Networks: Android App Malware Increa...
- Developer's Losing Interest in Android?
- Android Developers Pushed Towards Google Wal...
- Google Increases Android App Size Limit
- ATandT To Charge App Developers, Android Lac...
- Android Slipping in App War versus Apple
- Apple and Google Battle to Clean Up App Mark...
- iOS Development: Hello World! in Xcode Part 2

Developer Shed Affiliates


Dev Shed Tutorial Topics: