Thursday, 26 February 2015

Roof Console

Hello and welcome to post 2 of my in-car PC build :)

In the first post, I set the design requirements for the system then designed and built the PC. In this post I'll go through how I found a way to mount it in the car.

I had a few problems that I needed to solve in order for the computer to work reliably for a long time (Expected life of the computer is four years before i'd be looking at doing a major rebuild). They are:
  • How to minimize the impact of dust, water and heat on the computer's performance
  • How to run power and wiring for all the peripherals to the computer
  • How to make the computer easily accessible and serviceable without being intrusive
To keep the PC as far away from dust and water as possible, I chose to have a roof console custom made. A roof console is basically just a narrow box that attaches to the roof of the car and runs from the front of the car backwards down the centre. They are normally used for extra storage and mounting 2 way radios, reading lights ect. This choice is a trade-off as being the highest point in the cabin it naturally gets the hottest and will absorb heat generated by the sun shining on the roof. However the protection from water and dust, while also being in a position where it is out of the way was worth it.

After doing some research I found an Australian company that specializes in designing building roof consoles (and other interior accessories) called Department of the Interior.

Under my guidance, we designed a console to house the computer. I had to have the PC shipped to them so they could use it for measurements. The console we designed (I modified one of their off-the shelf designs) and attaches using the mounting holes from the car's factory fitted roof console. I also had them put in some switch slots as I needed the spots for switches for the computer and other electrical accessories.
Prototype design of the console

A few weeks and several hundred dollars later the console arrived and I could resume the build.







Underside view - you can see the computer mounted in the console. As an added bonus the wooden construction should help reduce vibrations from the engine being transferred into (and thus damaging) the PC's components.
Installing the unit into the car was slightly complicated; First I removed the rear view mirror and the factory plastic console that housed the sunglasses holder and two reading lights, and unscrewed the factory centre cabin light.
Forward end where the console was, note the two screw holes in the metal plate




Then I removed the sunglasses holder from the factory console and installed it in the roof console. Getting the holder in the right position was slightly annoying, as a slight misalignment meant it would catch on the console and not swing open. This is most likely due to console being hand made and the expansion and contracting of the wood with temperature and humidity.



The console came with a steel bracket on the end which serves to secure the console onto the car. This had to be removed in order to install the sunglasses holder. 
Console with steel bracket removed and sunglasses holder installed

In order to be able to screw the console into the holes in the roof, I had to drill two holes in the  top of the sunglasses holder to access the screw heads.



The next step was to reattach the steel bracket. 
Steel bracket partially attached (2 screws missing). The two nuts  welded onto the bracket serve as spacers and position the console at the correct hight in relation to the roof lining.
The console could now be installed. Installation was slightly tricky. In order to align the two front screws, I had to perch one between the underside of one of the the nuts in the picture above and the sunglasses holder, and the other I held up against the underside of the steel bracket with a screwdriver while the console was lifted into position. Installing the rear two screws was a simple matter of aligning the them with the holes from the factory roof light and fastening them. 

Unfortunately fitting the factory reading lights to the console along with the sunglasses holder was not possible. I have ordered two eyeball type LED reading lights which I will fit at a later date. 

With the roof console fitted, it was time for preliminary testing. 

I have yet to decide on a touchscreen for the computer, so in lieu of this I used a standard LCD computer monitor and a USB mouse and keyboard to control the computer. For a bit of fun I used a 3.5mm jack to run audio from the computer into the car's head unit so I could stream my music online from the car computer while I worked :).

Console fitted with the computer up and running


I hooked up the computer in series with a multimeter set to ammeter mode to get a reading on the current draw of the computer. Evidently the computer is capable of drawing more than 10A, which tripped the safety circuit on the multimeter and caused it to cut power to the computer. However, I did manage to gather the following data between blackouts:

Max observed current: 7.3A
Current when computer is shut down: 0.06A
Current when computer is idling: 1-3A

These are acceptable figures, so I left the computer running continuously for several hours during the day to get an idea of how hot it would get. After approximately 4 hours of running in the shade on a 38C day (100.4F) with high humidity, I observed some worrisome results. Using Speedfan, a free and simple application for monitoring system temperatures and controlling fan speeds, I found the following:







There are several very high temperature readings listed, including the CPU. When I felt the case with my hand, it was very warm to the touch, to the point where the heat had conducted through the sides and bottom of the console (roughly 7mm of wood, foam padding and vinyl) to make them warm also. Better case cooling is required. 

To rectify the problem, I will buy and fit two 40mm high performance fans to replace the ones mounted on the front of the case. In addition to this, I bought two 60mm fans and have fitted them to the black grill on the underside of the console. This idea did not work out as the fans would not fit on the grating without hitting the end of the PC when it was installed.


Mockup of 60mm fans which did not get used


Dust is a major concern as the car will be driven through  muddy & dusty environments that are notorious for damaging electronics and mechanical components. I have some  porous packing/cushioning foam from the box that the console came from, which I will fit between the fans and the computer to use as a filter. 

In addition to testing the computer and checking the fit of the console, I also started to run the large amount of wiring and communications cables needed to support the computer. So far I have ran a thick ground wire to ground the computer and accessories such as the reading lights, a thinner red power wire for accessores, two 2M USB extension cables and a figure 8 wire. One wire on this carries +12V that is switched with the park/headlights, and a ground wire that runs back to a variable dimmer unit. These will be used to run the LED's in the carling switches that I will mount in the switch bracket. I also ran two 4 core wires from the console down the passenger A pillar for future use with the switches.

Routing the wires from the console to above the glovebox (There is a compartment above the glovebox in the Patrol that will serve as an electronics and wiring bay) was relatively easy. I removed the A-pillar covers on both sides then removed the sun visors and passenger side roof handles. This allowed me to pull the roof lining down so I could feed the wires above it and leave them hanging out the open area where the switch holder on the console was (I removed it for easier access until I start wiring and mounting switches). 

That's it for this post, I'll write an update as soon as I make progress. Bye for now and thanks for reading.




Thursday, 19 February 2015

Introduction & Design

Hello world :) This is my first blog so here goes.

