Mondeo Raspberry Pi carputer project
So I've been interested in a car computer set up for a while. The raspberry pi seems the perfect device. It's tiny, it's cheap, it's fanless and it runs on 5v DC.
So I turned my attention to screens. Ideally I wanted a single din, motorised monitor with touch screen input. But when I looked into it they're prohibitively expensive, not to mention I spent a bit of cash on my Kenwood head unit so if I could make use of it all the better.
So I did a bit of searching on eBay and found a raft of cheap screens sold as being reversing camera monitors. Less than £20 including postage and my favourite one was 4.3" and folded flat.
Another of my concerns is that the setup shouldn't be obvious to any potential thief, so with this folded flat it shouldn't be particularly obvious.
So the plan is to fit the monitor to the dash near the windscreen so it can be seen by passengers when stationary, and wire everything back to the glove box where the pi and ancilleries will be.
Functionality wise eventually I want:
- Media player (music and video from a large capacity hard drive)
- WiFi for connectivity
- Sat nav
- Steering wheel controls
- Link to on board diagnostics (OBD) - Will allow all sorts of data logging and calculations etc
- Video recording capability?
- Inertia sensors to measure G force?
- Reversing camera
- Relay to pull power from the pi on ignition off (with some magic to allow it to shut down properly)
Media player is simple, XBMC provided by RaspBMC gives a very tidy and functional GUI to play my entire music collection.
Wifi can be provided by a USB dongle
Sat nav is also available by a USB dongle albeit primitive
Steering wheel controls I can program using the raspberry pi General Purpose Input Output pins, it'll take some doing but I'm relatively confident.
Obd is quite far off as is video recording and inertia sensors.
Reversing camera is simple, the screen has two inputs so the camera will actually completely bypass the Pi.
The relay to sort the power is a very neat piece of kit provided by Mausberrycircuits.com. It takes 12v permanent and switched from the car. When switched comes on it provides 5v power to the pi, when switched live is switched off it sends a signal to the GPIO to shutdown, then waits for success before pulling the power.
The steering wheel controls on the Mondeo appear to be only two wires, and the way it differentiates which button is pressed is by varying resistance across the wires. So if I can read the resistance with the pi then I can issue commands for each button.
So I did some research and since the gpio can only read digitally, so on or off, high or low.
My research suggested the best way is to use a known voltage to charge a capacity of known value. The amount of time the capacitor takes to reach 'on' status can be counted and the amount of time is proportional to the value of the resistor.
And since there's the pi involved, I can add more functionality I.e different button presses dependant on the length of time the button is pressed. And/or I could change the mode, I.e hold a button down and the function of each button changes.
I bought a used steering wheel control with some wiring loom and tested the resistance on a multimeter with each button press. All measured on the 20k ohm setting.
No buttons: 5.06
Volume +: 0.15
Volume -: 0.05
Seek back (push): 0.56
Seek forward (pull): 0.30
This will be the basis for measuring the resistance of each button.