By now I think everyone has seen this video:
HUD-One on Yahoo! Video
I started working on this almost a year ago, right after purchasing my Valentine One Radar Locator. The first step was to reverse-engineer the protocol used in the various communication networks in the Corvette. Since GM considers these to be proprietary, they are not publicly available, although one may be able to purchase this information directly from GM for a hefty fee. Reverse-engineering it myself cost me fewer dollars but lots more time. This part alone took several weeks.
The Valentine One concealed display protocol also needed to be reverse-engineered; fortunately, this was done long ago by others and has been floating around the net.
Next I needed a small embedded computer to run the HUD-One application. For various reasons, I settled on an LPC-P2103 from Olimex. The micro has 5V-tolerant I/O, and the board has a small prototyping area which turned out to be extremely handy. I already had all the necessary development tools from a previous project, so that saved me some time and money.
I then selected an LDV6S to serve as the interface to the in-car network. Unlike most OBD-II interfaces which use the clunky ELM command protocol, the LDV6S uses a unique binary protocol and had other features which made it well-suited to this application.
To power it all I used an M3-ATX power supply. Total overkill, but after spending several weeks screwing around with other power supplies that didn't work well in the challenging automobile environment, I decided to bite the bullet and use something that I knew would work and would protect the HUD-One from transients, load dumps, under-voltage conditions, and all the other gremlins of automotive electrical systems.
In addition to the power issues, there were many other problems which had to be worked out. For example, the first time I plugged the HUD-One into the car's wiring, I discovered that the LDV6S would jam the vehicle network while it was powering up. While it was connected, none of the other modules in the car could communicate with each other; the car wouldn't even start! I had to isolate the bus connection with a relay before it would work. The annoying little problems, coupled with the fact that I have a day job and can only work on this stuff in the evenings, means it took almost a year to get to this point:
This is version 1.0 of the HUD-One, nicely packaged in a plastic box with a see-through smoked lid. The RJ-11 jack on the side is where the V1 plugs in; the other connector goes into the car's wiring. It all fits in a cozy little spot underneath the passenger side floorboard, next to the fuse panel and the amp for the Blose stereo:
The V1 itself is hardwired to the passenger side headliner using a VoZtech mount:
I ran the wire from the HUD-One mounting location through the inside of the A-pillar:
Once it reaches the top, it runs inside the headliner until it reaches the sun visor bracket:
It comes out through a small hole in the bracket which used to house a small yellow LED used for ambient lighting in the cockpit at night. I saved the LED in case I ever want to restore the car to factory condition.
After several weeks of testing and tweaking, I retired my HUD-One prototype the other day, cannibalizing it for parts for Version 2.0:
Sneak Peek at Version 2.0