How an MP3 Playing Computer became the TAN (Truck Area Network)

The idea: Because I used to travel back and forth between Austin and Dallas, Texas every weekend, I got tired of spending close to four hours trying to find a decent radio station. So I figured, why not build a small computer in a suitcase that I could load up with my favorite tunes? I did a little research and found mp3car.com, and the mp3car webring which really gave me some ideas.

I had recently gotten an earthmate GPS for my palm pilot, and with an additional purchase, I got a cable to connect it to a pc. Since I was new to Dallas, a GPS was a must-have. One nice thing about the software for the earthmate was that it had voice navigation (turn by turn) and voice recognition, or so they claimed.

I also found a voice control plug-in for winamp (VoodooVoice, I think it was.) So I figured no screen or visual output would be required.

What I first envisioned was a briefcase / suitcase with a p2-450 and a 20 GB hard drive, an audio card, and the GPS connected to the serial port.

I cobbled together the motherboard, power supply, hard drive (20 GB notebook model- thanks Martin!), 128mb ram, and the GPS. With a cdrom stuck with it to load up the software, I was ready to put the thing together. I got a neat little adapter for the notebook hard drive to convert it to 40 pin IDE from Altex, along with two removable hard drive bays. I figured I'd just pull the hard drive, pop it into the same kind of bay on my desktop, and drag and drop mp3s. Installed windows 98, tweaked it down to the bare minimum, and set it aside for a while.

I also picked up some micro-miniature switches and wire, with the idea of taking a keyboard apart and using the logic board / cable and the switches to make my own custom keyboard for the buttons required for winamp. Side Note: Mapping out the traces on one of those plastic membranes under most keyboards to get wire / key combinations will drive a sane man crazy- I know, I did it. I thought about using a numeric keypad, but that looked clunky.

At about this same time I started looking at LCDs / VFDs for displaying the currently playing song. (I know, I said no visual output required, but those things look awesome!) There's a lot of documentation on how to build one of these boogers, but I couldn't think of a place to put it without chopping up the dash of my brand new (read: under warranty) S10. I did pick up a HUGE LED sign from Sam's Club, with the idea of interfacing it to the computer. Then I found out about something called 'Distractive Nuisance'... John Law would not like a 26" sign in my back window. Woops. Well, rather than return the sign, I made a VB program to display currently streaming MP3s via shoutcast. It worked well in the office on the departmental MP3 server. I also made the same program spit out a changing parameter file for a java applet running on the server so that folks who couldn't see the sign could hit a web page to see what's currently streaming. But I digress...

One of the other principles that would guide me came into focus. Namely, I wanted this thing to be totally stealth. Two main reasons: I didn't want to paint a big sign on my truck that read 'steal this truck, it has lots of expensive gear,' and I wanted to be able to totally blow away anyone who had never seen it. The idea of having someone sit down in the passenger seat and go 'holy cow!' when I turned the thing on was too much of a temptation.

I did some digging, trying to find an ATX DC-DC power supply. I mean, why go from 12V DC to 110V AC back to DC. No Joy. A few folks carry AT DC-DC PSUs, but no ATX ones. I found schematics for rolling my own, but when it comes to doing my own circuit board etching, I draw the line. Put in a few requests with companies like Arise, and eventually I got a nibble... 'In six months we should have one'... nine months later, I got a response: '$200' YOWCH! Guess I'll use an inverter.

Found an A/V case from an auction at a dot-bomb for $10. Nice thin walls, but pretty rigid. I was able to mount the removable hard drive and power supply pretty easily with a dremel. (see Fig. 1) The height of the case was so low, though, that I couldn't mount the motherboard all the way up to the back of the case- my PCI audio card was full height, and stuck up above the hinge. (see Fig. 2) So I figured I'd mount the motherboard in the center of the case, and then run the ports to the side of the case. (see Fig. 3)

[Fig. 1] Power Supply and removable hard drive mounted in top half
 
[Fig. 2] Closed up, fairly low profile
 
[Fig. 3] From left to right- RCA Video, RGB Video, keyboard, mouse, USB, audio out, and parallel

I did some digging around looking for schematics for my head unit. The stock GM radio has aux inputs, apparently used for On-Star or a built-in cell phone (on a Cadillac, maybe?) Nobody had a 'protocol adapter' that would provide an RCA jack so that you could plug in an auxiliary audio source. I got a GM adapter from a local stereo shop and took two of the pins out of it to insert into the stock GM one. This gave me leads to the pins AUX+/AUX-... tried putting a signal on this line... no joy. So I tried to pull out the antenna so that I could plug in an FM modulator into the antenna jack, but the darned thing is 'keyed' so that you can't easily pull it out. Rather than risk damage, I went to Best Buy, and picked up one of those FM transmitters that plugs into an audio source. Also in preparation, I ran a 12v DC outlet to the back of the cab, to be hidden by the fold down rumble seat. There's a toggle switch on the dash that controls power to the outlet. (see Fig. 4)

