Dave is Pimping his Ride

I’m pretty excited to read about my friend David White building his own in-car navigation and entertainment system. He took a look at available systems and came away with the following opinions:

The problem with all these [existing systems] is three fold as far as I am concerned: 1) they are way too expensive, 2) they are not extendable (meaning I can’t program on them), and 3) they are not connected to the car. Imagine the last two put together!


So what exactly is my thought? I mean there are people shoving Mac Minis and mini-ITX form factors in cars now right? Yes they are, but to me it is wrong tool for the job and just not that interesting (I would love to hear if you think I am wrong). I think there are problems with power consumption and conversion, instant on and off scenarios, dash placement, etc. So I thought to go out and build my own system. I mean build my own system -from the ground up board and all. Add a flip out screen with a wiring harness into the car bus network and away I go. I plan on using Windows mobile 5.0 and the .Net Compact Framework for the UI of applications and part way down the stack until the real time requirements outstrip what a garbage collected environment can do.

I’ve always had a hankering for learning embedded development, so I’ll be following David’s blog with great interest. I also love the title of his blog – Architect Must Implement.


I think the problem is beyond the obvious disconnect between software and hardware. We first have to get to the notion of a 'fly by wire' automobile paradigm. I have been looking at the options for a fully digital car, and the issue is 'standardization' of interface. By that I mean that I should be able to bring my dashboard to any car, and plug in my smart card and it will light up as if I was in my own car. Gas right where I like it with warnings at 2.3L to reserve etc. But to accomplish that, we need to start making cars truly modular. Some of the 'skate board' prototypes for fuel cell cars are in that mode. A set of chassis with all the mechanics inside, looking very much like a skateboard. A shell with passenger compartment is dropped on top, and that is where all the customization takes place. Once the car is 'by wire' then our OOP model starts to work. Until then, we are still in the custom tool shop mode. Tom
I agree but the problem is an old one. The automakers only want standardization in the components they buy but not their products. There are some emerging standards used in the intercommunication of components called CAN-BUS. This will atleast simplify the communications some but the industry has seen that before in J1930 where different automakers made thier own implementation of it. Starts to sound familiar doesn't it. In fact since I deal with the automotive industry from a software level, my favorite conversation about standards, portability, and cross platform discussions start with a simple statement. So those tires on those car thingies, they are all the same right so I can take the wheels off my GM and put it on my Ford? The simple fact is every single one of them have slightly different bolt patterns. Go figure :-)