Alison Chaiken
The days when automotive software hacking meant trying to get MP3 music to play on a car's audio system are long behind us. The real-time fuel efficiency display of the Prius ably illustrates the driver empowerment that improved information can bring. Tata Motors, which owns Land Rover and Jaguar, has developed lane-departure warning systems that it is planning to deploy. BMW and Tesla already upgrade system firmware when cars are taken into the shop. DARPA Grand Challenge contenders from Stanford and CMU illustrate the potential for self-driving vehicles. Geely and Hawtai in China are already shipping cars running Moblin, a GNU/Linux variant based on Gnome and X11. The GENIVI Alliance, which has been formed in order to promulgate Linux-based automotive software standards, has well over 100 members, including familiar names like Delphi, ARM, Intel, Renault, Alpine, Mitsubishi, Samsung and Canonical. Along with new opportunities, there are new dangers in the auto software space. Do we *want* mechanics to be able to install new firmware in our cars? Can SELinux and iptables, or maybe Android's token-based sandboxing system, address the new security problems? How will we architect "multiseat" installations so that misbehaving applications don't overwhelm critical functions, or perhaps just distract the driver? Many questions remain unanswered, such as what kind of input devices drivers need (touchscreen, voice recognition, video-captured gestures, joysticks, other?) and which information should be presented when to which passengers. Safety aside, avoidance of motion sickness will bring a whole new dimension to Linux user interface design. But what about 2012? The unfortunately named "in-vehicle infotainment" (IVI) space is growing fast, so the field presents opportunities for job-seekers as well as hardware hackers. I'll demonstrate how hobbyists of limited means can display real-time fuel efficiency data in their own cars using open-source software running Linux on readily available hardware.