Proposed open-source project - comments please :-)
Newbie to these forums here: Just thought I'd voice an idea myself and a couple of friends came up with to see what you think...
Having read through the software listings in this forum and spent a good few hours Googling, it would appear that the majority of the software available for car PCs is windows based and tends to be a single application that attempts to cover all bases.
While these apps are indeed very good at what they do, they leave no scope to be extended to other aspects of the vehicle or, indeed, for any uses past music, GPS and DVD/video viewing. If you want to do this, you need a full arsenal of little apps and utilities that make using them on the move incredibly dangerous!
I have so far written chunks of software that one way or another ended up being used in, on or around cars such as an ALDL reader (engine diagnostics for GM vehicles), position logging, mobile phone control for GPRS / GSM internet access and so on.
It occurs to me that all of these systems could be quite easily hooked together to provide a coherent, multi-faceted, extensible car-puter that could cover as many bases as the user wanted to impliment.
Take my Nissan Patrol for example. Currently, I listen to music and broadcast radio, make phone calls, use amateur radio, undertake wireless networking surveys (legitimately, I hasten to add!), and use GPS to find my next job.
I'm getting progressively more annoyed by having a standard head-unit for music and broadcast radio; a hands-free car kit with fiddly, almost incomprehensible buttons; a plethora of things to twiddle on my amateur radio rig; a laptop that's bungie-strapped to the centre console with a thumping great lump of coax hanging out the side that makes its way to the 2.4GHz antenna on the roof AND a StreetPilot III GPS unit pirched on the top of the dash.
Being a Linux networking person by trade and having colleagues who work with open-source OSs on a daily basis, we figure that most (if not all) of the above can be replaced with a single machine without having to use propriatory software: Hands up any of you who can truthfully say they've bought a copy of XP specifically for their car installation? :D
In good old UNIX tradition, we propose to approach the problem by creating multiple chunks of software that does one part of the whole job, but does that part exceedingly well.
Each system within the car (be it GPS, music, network monitoring, amateur radio etc) would be given its own daemon to look after that particular task. GPS and the network discovery is already covered:: GPSd and Kismet-server both trundle along in the background, giving information to whatever client requests it.
Likewise, you could have a music daemon responsible for playing MP3s. Ask it "show me a list of music in this directory" and it would. "Play this file" and it would, the interface having only to pass the most rudimentary of commands to it in order for a relatively complex task to be undertaken.
By decoupling the front- and back-ends of the complete system, you are not tied to having a front end where you really like the interface but the organisation of the songs sucks, or a chunk of navigation software that's great, except it doesn't support your GPS. If you don't like a component, you can change it without having to get rid of the bits you like.
If this is implimented as we invisage with standard network sockets providing client <-> daemon communication, there's nothing to say you can't have the user interface running on a totally different machine to the servers! Anyone can then write either interfaces or daemons while making use of all of the others that are already present and working.
Again in the Linux spirit of things, anything we produce along this line would be released under the GPL and hence would be freely available for general use and modification. Also, any of the protocols we invent would be fully documented to encourage the development of plugins and different UIs etc...
Presently navigation is mobile-Linux's achilees heel, however I'm currently working on that (having borrowed the nav CD from a friend's Audi - the data format is actually well documented if you know where to look!) and so there should be a GPL'd route-planning package available in a reasonable time frame.
As I say, all still vapourware at the moment but it IS going to happen as I'm gonna loose my rag with this car full of toys I have at present!
Comments, criticisms, feature suggestions, "wouldn't it be nice if..." and "someone's already done this, mate" type messages welcomed :)