I initially started a thread on another forum around the time I started my final attempt to separate the Audio-Radio unit from the combined LCD display HVAC board (full Climate control system) in my G7 Honda Accord.

I have decided to post the updated design, circuits and info on the install here, this forum is more technically orientated towards circuit and microprocessor design along with Car-PC integration and it may be of more interest to a few in this forum. This is an unfinished project, but its getting close.

At this point it’s taken some time using the system to reach a final hardware – software design that not only covers everything I want now, but is also expandable to cover future ideas and needs. I have redesigned the hardware interfaces and designed a separate microprocessor unit for general vehicle IO interface.

After using the system with my basic $25 “Push Button-Rotary encoder” and reading up on BMW’s iDrive hardware-software control system, I have decided that this has a lot of merit in any vehicle application. I redesigned the hardware interface to allow for this and much more in the future.

New hardware has been installed and I have spent a lot of time drawing and documenting all circuits and connections. The complexity designing hardware interfaces, programming microprocessors and writing software for the Frontend Windows application is enormous – especially with a fully integrated control system with Climate control and vehicle systems hardware and PC interface.

I have finalised the circuit and layout for a simple standalone system. It allows you to remove the Accord Audio system and to interface and relocate the Climate control PCB. This allows full manual control of the HVAC with a small LCD display for HVAC temperatures and status. – NO PC needed

The system can be scaled up to full PC control and vehicle interface, which is the main focus of this thread.

No one (apart from rumours) has successfully removed the combined “Dual zone climate control and LCD Radio 6 CD stacker unit” AND retained a fully functional climate control system. This last point is important.

Single zone (non climate control) systems have been removed with aftermarket kits. These basic systems leave a lot to be desired and work with of the shelf audio units. Basically a simple manual control of the basic single zone AIR-CON and a blank panel are supplied.

Dual zone “full climate control” systems are a complex system in any vehicle and unless the system has been reversed engineered correctly it performs poorly or not at all. Many owners who purchased replacement aftermarket integrated NAV-Audio solutions from China supposedly made for the Honda Accord G7 have found this out the hard way.

The problem is twofold.

1. The LCD display is made up of a number of fixed graphic display sections. A few are for HVAC temperature display and operational status. The rest display 6 CD stacker, AM-FM and Audio system information. The LCD module has over 75 connections to the PCB. Most people crack or shatter the module if they try to remove it without damaging the board.

The Audio – 6 CD unit mounts behind the front panel display PCB – This is a very large multi layer surface mount design board, size is 7” x 10” and almost as big as the front panel. It incorporates a large fixed segment LCD with all radio buttons, audio controls, LCD interface, key scan controller, HVAC buttons and HVAC microprocessor Climate control systems spread around the PCB.

2. The LCD display and front panel were designed primarily as a split part of the Radio-Audio system. The microprocessor interface that drives display data, power supply and control of backlighting and control illumination and all data clocking/strobe signals are coded inside the Radio-Audio unit.

The unit was obviously modified to take an undocumented single wire data stream (it took some finding) from the HVAC microprocessor and display it via the decoded/encode function in the radio.
There are no circuits (that I have been able to find) for the HVAC-LCD PCB or Radio – Audio microprocessor systems.

Removing the Radio-Audio system from the front PCB leaves you with nothing except a functional but blind Climate control system; and a very large PCB that had to be relocated if you want to use the space occupied by the removed Audio system. Doing so means that you no longer have any buttons or controls for the HVAC system as they are surface mounted on the main PCB behind the front panel.
Microcontrollers to the rescue.

Here is my journey to removing the existing system, fitting a CAR-PC and making the Climate control system fully touch screen integrated while retaining manual control for ease of use and for times when the PC or screen fails or are turned off.

Note: By integrated, I mean as good as or better than OEM in ease of use, response and feedback (display).

Using a digital storage CRO I managed to identify a repeating data stream on an HVAC control line. Once all timing information had been calculated I set about programming a Microcontroller to decode this stream and send raw data to a USB port on the PC. I had the task of decoding the raw data and identifying which functions each bit in the stream controlled or indicated. This has been accomplished and the picture shown is an actual screen capture of the basic display software I wrote running on the PC. - This has not had HVAC controls added at this time – just the temperature display.