To start off with let me introduce myself. I'm a young engineer who lives and works in Australia. my biggest passions are driving through challenging off-road areas and camping. Another passion of mine is technology, I like building computers and fiddling around with electronics. So, I thought I'd combine both an extensive  and ambitious project.


I created this blog to document my progress on how I'm designing and building an in-car computer system for my car. This post will be a big one, because I'm well into the build, but I'll try to write shorter ones as I make progress.



Why put a computer in a car you ask? Well to answer that question I'll tell you a bit about myself and my situation.

As it it stands, my vehicle of choice is a 2003 Nissan Patrol. For those of you who don't know this is a Japanese-made large SUV that has an excellent reputation for being both reliable and tough. It is unique from many other off-road capable SUV's in that it is built like a truck underneath, with a chassis and front and rear live axles. I've allready made many modifications to it to vastly improve its off-road capabilities, including a suspension lift, engine performance improvements, differential lockers, large mud tires, ect.

My Rig


So to make the car even better, I wanted to build a system into the car that is capable of doing the following things:

  • Monitoring engine parameters (oil pressure, boost pressure, coolant temp, ect) in real time
  • Navigating on and off the road
  • Hosting a full entertainment suite (music, movies, internet hotspot,ect)
  • Monitoring and controlling equipment
  • Monitoring parameters of the electrical system
