Archive for December 2009

RexPC: Running EEEbuntu on eeePc 701 as a Carputer in my WRX

My latest big project is installing my eeePC 701 into my Subaru WRX. This is going to be a long project with several stages, and I’ll talk more later on the actual requirements. For now I first want to see if the eeePC 701 is actually powerful enough to make it worth installing into my car. Its low power requirements (22 watts) and tiny size makes it such a perfect fit that i want to make it work.

The eeePc I am planning to build into my wrx

The eeePc I am planning to build into my wrx

The Xandros packaged with the 701 was more of a joke than anything else. Fantastic for the very inexperienced user who will only ever use skype, pidgin and firefox. I need something more powerful and less buggy, so I’m going with EEEbuntu 3.0 base, since this is the most stripped down “full-featured” ready-to-go OS for the 701 I could find.

After downloading, burning and installing (luckily I have an external CDROM) I went through the following steps:

  1. Run Update Manager and install all the updates (it’s based on Ubuntu 9.04)
  2. Install GPSD, gpsdrive, tangogps, python-gps though synaptic
  3. Plug in GPS (gpsd launches automatically), and go for a test drive

I drove around the neighborhood with the GPS pushed into my sunroof (smart huh?) and the eeepc on the passanger seat. I was very impressed with tangogps and logged my trip around campus with it. At first glance everything worked seamlessly with no configuration needed!

A quick test trip logged using tangogps

A quick test trip logged using tangogps

I’ll be looking into touchscreens to install in place of the regular cd/radio/tape head that is currently in there, and keep writing about my progress.

RexPC: Planning my WRX’s built-in computer

What if... WRX + eeePC

What if... WRX + eeePC

I’m planning to build a computer into my 2004 Subaru Impreza WRX. And not just any computer, but hopefully my small eeePC 701 – the original netbook that started the revolution.

So, as with any big project, this one starts with a list of dreams I wish I had, and some research online into what other people are doing. Actually, any big project starts with a glass of Zinfandel (check) and brainstorming for a name. In this case, it was easy. My WRX is called Rex. And it’s getting a computer. So, RexPC. Onwards, then!

I should quickly address those of you thinking “Why is this guy not upgrading his exhaust to a full catback, or getting new rims and high performance tires, or upgrading his intercooler and air intake, or rechipping the engine ECU, or, or, or… why is he installing a *computer*??” (TJ I know what’s going through your mind). Simple, really, the computer is the cheapest mod I can do at this point, since the eeepc is just collecting dust on my shelf at the moment, and it’ll be awesome once it’s in the car.

My list of requirements. The design process (courtesy of CS147 with Scott Klemmer), once a certain type of user has been identified, kicks off with a need-finding phase to explore possible problems to address in your product. Since I’m the user, this should be easy. Here’s the list of things I want Rex to be able to do

RexPC User Requirements (aka Dreams)

Media

  • Play my complete (160gb) music library. And stay sync’d with my desktop.
  • Play other people’s plugged-in iPods
  • Play AM/FM Radio
  • Record video with backup and front camera (obviously, tagged with audio and location)
  • Show backup camera when in reverse

Location

  • Map my trips in detail
  • Provide navigation when I get lost
  • Provide weather and road condition information (incl. current temperature, etc)

Vehicle

  • Provide Engine Diagnostics (OBDII readout)
  • Provide extra gauges (for example, oil temperature and pressure)
  • Provide chassis orientation information (angles, direction)
  • Provide performance information (acceleration, cornering, wheel slip, lap timing, bodyroll, etc.)
  • Control interior and exterior lighting, and windows.

Communication and Countersurveillance

  • HAM Radio abilities including APRS
  • Family Talk radio
  • Police Scanner
  • Show traffic cameras
  • Radar/Laser detector alert logging and tagging with location
  • Bluetooth phone integration

Infrastructure

  • Work seamlessly with the car’s ignition system to provide startup and shutdown of electronic components with the rest of the car.

Now I have this initial list of things I want my car to do (some of them probably beyond the scope of this project since it will demand always-on interwebs, and I don’t know if I’m ready to shell out for a monthly 3g contract). So what do we need to do this?

Hardware Requirements

  • eeepc running custom linux
  • external usb-powered harddrive (250gb or more)
  • microphone
  • audio-out to current speaker system
  • GPS
  • accelerometer
  • compass
  • network connectivity (wifi definitely, possible 3G for always-on)
  • OBD II interface to car diagnostics
  • outside temperature sensor
  • ham radio, computer-controlled
  • police scanner (hopefully part of ham radio)
  • integration into current radar detector (I’m not building one of these things…)
  • touchscreen built into car

Current Carputers out in the wild

I’m obviously not the first to want to attempt this project. Several awesome people who are inspiring me to do this is the work. Avatar-X built a dell laptop into his Subaru Legacy that does most of these things and more! His process is nice to read (although not very well documented in terms of replication) and inspired me to look into this. Redian has a much more detailed post on installing a real motherboard into his wrx wagon which is also very informative. mp3car.com has, in general, been a good source of inspiration, information and encouragement, so check them out.

Next up, testing the eeepc’s abilities to handle this kind of workload, and looking at bashing out the list of dreams into a more concrete set of features interacting with each other.