[Fig. 4] Power switch mounted in knockout panel

About that same time, I picked up a Compaq iPaq- whole new obsession :) Since the Earthmate was for the Palm, and there wasn't any available software for the Earthmate on the PocketPC 2002 platform (not to mention that the earthmate is proprietary), I picked up a Pharos iGPS, and two sets of cables. The cool thing about the Pharos is that the actual GPS is this tiny puck, and there are cables for connecting to a whole range of PDAs as well as a laptop (and the Pharos is NMEA compatible.) The really cool thing is that the connector is just a PS/2 (i.e., mouse) connector. So I had an inspiration. I put the GPS in the corner of my dash, just under the inspection sticker (see Fig. 5), and ran a PS/2 cable to the back of the truck along the trim down the edge of the cab. I put a splitter there, and ran a cable back between the seats so that I could use the GPS for either the iPaq or the mp3 computer. Right about then I started getting interested in WiFi... out of sheer luck, the card that I picked up for my iPaq was a re-branded Orinoco.

[Fig. 5] GPS is barely visible from outside

Next, I got a 5db Omni with a magnetic mount from fab-corp.com along with a pigtail to match my HP (Orinoco) 802.11b card. (see Fig. 6) Then I routed that around so that the wires weren't quite so visible. (This is my only concession to the 'stealth' approach, but I won't sacrifice signal strength!)

[Fig. 6] 5dbi Omni on the roof

Back to Altex... picked up a $30 ultra-cheapie ATX case (all I really wanted was the motherboard tray), a bunch of ports (ps2 / usb / serial / vga / parallel / audio) and a bunch of wire. After de-riveting the case and dremelling the motherboard tray down to the bare minimum size, I mounted the board to the center of the A/V case (see Fig. 7), and ran all the ports to the outside. (see Fig. 3) I also took those micro-miniature switches and mounted them inside a tiny project box, along with a power toggle. (see Fig. 8) I wired this box into a parallel cable that I chopped up, then took that port I got from Altex, and wired some of the wires into the keyboard logic board, some of them into the motherboard's power / reset switch. Result? Removable controller that functioned for power and the winamp functions. I couldn't mount a microphone in the cab unobtrusively to use the voice controls on the GPS software and winamp. I'm still thinking about that one..

[Fig. 7] Motherboard mounted in the center of the case (Yes, I beat a slot cover into an 'L' shape for a mounting bracket.)
 
[Fig. 8] Control 'Pod' with miniature switches + power toggle

So v1.0 of the portable computer was finished. It lasted all of about a week. Took too long to boot, too big, and, between the fans on the power supply, inverter, and processor, it sounded like a jet engine taking off. The voice control for the navigation was a bomb, and the little controller was too easily jostled and buttons were pushed accidentally. And of course, the biggest letdown- no war driving without the iPaq.

So planning for v2.0 began.

About six months previous, one of the guys at work pointed me to a (then) newly released spec for a TINY motherboard (170mm x 170mm.) Built-in audio, LAN, RGB video, s-video, RCA video. Unfortunately, nobody was selling this wee beastie then. When another co-worker pointed me to openbrick.org, I got curious, and sure enough, the mini-itx was available from a couple of sources (no, the openbrick is not based on the mini-itx.) I picked up a case, motherboard and power supply from caseoutlet.com for $209 and splurged $98 for a slimline DVD drive. The reason I got the case at all was because it included a 12v ATX power supply. (see Fig. 9) SWEET! And for a heck of a lot less than Arise's $200 offering. A few days later, I was scavenging the ram and hard drive from the suitcase computer to pop into this little black box.

[Fig. 9] Notice the power connector to the far right.. DC 12V

Well... since I had a DVD drive, I just _had to_ have some kind of screen. :)

Partsexpress.com had a 5" screen that was encased in a visor mount for $138... Ka-Ching! I mounted it to the passenger side visor (see Fig. 10), and ran the wires down the same route as the GPS on the other side. While looking for LCDs at Altex, I also came across a membrane mini-keyboard. Luckily, it was USB, and just fit over the driver's side visor. (see Fig. 11) With an extension USB cable and some Velcro, the keyboard would be set. (Still haven't picked up that Velcro.)

