Wednesday, March 30, 2005

The carputer: I'm not that far ahead

I tell people I'm building a "carputer" and most give me a strange, puzzled look. I'm not the first to do something like this (Google currently shows >66,000 hits), but among people I know, I seem to be the odd one out.

What is a carputer?
For me, it's a PC in the trunk that will provide some interesting features. For others, it's an extension of an in-car entertainment system. In the future, there are many more possibilities.

Why?
It's a fun project and I'm learning a lot while working on it. Not to mention all the usefull features I'll get out of it. For example, here's some of the things that I envision doing. For the most part the hardware is trivial commodity hardware. The innovative part is putting it together in a new way and finding (or writing) software that can make useful features out of the existing hardware.

The hardware
I'm not using anything overly fancy. So far, my hardware consists of:
  • An old, small form factor (SFF) PC. It's a PII @233MHz with 64M RAM
  • A small GPS antenna
  • A WiFi card (occupying the only PCI slot in the PC)

The Software

After much searching, I decided on ArchLinux. It offers a full desktop GUI, and even though I don't need that, it's very easy to trim it down to the bare essentials. Sure, there's plentry of ultra-small distros, but that's not necessary (I've got a 20G disk)... I was looking for something that has many packages available and can easily have it boot time trimmed down.

Desired Feature List

Some of these are easy to do and others are difficult (some may not even be possible). All the hardware is present, it's just a matter of finding/writing the software to make these things happen.
  • Use the GPS to log my driving
  • Log where open wireless networks are so I can later ask where the nearest internet access is
  • Offload pix from my digital camera while traveling (plug a USB cable that's run from the trunk to the center console)
  • Upon finding an open WiFi connection, upload small data to my server at home (e.g. GPS logs).
  • When my home WiFi access point is visible in-range, upload large datafiles (e.g. pictures) to my server at home.
  • If my car gets stolen, I can call the police and tell them exactly where my car is.

When you also factor in that I already have an empeg as my sound system, the possibilities are further expanded.
  • Wired ethernet from the empeg to the carputer to allow my home PC to talk to the empeg while in the garage. This will allow uploading of new music without bringing the empeg into the house.
  • Audio announcements for things like:
  • pictures copied from digicam, safe to unplug.
  • open wifi is detected.
  • read GPS stats (I've already ported Flite to the empeg) for coords, altitude, velocity, etc)
  • read my email to me on my commute

Adding some other small pieces of hardware (webcam, OBDII interface, Palm), many more new possibilities arise:
  • Mount USB webcam inside front grill so I can take pictures of vanity plates. It would be nice if I didn't have to fumble around while driving to get my camera out, aim, focus (not on the windshield) and take pix.
  • Use of a Palm as a remote control... with so many features and a headless computer in the trunk, how else could I control it all. Oh, the IrDA port on the Palm is line of sight? No problem, I'll have it talk to the IrDA port on the empeg. Someone else already wrote a daemon for the empeg that will receive IR data and pass it on to various apps based on data type. e.g. beam a memo from a Palm (or my Accompli 009) to the empeg and it passes it to the TTS software which fades down the music, reads the message and fades the music back up.
  • Use OBDII<->Serial adapter so the empeg can monitor my car. From what I understand, development on OBDII software for Linux is still in its infancy, but I'm interested in learning.
  • If my car gets stolen, I can put a (digitally signed) file on my server at home and when the car checks in, that will be instructed it to use the OBDII interface to disable the ECU... now I can tell the police where my car is and that it's not moving. Perhaps even use the empeg to play a quote from HAL "I'm sorry Dave, I'm afraid I can't do that." :)
  • I'm installing a 5 port 10/100 switch behind the head unit so I can have a couple RJ45 jacks in the car.
  • Eventually, setup a laptop with mapping software that will get my location from the carputer and possibly even give me directions.
Look back at my hardware list... it's nothing new, fancy or expensive. It's actually all pretty cheap now. If you learned nothing else from MacGyver, you should at least know that most hardware can be put to many more uses than it was originally intended!

I'm sure there's other things that people can thing of that I've missed... I'm open to suggestions for other features :)

3 Comments:

Anonymous Anonymous said...

This comment has been removed by a blog administrator.

10/11/2005 4:04 AM  
Anonymous Anonymous said...

This comment has been removed by a blog administrator.

10/11/2005 10:17 PM  
Anonymous Anonymous said...

This comment has been removed by a blog administrator.

10/12/2005 12:35 PM  

Post a Comment

<< Home