November 15, 2003

Computing on the Move

I've struggled for a long time to get external audio playing in my car. To make a long story short, I finally found an auxiliary input adapter for the head unit of my car stereo, and then I followed that up by sticking a whole computer in the trunk of my car for music. More details are in the extended entry link, and pictures are here.

In my old Corolla I had a tape adapter, but then my tape deck stopped working with it, so I had to resort to an FM transmitter. I kept with the transmitter when I started driving my Civic, because it didn't have a tape deck. FM transmitters don't produce the best audio, and you often have to switch frequencies, depending on nearby radio stations. That's too much of a hassle when driving. I found a pretty decent transmitter at Hobbytron that I wired into my car for a while, so I could reasonably listen to my Nomad while driving. It worked pretty well, except that the frequency it transmitted on varied with temperature. Enough so that in the morning I had to tune 0.2 MHz down, and it would gradually rise back as it got warmer. That was annoying enough that I didn't bother to pull out my Nomad most of the time, unless it was an extended trip.

Parker was looking for a way to get audio into the head unit of his new car, which also didn't have a tape deck. He found an auxiliary adapter which was custom made to fit the proprietary connection in his car. Since he found one for his, I went looking for one from my Civic, and finally found one. I had searched really hard before I bought the Hobbytron FM transmitter, but I couldn't find anything. I thing I have decent googling skills, but I just didn't know what people called the thing I was looking for. P.I.E. makes a HON-AUX auxiliary input converter which fits right into the back of most Honda head units that can control a CD changer. I found an entry in a blog which had some details on installing the adapter. I read the page and tried to do the installation the next day, and ended up scratching my dash a little, because I forgot to loosen some bolts. In the end I was basically able to pull off a panel and stick my hand all the way to the back of the stereo and plug the adapter in. I also had to remember to attach a grounding wire between the converter and the frame of the car. I plugged my Nomad in and got CD-quality sound and access to all my music. It was quite a moment.

But that wasn't enough for me... Sunny, Jackson , Yono, and I had aspirations to build a car mp3 player during the summer of 1999, way before portables and in dash players were prevalent at all. In a two week span we managed to get a decently working system going, although we had some problems with our LCD. That computer ended up residing under my dorm room bed, and then got split up and travelled with my along with all my other leftover computer parts. Since I still had all these leftover computer parts hanging around, I figured I'd make an attempt to throw them all together and get a computer going in my trunk to play songs.

As for software, I'm running Windows XP on the computer and using the joystick for control. I trimmed as much off as windows as I could in terms of services and programs running. I found a program called Joystick 2 Mouse 3 which can translate joystick button presses into keyboard and mouse actions. Then I setup bunch of keyboard shortcuts for all the functions that I need, like starting a playlist, skipping a track, jumping to winamp, or shutting down. To add a little more flavor I made a VBScript to start and stop the Windows Narrator. The Narrator can read the lines of an Windows Explorer window, and you can play and enqueue specific songs and albums that way. Normally the computer takes under a minute to boot. Sometimes I hibernate the computer instead of shutting it down or just turning off the computer, because it goes down and comes back much faster. The hibernation is pretty neat, because the computer comes back in the exact same state it was when you turned it off, even if it was in the middle of playing a song.

In terms of hardware, I originally planned to try to place it under the driver's or passenger's seat, but then there's fan noise from the computer and inverter, and it's likely to get kicked by someone sitting in the back seat. Plus the whole package has to be really small. So instead I decided to stick the computer and inverter in the trunk. I bought lighter jack extension cable, with a switch that the inverter plugged into. Somehow I felt better about having a 12 V DC cable running through my car in comparison to a 120 V AC cable. The computer plugged into the inverter in the trunk. The audio out from the computer, the lighter jack extension, and the USB extension cable snaked through the gap of my fold down seat, under the floor mats, and then up to the front car. I also rigged a CAT 5 cable to carry the signal for power and HD activity LEDs to the front of the car, along with a soft power switch. I punched some holes in a little removable panel in my dash for easy access to the power switch and the LEDs. I used a bunch of audio cables and splitters, so that I could also separately plug in my Nomad. I had to add a Ground Loop Isolator (GLI), since the ground voltage on the computer seems to be a little off from the ground voltage of the head unit. The GLI is just a 1-to-1 transformer that passes AC signal, but not DC voltage differences. I also picked up a good amount of alternator whine until I put the GLI in. I think it introduced a little hissing, so I'm going to see if I can ground everything better and go without it. The joystick is an old MS Sidewinder Freestyle Pro that I bought a few years ago. I labeled the joystick with some of the important functions.

It took a decent amount of effort to get the whole system working smoothly. At one point I didn't want to bring the computer back up to my apartment, since I basically wired it to the console, so I brought a monitor and keyboard down to debug. To fix that problem, I cut the CAT 5 cable, crimped on some RJ-45 jacks and got a coupler. One of the harder parts was working out a reliable, not-bloated, software system. At first I was using Windows 98, which probably botted a little faster (but not much faster). I run WinXP on all my other computer, and I had no shortage of old RAM, so I decided to go with WinXP. I had a couple of times where cables became disconnected, and I spent 30 minutes chasing a down a solution to a simple problem.

Some ideas for improving on the system:

  • An LCD - maybe when I get a few hundred extra dollars to spend. I only spent about $60 dollars on the computer project outside the HON-AUX adapter, which I would have bought for my Nomad anyway.
  • Wireless ethernet - Then I could remote desktop to my car from my apartment! It'd let me easily manage what was going on the computer and update my mp3s without having to pull the computer out of the car.
  • UPS - This would make the WiFi more viable, so I wouldn't have to leave my keys sitting my car while I worked on the computer in my apartment. Also it would making not shutting down less of a concern.

Here's a rough list of everything that went into the project:

  • ECS P5SSme Motherboard, AMD K6-3+ 450 MHz processor, 192 MB RAM
  • 12 GB Quantum Bigfoot HD, courtesy of Dan, courtesy of Akash
  • 400W Coleman AC-DC inverter
  • MS Sidewinder Freestyle Pro controller
  • PIE HON-AUX adapter
  • Ground Loop Isolator
  • USB, Lighter jack extension cables
  • A bunch of audio splittters/extensions
  • CAT 5 for LEDs and a switch
  • Three days of fun work

Overall, I'm pretty happy with the system now. I can turn on my car, and within a minute be listening to most of my music at the press of a button. On top of that it's easy to control, in terms of skipping tracks. I still have my Nomad and the regular in-dash CD player if I want to listen to a song that's not on the hard drive. Andrew said the joystick gives the passenger a pretty neat feel, since there's actually something for the passenger to do. Leave any comments, ideas, or questions you have below.

Posted by ramk at November 15, 2003 09:18 PM
Comments

Neato.

I really like that little LED/Switch panel. Looks less ghetto :p

Posted by: Dan at November 16, 2003 04:31 PM

just wanted to say (before anyone else) that I'm working on the 'neato' thing. Maybe I should switch to 'grouse' or 'rad'..?

Posted by: Dan at November 16, 2003 04:33 PM

I have tried getting an AMD k6-3 to work with that mobo, but when I try to boot off anything, the system hangs. Any ideas?

Posted by: Aaron at January 30, 2006 05:54 PM
Post a comment













Save this info?