The “false” or "backing" fascia. The only item attached to this is the 8” touch screen and soon to be added Remote Manual Climate control buttons with small Microprocessor interface.

A padded panel covered to match the trim will clip onto this backing panel and follows the curves of the dash down to the centre console.

The backing panel mounts via the same three screw locations that held the OEM Audio/display unit into the top of the dash. The bottom is secured using two screw mounts that held the cubby in place.

I have incorporated the same holding mechanism as the OEM Audio unit utilised to lock the top vent panel into the fascia.

The backing facia is removed in the same fashion as the OEM unit. IE. Remove the top vent panel, remove the ashtray – or whatever they call it – remove the three top screws and the two lower screws and your done.

The Ashtray houses a number of USB sockets accessible when the lid is open.

This is a picture of the screen installed “roughly” just to get an idea of the usability of the HVAC when driving – It’s so nice to use.

The highlighted buttons indicate what functions are running in the same way as the OEM unit lit LEDS for Auto, Demist, Recirculate, etc. These screen buttons are lit by commands from the HVAC itself. I convert the existing LED signals on the HVAC PCB into data commands and incorporate them into the original HVAC coded data packets coming back to the PC.

1 x eSATA 3Gb/s connector on the back panel supporting up to 1 SATA 3Gb/s device
Up to 8 USB 2.0/1.1 ports (4 on the back panel, 4 via the USB brackets connected to the internal USB headers)
Up to 2 USB 3.0/2.0 ports on the back panel

I ran into trouble with GPS sensitivity and DAB-FM reception. A search of CAR-PC forums revealed this to be a common problem and with users searching for an answer. The main problem is 12V ATX power supplies that need to provide full ATX output voltages when down to 6 volts input during cranking.

Because of the nature of GPS and the signal levels involved, any digital noise will desensitise or block GPS reception.

I came up with a solution which I have shared with others in the Power supply section. This involves installing the Power Supply (PSU) in a copper or aluminium case and filtering every input/output lead via a feed through capacitors.

This was the test setup with long leads. It worked and is now rewired and fitted in a case in the boot with the MB.

The second concession I had to make was to remove the PC from the dash and install it in the boot of the car. Noise from the PC was still enough to block GPS as the GPS receiver that comes with Garmin Mobile PC has no external aerial connection and besides, I wanted to fit this tiny receiver underneath the centre dash panel at the base of the front windscreen – Just behind the sunlight sensor for a no visible GPS installation.

After carrying out both mods the GPS has full satellite reception with the car sitting in the almost enclosed metal carport. FM reception from the rear glass mounted aerial shows no interference from the CAR-PC and PSU that are mounted a short distance away.

Main Menu. Pushing the Rotary encoder button (soon to be iDrive) brings this screen up from anywhere, including if you exited to the operating system.

Because this system is fully controlled by the car controls and iDrive system, there is no need for navigation buttons taking up precious screen space when GPS, Radio, Audio screens etc are displayed.

The Big white/red button allows you to shut the PC down (after conformation) instead of having it automatically go to suspend to RAM mode when the vehicle is switched off.
UPDATE: Big white/red button removed and now made Automatic with the Hardware Auto/Manual button – see page 4

Climate Control. This is a full two-way transfer system with Highlighted buttons reading and reflecting the LED ports on the existing HVAC microprocessor. When a button is pressed, the on-screen button state and display only change when the HVAC responds with the new state. The system response time is virtually instant.

The Mode button on the steering wheel cycles through the main 4 applications (if they are running) and announces each application in turn. When the Climate control is displayed the volume UP/DN buttons change and announce the passenger temperature, the Channel UP/DN buttons do the Driver temperature.

Hi, there are a few units available on line that tap into the Can bus for door/key entry, alarm and a few other functions from the Body control module. I have no need for this so far. However that will change when I integrate a wireless alert module into the system a little down the track.

For other interfaces to voltage and sensor systems in the car I find it easier and faster to tap the required sensors back to the micro. Just me I guess.