[Fig. 10] 5" screen mounted over the passenger side visor (I haven't gotten up the nerve to cut the visor, so no comments about the zip ties!)
 
[Fig. 11] Keyboard mounted over the driver's side visor

Since I wanted to have some kind of mouse control, I looked around. There's a cool 'ring-type' trackball that seemed to work well, but I was afraid of a cord that might get tangled around my hand if I had to suddenly grab the wheel or gear shift. I thought about an IRman which is an IR module that connects to a serial port and lets you use ANY IR remote to control your computer, but I would have to mount the sensor somewhere within line of sight. No good. I found a cool toy at X10.com. They have a remote that is both RF and IR, and has a module that connects to the serial port. With a directional pad on the front (see Fig. 12), and two mouse buttons on the back (see Fig. 13), it functions great as a mouse. Only problem is that there's no XP software for it. The mouse functions work well, but one of the reasons I bought it was that the other buttons could be used to do things like launch netstumbler or winamp. I've seen one made by ATI that looks like it would work as well, and I bet it has better driver support.

UPDATE - 3/29/03

Woo Hoo! I was thinking of what to do with the TAN next, and I got frustrated with the lack of software for this remote. I considered the ATI unit again, then decided to see what was out there for the x10 remote. Found a Linux driver / util for the remote, which made me think to look at sourceforge, and sure enough there's a project called maX10 there for the x10 mouse remote. I must have missed it the first time around, because it's been there a while. The only bobble I had while configuring it was that I had to disable the 'mouse' that XP saw with it connected, in order to let this program control the functions. I'd also recommend hooking up a real mouse during the config process, as the program doesn't respond quite the same with a keyboard as it does with a mouse.

[Fig. 12] Front of MouseRemote
 
[Fig. 13] Back of MouseRemote

I installed windows XP on the black box, and set the bios to boot after power loss. Plugged everything in, and other than some problems with the GPS being seen as a 'Microsoft Serial Ballpoint Mouse', everything's cool. (Btw, when that happens, it's kind of funny- the cursor flies all over the screen and the mouse buttons press randomly. The solution? Disable that device from the device manager if you can get control long enough.) Also installed netstumbler, map point, stumbverter, and the ASUS DVD player that came with an old GeForce 2 video card.

[Fig. 14] Netstumbler finds two networks sitting in my driveway

Last, but certainly not least, I picked up a Buffalo USB WiFi adapter. Sweet thing about this adapter is that it's a re-branded Orinoco PCMCIA card inside a USB adapter board. The mini-itx motherboard has four USB ports, but only two of them are external with the case I have. The other two are on the motherboard (along with two IR modules.) So I found the wiring diagram and actually mounted the card inside the case (see Fig. 15), so that only the pigtail sticks out. (see Fig. 9) I'll eventually get a pigtail that has a nut and washer connector that can be mounted onto a case.

[Fig. 15] PCMCIA card mounted inside the case, with pigtail sticking out

I plan on finding an old car amp that I can take the guts out of, and mount the whole thing inside that (stealth mode.) It's really nice being able to browse my desktop from the driveway to pick the day's mp3s, VCDs, etc. I can also terminal service to the truck from my iPaq if I throw the iPaq's WiFi card into Ad Hoc mode (windows XP is such a connection whore.) I'm going to wait to finish hiding cables until after I've got the case finished.

It's kind of interesting to see how my work on this thing has mirrored my changing interests in computer technology. I started out looking for something simple- MP3s on the road. Then GPS... then WiFi... then DVD... then I realized nothing short of a full blown portable computer would suffice. It went from being something very utilitarian to being something cutting edge- a playground for the coolest toys and newest gadgets. It's gotten me into PDAs, WiFi, LCDs, VFDs, SFF motherboards, embedded processor applications, automotive head unit protocols, and alternate control and power systems. Doing a project like this can be an excellent way to explore technology far outside of the scope of everyday computing.

-Scott Rowe

UPDATE - 11/18/02

I finally got tired of having to listen to the output from the computer via an FM Modulator. So I started looking at head units that had an AUX input. I really liked the Pioneer line, with its IPBus connections. A friend of mine recently got an XM Radio module, TV tuner, and an A/V controller for his Pioneer head unit. That made up my mind. The next weekend, we went to a flea market. After walking half the day comparing prices, I found a Pioneer DEH-P740MP for a good price (MSRP $400, I got mine for $250). There are plans online for making your own IPBus connector to RCA Jacks, but the price of the Pioneer RB10 was so cheap, I just ordered it online from simplycheap.com. Had it all installed at Best Buy rather than risk damaging my wiring or dash. Sounds awesome.

