I've put together this report of why, what and how I put together my car pc, along with some design decisions and some thoughts. I hope that someone out there will be able to use this information when they are making their Carputer.
5 years ago, I had a BMW E30 320i with a CD Player. I wrote CD's at home, played then in the car. Whoopidoo!
Last year I had a BMW E36 328i and I used a Sony MEX-R1 to play mp3's from DVD's aka GigaMP3. This head unit had many limitations like fast forwarding and loading times, but it did play mp3's so I was a happy bunny, until I crashed what I thought to be a minor incident, but turned out to be a write off since the cost of repair was greater than the cost of the car!
My car now is a BMW E39 535i. As you can see, I only buy BMW's. There is a significance to me saying this, which will become apparent later, but for now it is understandable if you think of me as a show-off / nose-in-the-air git etc.
I wanted to play mp3's of course but realized this was trickier than I might have imagined. The one option that I very almost took was to replace the OEM 6-CD changer with an aftermarket mp3 capable version, and use an IBUS-MBUS adaptor or similar. Great I thought, 6 cds crammed with mp3's is about 600 songs, which is way better than what I currently have. But the horrid thing about this solution is that the OEM head unit cannot display ID3 tags from the aftermarket CD player. So I started looking for ways to do this. Then I discovered all sorts of information about the IBUS and using the steering wheel functions with an IBUS adaptor. The idea of doing a carputer had plagued me for a while as I had some other computer-vision based ideas, but finally I had a real reason to do it. And since I only buy BMW's, creating an IBUS based solution will mean I can port the carputer to the next car I have with ease.
The plan was first to use the carputer solely as a music player, with the ability to display the currently playing song on the BMW Multi Instrument Display (MID) through the IBUS, and to use the steering wheel buttons to change volume / song / album / genre. Also, I wanted to upload music to my car from the house via WiFi.
So I sold my stock CD changer for £100 and the Sony MEX-R1 for £150. That's £250 to play with. I also sold a whole load of spare parts I took out of my crashed E36 before it went to car heaven, and then sold my soul to the devil.
With a budget of £350 I wanted to do this as cheaply as possible. Slowly I roamed these forums like a silent fart and began seeing that if I use the pc for music only, it would be like using my willy only for urinating. So my eyes widened and my pockets deepened. This is what happened:
So far, the project has cost £595. Depending on what happens with this thread, I may still get a touch screen, and modify my dashboard so this could go up to £850 - £900.
Intel Pentium 4 2.8GHz (512K Cache, 533MHz Clock) £59 eBay
Commell LV-670 Motherboard (Intel 845 Chipset) £102 eBay
Kingston Value RAM 1GB PC2100 (266MHz, 2.5CL) £68 Stuff-UK
100GB 2.5" Seagate HD (8MB Cache, 5400 RPM) £114 MicroDirect
M2-ATX DC-DC PSU (160W) £60 Car TFT
Akasa Icicle/AK-360 Fan + Heatsink (1U, Low Profile) £18 MicroDirect
VoomPC Enclosure (Black Edition) £60 Car TFT
Belkin USB WiFi Adaptor (F5D7050UK) £23 eBay
Belkin USB Bluetooth Adaptor (F8T012) £21 MicroDirect
BMW IBUS USB Interface £30 EEDesignkits
PSU, Clips, Switches, Heatshrink Tubing, Tools, etc £40 Maplin
Here's a funny thing that happened. When I ordered the BMW IBUS USB interface from the US, it arrived in a damaged package. It was wrapped in a plastic bag which had the something like this written on it: "Damaged before entry to the UK". So I opened the package to make sure everything is in there and to my relief there lay a small electrostatic resistant box containing my interface. Now let's just consider the facts here. The guys selling the adaptor were from Iraq and I'm from Lebanon. I'm receiving a small electronic device without any documentation of any kind. Hmmm... I guess the plastic bag would have been better read as "Please accept our apology for suspecting you of being a terrorist!".
I thought that putting this unit together would be as straight forward as a headlong monk. It turns out to be far from it!
So here's the finished product:
The first issue was the orientation of the PSU. If I had put it the way it was meant to go, that is ATX power connector nearest to the memory module, it would mean the power cable would run over the motherboard, and obstruct the airflow from the CPU to the back (the VoomPC case fan is in the center-back, near the hard drive). It would also be untidy and we can't have that! So I reversed it and it wouldn’t quite fit because the DIMM lever thingy was in the way, so I drilled into it:
The motherboard comes with 2 USB ports on the front, and 2 USB ports that extend from the motherboard and are on a blanking plate type thing. They are designed to go on the back of the box. The VoomPC again doesn't have this so I thought I would glue them next to the rest of the ports at the back (box 4 in back-view picture below). Again, the reversely placed PSU blocked access to the first 2 pins of the USB connector. So I got my Dremel out once again and started hacking. I made the 10 pin connector into an 8 pin version, with a couple of fly leads, wrapped with heat shrink for insulation. Since these wires were out of their case, they were workable and I bent them enough so that they would fit. I later found out that Maplin do an 8-pin version of these connectors, which means the two wires I slaved over were not 100% required. But hey, they're there right? Here's what it looks like now:
I also found that the power supply wires supplied with the VoomPC case would now run across the board. So using a soldering iron, some heat shrink tubing, I extended the power wires. I also didn't want to always have power in, so I ran an inline STDP (single throw double pole) switch, to control the switched and unswitched power inputs (box 5 in back-view picture below). Various other wires, like the P4 power connector suffered the same cutting/extending treatment until finally, all the wires ran neatly over the PCI slot (which I can't really use in this enclosure).
I had tried to find the Commell made fan, but couldn't. I got no reply from Commell when I asked them about it so I decided to get the Akasa 1U after some research. The fan arrived and it didn’t' fit. Where's that Dremel?
And finally, I added a couple of push switches for the reset and power buttons, and glued them at the front (boxes 1 and 2 respectively in the picture below). I also decided to add a BIOS reset button at the front, but a little pushed back to percent accidental operation (box 2 below). For this I used a microswitch, which is a perfect for a BIOS reset. A microswitch will usually connect a common pole to the normally-on pole, and when pushed it will connect the normally-off pole to the common pole. This is the same action as a jumper that connects pins 2-3 usually, and pins 1-2 when a reset is required.
The final step I'd like to do now is to make a backing plate, using a plastic sheet of some kind to protect the insides from debris / insects. Here's what I envisage this last part will look like. I've had to cheat by taking a dim shot and to black out any visible bits using paint (no Photoshop at work!)
Before powering up, I first verified 10 times that I got all the wire extensions done correctly.
I got my test ATX PSU, cut two yellow wires and a black wire (yellow is 12v). I connected the switched supply to a yellow wire via a switch, and the unswitched wire directly to the second yellow wire. This way, the car ignition key going on/off can be emulated.
Using a multimeter, I checked that the power coming in was around 12v. Then I checked that power from the DC-DC supply was correct before I connected it to the board (you can find detailed ATX pinouts on the web).
Finally, I connected the ATX supply to the board, pressed the magic button and a big smile dominated my face!
I put the hard drive in my desktop PC, formatted it using FAT32, made it into a system disk and copied the Windows XP setup files onto it, the put it back in the Carputer.
I configured the BIOS to boot from the hard disk, and to ignore all errors at boot up. I also disabled the secondary IDE controller, the floppy controller and the serial ports, since I won't be using those.
At that point, I had a C:> prompt. I went into the i386 directory, ran winnt.exe and waited while windows copied the files it needed. Windows setup then tells me that I didn't have enough RAM to install Windows XP. What? I went back and checked the BIOS screen and it claimed I only have 256MB of RAM, when I installed 1GB! After much investigating, I found that my motherboard only supports 1.5, 2 and 2.5CL DIMMS. The 1GB that I had bought was a 3CL. So I ordered a new one, and used an old 256MB module that I had lying around to install the PC.
And there you have it. Any questions / comments let me know.