Heads-up displays (transparent displays that let drivers see data without looking down) are built-in on some modern luxury cars, but if you're not lucky enough to have one, here's how to make your own. It's a relatively cheap and easy project, but you'll need some soldering experience and familiarity with Arduino.
I researched, constructed, and installed mine in approximately one month on a 2004 Toyota Highlander. This is what it looks like in action: China BMW E/F Scanner
![How to Build a Heads-Up Display for Your Car | Lifehacker](http://kehu02.grofrom.com/www.minpnelectronic.com/2d2934e83e25f508a2a1d24faae3ad27.jpg)
My model uses the car's OBD-II port to connect to an Arduino microcontroller, which is programmed to display the car's speed on a 7-segment display. A fresnel lens is used to optically collimate the display, which is projected onto a piece of combiner glass.
The difference between this and most third-party HUDs is:
It's optically collimated. This means the display is focused at infinity, so the driver does not need to refocus his eyes from the road. The display looks like it's floating in space right where the road is. Most third-party HUDs are not collimated.
It utilizes a combiner glass. This specially-coated piece of glass allows for virtually seamless viewing of the outside road simultaneous with the display, as opposed to cheap "reflective films."
OBD-II cable: $50 (This one comes with an Arduino library, so it's easy to program with.)
Arduino Protoshield: $10 (To easily mount the display on top of the Arduino. This is optional, you can just use perfboard instead.)
Power switch: $0.50 (Really cheap and makes it easier to turn the power on/off instead of unplugging the wires every time.)
Large Fresnel Lens: $1.80 (It really doesn't matter which one you buy as long as its at least ~220mm long.)
Teleprompter Glass: $15 (Get the 7" by 4" custom size.)
4 Suction Cups: $3/$1.50/pack of three (You can use any suction cups you want, just make sure they can hold the glass safely.)
Total Cost: $113.30 (Full setup pictured at above)
Solder these connections onto the protoshield to be mounted on the Arduino:
Black wire to GND (through the power switch if you have one)
Go here and download the code, then open it with the Arduino program, connect your Arduino to your computer, and upload the code.
Pick a place in your car to build the holder for your Arduino. Keep in mind that it should be about 10-inches away from the lens, and it should be out of the way of your hands and legs when you drive. I built mine into an existing compartment below the steering wheel.
Duct tape and cardboard are extremely cheap materials to use, and they hold up pretty well. (Obviously you can take a bit more time and use materials that look a bit nicer!) Next, put the Arduino on top and connect it to the OBD wires. I soldered headers onto my protoshield for easy connection with the OBD wires.
Bend the hooks of the suction cups to cradle the glass like this:
Angle the glass until you can see the reflection of the display, then tweak the suction cup hooks to hold the glass in that position.
If the suction cups hooks aren't long enough, just cut out a segment of a wire clothes hanger and bend it around the suction cup. After you finish, you might want to pull on the glass a little bit to make sure the suction cups will hold.
The fresnel lens is very flimsy by itself, so I recommend taping some support around the edge. You can use cardboard, popsicle sticks, or anything you find around the house. Wooden kabob sticks worked well for me. Now that the lens is nice and sturdy, you need to figure out the exact position the lens should be in to collimate the display. This can be tricky to get exactly, but you're looking for when the display is the most magnified without being blurry.
I found this the easiest way to do it: Look through the combiner glass and through your windshield at an object far away (let's say a tree). Notice how when you focus on that tree, the display splits into two images because your eyes are no longer focused on it. Now place the lens right over the Arduino and then slowly move the lens up towards the combiner. Still focusing on the tree, you should see the two images of the display gradually get closer to each other. When the two images meet, stop moving the lens and mark its position. That means that the display is now focused at the same location as the tree.
Now build a holder with cardboard and duct tape to hold the lens in that exact position.
The lens will probably be bigger than you need, so just use scissors to trim off some of the edges where it's not needed. You now have a working heads-up display!
How to Build a HUD for Your Car | Bill Wong Tech
Bill Wong is a high school senior who expects to study engineering in college. He shares his projects on his blog, Bill Wong Tech. Email him with questions or comments at [email protected].
Want to see your work on Lifehacker? Email Tessa.
Lifehacker has been a go-to source of tech help and life advice since 2005. Our mission is to offer reliable tech help and credible, practical, science-based life advice to help you live better.
© 2001-2024 Ziff Davis, LLC., A ZIFF DAVIS COMPANY. ALL RIGHTS RESERVED.
Lifehacker is a federally registered trademark of Ziff Davis and may not be used by third parties without explicit permission. The display of third-party trademarks and trade names on this site does not necessarily indicate any affiliation or the endorsement of Lifehacker. If you click an affiliate link and buy a product or service, we may be paid a fee by that merchant.
![How to Build a Heads-Up Display for Your Car | Lifehacker](http://kehu02.grofrom.com/www.minpnelectronic.com/26cdc833299913f29b6210e83aa3cc07.jpg)
Tpms Activation Tool Lifehacker supports Group Black and its mission to increase greater diversity in media voices and media ownerships.