Screen position and non full screen size. All external applications such as GPS are automatically resized and moved to fit the Frontend size and position.

The Frontend normally runs in full screen mode, this setup allows me to move it to a different monitor. Double clicking the Time display on the Main menu toggles between full-screen and a preset size set here. Fonts are adjusted automatically with screen size however the adjusting point can be changed to suite.

The Screen brightness can be manually set to automatically darken to a preset level when the Car Lights are turned on. OR it can be set to automatically read and track the Dash lights brightness level.
Dash light fine tune for level tracking is also adjusted here.

Garmin Mobile PC GPS

With my OSK:
Background: Garmin Mobile PC GPS software does NOT come with an on screen keyboard (OSK) and most OSK’s I have seen duplicate a standard Keyboard which is just ridiculous for GPS navigation input use. So, once again I wrote my own. Nice thing about this is it does not obscure the screen and is opened or closed by touching the “GARMIN” text at the top left of the screen.

It works as well as a standalone Garmin GPS I gave to my wife. I also have the GPS map zoom in or out with the CH-UP and CH-DN buttons on the steering wheel when the GPS is on screen.

Garmin GPS can hang – see forums – To this end I have included code to detect if the GPS window is lost. Any remaining task is automatically killed, the GPS USB RX is issued with a hardware reset, the GPS application is automatically restarted and the commands issued to bring it to the MAP display screen. Takes about 3 seconds. The GPS is also automatically started and set to map display from a cold boot.

External applications setup. All fields can be filled in automatically or edited.

Window applications setup.

The Window app menu. Great when needed quickly during setup of new hardware or software.

Program Firmware.

I wrote a boot-loader into the firmware when I designed the code for the micros. This window allows me to update firmware in a few seconds. The Processor to be programmed is locked onto the data-steering switch by the other processors, these inturn go into a halt state. This ensures the correct processor is programmed and no data flows unexpectedly from any source. Automatic resets are sent when the operation is finished. About 4 seconds from the press of the button.

Automatic aerial changeover between DAB and FM aerials is also set here.
FEiDrive Encoder options and Menu clicks are set here as well.

Boot-loader screen without the Progress bar showing.

Vehicle diagnostics/monitoring.

This window allows me to run quite a few external applications for Vehicle diagnostics. I have a Honda factory hardware interface module and the Honda factory software that runs with it. Also have Auto Enginuity OBDII interface software with USB module. The last menu accesses the current Sensor inputs from the Control/vehicle interface micro. I’m still finalising this screen so excuse strange text.

Right from the start I realised that a manual volume control was needed. This is a prototype with a small micro to turn an analogue volume control via a small stepper motor.

A new unit in on the way; both include ADC inputs for monitoring the charge current and voltage of the PC battery mounted in the boot. Other controls include outputs for automatic DAB-FM aerial switching and Audio inputs selections that bypass the PC audio but still operate seamlessly from the Car-PC and iDrive, of course a hardware mute the halts all sound until the Front-end is loaded and the un-mute command is given is included.

Hi, I noted your link and heavy involvement with this kind of endeavour, so the comment is appreciated.

I read somewhere that Gamins response to a lack of OSK was “the software is intended for a laptop not a car-pc without a keyboard”.

This really works well, I should see about making it a standalone app, keeping the buttons big and the pad small was always going to be a trade off, but in use, not blocking the changing refined search results list far outweighs the extra key stroke involved with a this style of key pad.

BTW – The Screen shots look completely different on an 8” screen. Of course every icon/graphic and colour is configurable.

I have spent the past five months designing hardware and writing software/firmware, trying to make a carpc running Win7 64bit feel like an OEM installation. I’m getting close!

From this perspective here is my take on some of the problems encountered.

Software from manufactures, in particular GPS, is so full of bugs that I feel they breach the fit for intended purpose laws. I use Garmin MPC (now discontinued – but still updatable as it uses standard Garmin maps), I had to write an OSK and code the Frontend to detect when GMPC hangs. The code performs a transparent kill of the GMPC task and hardware reset of the USB RX device followed by an automatic reload and initialisation of the GPS software. I like the Garmin PC software, it looks and performs exactly like my 4” Garmin Car GPS and it looks great on an 8” wide screen display. It has bugs but works like the small GPS most of the time - I can live with it.