After seeing some of the custom speaker enclosures available for trucks, I thought about building some kind of shelf or box to hold the computer. Only real problem with that is that you lose space. In my S-10, there isn't much space to throw away. One of these days, I'll get a sprayed-on bed liner and a tonneau cover, but that's expensive! So, I got looking at the truck, and thinking about where I could stow the computer. If I ditched the case, and just mounted the hardware, I could put it up inside the dash. Problem with that is heat, messy wiring, and access. I didn't relish the idea of tearing my dash apart. What I eventually decided to do was use a fairly roomy compartment that I don't use right now. My truck is an LS, which equates to extended cab and a leather wheel ;) In the 'extended' part of the cab are two jump seats.. if you want to call them that. They're about twelve by sixteen inches on the seat portion, hinged to a section that's about twelve by ten. After removing two bolts in the top section, it lifted right off. The thickness of the top section is almost exactly the same as the height of the case. I took the computer and sat it on the bottom seat cusion, and lifted the seat back into its niche. Perfect fit.

And then the fun really began. In order to get all the wires to that little nook, I had to remove the door sills, kick panels, seats, and center console. With all that out, it was a rather easy task to maneuver all the wires under the carpet and into their proper place. This was also a great time to vacuum all those cracks and crevices that you can never quite reach. After putting the seats, et al. back in, I turned to mounting the computer to the cushion. My first impulse was to use zip ties (that and duct tape are always my first answer to anything.) Then I noticed something. This little seat actually had seat belts. What a joke! Well, I put them to good use. I draped one part under the case, and one part over, in a kind of inverted 'V' shape. Tightened them down against the bracket that the back of the seat pivoted on. (see Fig. 16) Plugged everything back in and turned it on. What do you know, it all still worked.

[Fig. 16] Seat Belt holding the computer down tight

When folded up, there is no indication whatsoever that there is a computer anywhere near. (see Fig. 17) So what's next? I'm trying to decide if I want to get a seven inch overhead monitor in a housing, or a 6.8 inch screen with a tv tuner and A/V switcher. I'm just not satisfied with the screen's position, nor its quality.

[Fig. 17] Computer? What computer?

UPDATE 5/17/03

 

I've had problems with moving lots of files back and forth between the TAN and my home network. Not that the connection isn't good, but transferring files via windows shares is shaky under the best of circumstances. So I took another trip to Fry's and picked up a 6-in-1 card reader that can be mounted either externally, or internally into a 3.5" drive bay. It connects to a USB header on the motherboard when internal, and a USB port when connected externally. This thing does every card format that really matters anymore (CF [I/II], MD, SmartMedia, Secure Digital, MMC, and even Sony Memory Stick.)

I did run into one problem with this unit. I ran a USB extension cable up into the dash, and out the glove box. When I plugged the unit into this extension cable, it would work fine- until I powered down the machine. On a cold boot it wouldn't initialize (works fine when 'reboot'-ing.) It also displayed that same behavior when plugged into a USB hub. Seems the extension / hub makes the voltage just a smidge too low.

So I went back to Fry's. I picked up a smaller unit that does fewer formats (but does the two I need most) and this one works fine on the extension. Other nice thing is that because it's smaller, I have more options about where to put it. I'm thinking about taking out the stock ashtray and fabricating a bracket of some description for this reader.

 

Links:

Motherboards / Complete systems
  • www.mini-itx.com
  • www.viavpsd.com
  • www.openbrick.org
  • www.caseoutlet.com

    MP3Car Resources

  • www.mp3car.com
  • g.webring.com/webring?ring=mp3car;list
  • cajun.sourceforge.net
  • www.winamp.com

    GPS stuff

  • www.gps4fun.com
  • www.pharosgps.com
  • microsoft.com/mappoint/

    iPaq links

  • www.pocketpcpassion.com
  • www.brighthand.com
  • www.mobigeeks.com

    WiFi Stuff

  • www.fab-corp.com
  • www.netstumbler.com
  • www.sonar-security.com

    Random Parts

  • www.partexpress.com
  • www.altex.com
  • www.ati.com/products/pc/remotewonder/index.html
  • www.x10.com/products/x10_mk19a.htm
  • www.betabrite.com
  • www.arisecomputer.com
  • www.pie.net
  • www.evation.com/irman/
  • www.eio.com
  • www.simplycheap.com
  • www4.pair.com/gribnif/ha
  • www.sourceforge.net
  • max10.sourceforge.net
  • www.frys.com




  • last updated 5/17/03











































    Some Results :)   (2269 APs in Dallas)