This is my 2nd carputer, this time running an Intel NUC with a Lilliput 669GL. My goal was to build a carputer which would look as it was sold with the car, with no apparent modifications.
First of all, this is my ride, a 2000 Jeep Grand Cherokee:
It boots directly into Navit, with some experimental features (integrated Spotify player, Foursquare places search/explore and checkins and GooglePlaces search). It has wifi and uses my phone as an access point when I'm on the road.
Fully operated from the touchscreen with audio control from the steering wheel. All the code is available in my github.
I've been using this setup in the car for a couple of months now.
The carputer runs on Gentoo and boots directly into Navit (with some experimentals plugins). Boot from power-on to Navit is <10s, partly because it's running on SSD. It powers up and down using a power supply from the mp3car store ( 12-19V converter )
After an unsuccessful try of using a Joycon EX, I figured that my car actually use CAN-BUS for the communication between the steering wheel and the audio unit.
Using a cheap OBD2 to USB interface i was able to read commands from the steering wheel. The code to accomplish this is now available as a Navit plugin : https://github.com/pgrandin/navit/bl.../j1850/j1850.c (instead of the POC code in python which was talking to evdev). Further ideas for this plugin include monitoring the vehicle speed in case of the loss of GPS signal, and to use it for dead reckoning. This is a work in progress and will be further documented. This has been inspired from the amazing post from Thesksmith on his blog about canbus hacking, kudos to him for a very detailed explanation and for getting me started. Applying his method with another script I wrote allowed me to figure out some of the other J1850 messages while avoiding the use of a spreadsheet. The script builds a baseline of the messages which are being exchanged on the bus, and is able to find easily the related message if you perform a specific action ( like a button press).
One of the biggest challenge was to fit the screen in place of the factory head unit, because it is a 1.5 DIN instead of the now standard 2DIN. I had to build a custom frame and the screen fits to the millimeter.
The custom frame is based upon a refurbished bezel:
Beta testing the setup in the car :
Polishing the bezel design. You can see here that the Lilliput bezel was merged into the headunit bezel.
The original dash looked like this (picture is not mine, took it from a post from "Dark1" but it was the same interior :
Current install :
I've also fitted a cheap USB board with 2 relays to drive the amplifier. Now, the amplifier is only powered once the carputer has booted, and is shut off first thing when the carputer is shutting down. This avoids getting some interferences during the boot when the USB sound card is not ready.
I also have a backup camera ( TaoTronics TT-CC17 ) and it's using the Lilliput's ability to auto switch to the correct input when you put the reverse gear.
I've also started to replace some parts that were manually crafted by some 3D printed parts. This is still a work in progress as I need to fine-tune the parts design.
First part I printed is a replacement for the box holding all the electronics where the factory radio was sitting. It fits nicely in the car, I now need to design the other parts like the screen frame to make sure that they integrate nicely all together. I have also printed a 1:1 replica of the LCD panel and its PCB to avoid the need of using the real display for prototyping.
The parts are available in Github.
The current, aluminium-based prototype :
The replacement part being printed using PLA:
I recently moved the Nuc from the glovebox to the trunk, where it now sits in the place of the factory CD changer.
As I said earlier, I have been using this setup for a couple of months now, and had no issues so far.
Last edited by KaZeR; 12-16-2014 at 08:20 PM. Reason: added link