I discovered a number of problems with sleep/ hibernate/STR when PC software is in the process of sending data to a USB device as the system halts. Result is the USB message of a “device or port is invalid” on resume. Once again more programming to detect when the CARPC is about to go into standby and more code to halt all outgoing PC USB communications to the relevant USB devices.

Manual volume control – IMHO an absolute must.
If you can program microprocessors and Window apps then it can be elegantly meshed into a system, especially if incorporated with a modified type of iDrive control. You can get close with some off the shelf devices but in the end being able to control the system at the AMP input and select audio inputs from other sources besides the PC and still mute or control the PC or external audio source seamlessly is easier if the system is designed from the start to communicate and work with the Front-end software.

The Screen.
This was an expensive purchase and blew my budget out quite a bit. It’s often stated that the end results counts for nothing if you can’t read or see the screen. It was this item that caused the most uncertainty and time to choose. I eventually had the chance to try a couple of standard LCD screens and then a friends unit. He had just received a new 8” WS 500 nits LED backlight Transflective unit and the difference was startling.

I bought one, but hated spending the money. However, absolutely no reflections and it hardly changes colour or saturation with sun directly on the screen via the front or side windows. It’s still 100% readable with the sunroof open in direct sunlight from above. The difference between this and a standard unit was/is like night and day.

This screen is currently in a temporary installation, it has no shroud or hood, is slanted back and is surrounded by a shiny aluminium backing panel, I only run it at 65% brightness and in direct sunlight this 8” screen leaves a small screen Garmin GPS for dead. I’m looking forward to finishing and fitting the dash cover panel and seeing the end result.

Pictures of the prototype PCBs that are currently installed in the vehicle.

The HVAC (Climate Control) interface micro.

The Car Controls interface Micro.

The Car controls and HVAC microprocessors along with the Data switch mounted in a case with the original HVAC/LCD board. This unit plugs into the system exactly as the original HVAC system did.

The wire connections going to the original PCB are simply soldered across the existing switches and LEDs. The only modifications to the original board are the removal of the two temperature rotary encoders.

These can be soldered back on, the wires removed and the original system can be reassembled and installed. Nothing is damaged or cut in this installation. The existing vehicle wiring and plugs are untouched. No dash modifications were made. The only mod was to the inside of the ashtray as a 4 port USB HUB in now mounted in there. The acc power socket in the tray is unchanged.

Forgot to highlight that fact that like most Screens this unit has its own 3 stage automatic brightness level. However that by itself was insufficient to bring the brightness down to unusable levels for night driving. The screen brightness now automatically changes with the Headlight switch and with dash illumination via a PWM signal to the Controls microprocessor interface. Both these signals wires are in the original head unit plug that now connects to the Controls micro.

Having the screen brightness follow the Head/Park light settings and vary with the dash brightness control further enhances the feeling of integration. It’s just one more thing that is now fully automatic. The installation is at the point where anyone could get in the car and drive it without knowledge of the system.

Every time I see your stuff I am amazed... Really nice work and great writeup.

I have a question for you (and depending on the answer a suggestion) -- how do you boot up your system on a regular basis? If cold booting, here's my suggestion:www.coreboot.org (check the FAQ as I didn't see your board supported yet). One of the benefits (at least reported) is a much quicker boot time (via reducing the BIOS setup time).

Thanks nasa for the words and the link, just on my way out so I will look at that site when I get back. The system cold boots 1st time each day, from then on it resumes from STR in 1.5 to 2 seconds.

The strange thing about this board is the time taken before the BIOS "appears" to start. From cold boot there is an 8 second delay, the CPU fan then drops speed and the 1st part of the Bios initialisation screen appears. From then on it’s pretty quick through the bios. No other MB’s I have owned have done this, others who have this board report the same issue. Latest bios installed as well.

In reality it’s still around a 35 second cold boot, so l'm in reverse looking at the reversing camera image on screen as the Date and time are announced from the now loaded Frontend.