In addition to these the following design requirements must be met:
  • Systems critical to the function of the vehicle (eg the engine's electrical system) must not be adversely affected by a failure of any part of the computer system.
  • PC must turn on automatically when the key is set to the accessory position
  • PC must shut down automatically when the key is removed and have a safety feature to automatically power off after being left idle to prevent draining the auxiliary battery

So to make a system that does all this, I needed to come up with a solution that is versatile, modular and upgradable. After thinking about this, I decided to build a pc that is both compact and powerful enough to run all of the functions listed above concurrently, but is also durable enough to withstand the harsh conditions of the Australian environment. This is no easy feat, but I have a plan to make it work.

My plan for the basic layout of the system will be to have the computer mounted in the highest point in the car, away from the water, dust and sand. To control it I'll be running a touch screen mounted in the dash, in place of the factory double sized radio. 

Now to build the computer - I chose components system with power efficiency given slightly higher priority than performance. The biggest concern for me was power consumption, as in later stages I plan to leave the computer running from a separate battery when the car's engine is off, but in order to get good life from the battery it can't draw too much current. I found a local supplier here that sells computer cases and power supplies that adapt the 12V DC from the car's battery to the necessary voltages and currents that the computer needs. 

I chose the following power supply & case combo as they are designed for vehicle use and have some handy features that will make integration into the car's electrical system easier later on.


The PSU is capable of 140W max sustained output, which for a computer is not much at all (to give a comparison the one in my home computer is rated at 750W)

The case takes a Micro ATX form factor motherboard, which is basically a mini version of the boards found in most desktop PC's. The advantage of this is you can have a motherboard with all the onboard features of a regular desktop PC in a super compact package.

To save space and installing extra components, I wanted a motherboard that has onboard WiFi and Bluetooth. I settled on the ASUS Z97I-PLUS because its a solid motherboard that meets these requirements and has heaps of handy features for power saving, as well as a complementary software suite for monitoring and control. 

For the CPU I chose an Intel i3-4360. It has a low TDP (54 watts) but still packs a punch with a 3.7ghz clock speed. 

I chose 8gb of relatively cheap Kingston KVR16N11S8K2/8 memory, it's not the fastest or best quality but crucially it is very low profile which was nessicary to fit it inside the slim computer case.

I chose Window 8.1 as the OS (this was current at the time but has since been updated to 10), as obviously it has a huge range of applications made for it and it has the advantage of already being optimized for touchscreen use. 

For fast boot times and extra shock-proofing I chose a 250GB samsung evo 840 series SSD 

I  also bought a Samsung USB powered DVD-RW drive for watching DVD's but I didn't end up using it. Now, to start the build:

As with any PC build, one of the first steps is to prepare the case for mounting the motherboard. The power supply is designed for the case, so it was a simple matter of screwing it onto the stand-offs on the motherboard tray. 

Then I mounted the motherboard and installed the CPU:
Note the black 8 pin connector on the motherboard in the upper left corner next to the heat sink, and the 24 pin connector in the upper right corner
Next was to install all the wiring to hook it up:
The wiring is partially complete in this photo

This is where I ran into the first major challenge of the build. The power supply has the standard 20 pin ATX connector that supplies power to the motherboard, and a 4 pin connector for CPU power. This is an outdated design, as modern motherboards use a 24 pin connector for the motherboard power and an 8 pin connector for the CPU power (my motherboard has these in the photos above). 

I connected the power supply to a car battery to power on the computer for testing, and lo and behold, it didn't boot. In fact, it didn't even pass POST. This had me scratching my head for a while, and I eventually worked out that the computer wasn't getting enough power to the motherboard and CPU, and this was preventing booting. 

I needed to create a solution. I used a schematic from the internet to figure out which pins do what, and what voltages of the 4 extra motherboard pins require, then I spliced into the wires from the PSU connector and wired them into a spare 4 pin plug to make up the extra 4 pins.

For the CPU power, the wiring is quite simple, half of the wires are +12V and the other half are for earth. I simply cut the wires going from the 4 pin CPU plug on the power supply and bifurcated them, running one wire to each 4 pin plug so that the 4 pin connector on the power supply end became two 4 pin connectors on the motherboard end.

I didn't have the 4 pin connectors I needed, so I had to make a trip to a couple of local computer stores and asked them if they had any spare 4 pin and 8 pin cables, which one of the salespeople kindly gave me for free as they were leftovers from previous builds.  Alternatively, you could probably scavenge them from old power supplies. 

With that problem solved, I moved the computer to my computer room, and borrowed my home PC to power the motherboard and other components while I installed windows onto it. 
The car computer (sitting on the table to the right) next to my main PC. The main PC isn't actually running, its power supply is powering the car PC. The lights are on because some of the main pc is still connected to its power supply.
The last step was to so some cable management and fit the computer into its case. I should note that it was a very tight squeeze as there was no clearance between the plastic fan bracket on the CPU cooler and the top of the case. Choosing a more powerful CPU wouldn't have been possible as the coolers on them are taller and would not fit in the case.
You can see how little room there is between the CPU fan bracket and the case
This is the final assembled PC:
Perspective View: The VoomPC logo lights up blue when the computer is running


Back view: The white connector on the far right is for the power supply connections for easy removal.


Top view


Side view with the case upside down. You can see that the motherboard tray slides into the black case from one end. Its held in by screws that screw into the back of the computer. The SSD tray uses a similar system and is on a separate rail that slides in behind the front of the case.
The next step was to design a way to mount the computer in the car. Keep reading for the next step.