Overview
- 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 is floating in space right where the road is. Most third-party HUDs are not collimated.
- 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."
Overview of the setup |
Shopping List
- Arduino Uno - $20
- OBD-II cable - $50 - This one comes with an Arduino library, so it's easy to program with
- 7-Segment Display - $13
- 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 (these are rated for 3lbs)
- Total Cost: $113.30
Supplies Needed
- Soldering Equipment
- Hookup Wire
- Lots of Cardboard
- Duct Tape
- Pliers
Prerequisites
- Some Soldering Experience
- Some Arduino Experience Suggested
Building
Step 1: Solder the Circuit
Connection labels on the protoshield |
- OBD:
- Yellow wire to D0
- Blue wire to D1
- Red wire to 5V
- Black wire to GND (through the power switch if you have one)
- Display:
- VCC to 5V
- GND to GND
- RX to D6
Step 2: Upload the Code
Go here and download the code, then open it with the Arduino program, connect your Arduino to your computer, and upload the code.
Step 3: Build the Arduino Holder
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 my holder into an existing compartment below the steering wheel |
Duct tape and cardboard are extremely cheap materials to use, and they hold up pretty well. 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.
The fully-soldered protoshield mounted on top of the Arduino |
Step 4: Mount the Combiner Glass
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.
Step 5: Mount the Lens
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.
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.
When in doubt, more duct tape |
Congrats!
You now have a working heads-up display. Go for a test drive to see how well it works, and email me at abnormalbill@gmail.com with questions or comments.
Great info! Could I use an LCD backlight device in place of your Audrino board and have it focused at infinity?
ReplyDeleteI did try using a little cheap LCD 16x2 character display, but it was difficult to get it to reflect well off the combiner. You can certainly try it, but I've had better luck with LED displays.
DeleteHi Bill...
DeleteOne question...the combiner glass...is it safe for automobile?...for example..what happens in case of an accident...I wouldn't like the glass to act as a sharp projectile....
Are there options for more automobile friendly glasses?..plastic combiners..
Any comments...
In terms of safety, the suction cups are very secure but the wire hooks are not as secure. The glass rattles a tiny bit when driving around sharp corners and such, which could turn into a long-term safety hazard.
DeleteAdmittedly, I didn't really think about safety when I constructed the glass mount, and my suction cup hook design could definitely be improved. I will say I am working on a HUD version 2.0 with a different design, so I will give some thought into long-term safety when designing the new combiner mount.
I'll do some research into making the combiner glass more safe if it breaks, although I suspect that will increase the price significantly. As for plastic combiners, if they exist I don't think they would have the optical quality needed for this project.
Thanks for your feedback!
-Bill
OH NY GOONESS
ReplyDeleteHow did you power the arduino itself? From the car?
ReplyDeleteYeah, the OBD cable I used (http://www.arduinodev.com/hardware/obd-kit/) came with a VCC/GND cable so I draw power directly from the car. It works even when the car is off, which is why I had to get a power switch.
DeleteI don't know where you pulled your power from (where ever you did hopefully you used a fuse) but find your self one a fuse tap http://4x4icon.com/crossfire/pioneer_tuner/buss_fuse_tap.jpg
Deleteand use a multimeter to find a a fuse in your fuse panel that comes on and off with your key, (usually one labled radio will work) stay away from airbag fuses!
it is not a big problem to power the arduino controller as it accepts 5V and a lot of battery banks mostly out 5V. Yes, some sensors and controllers use 3.3V which presents problem but that can also be handled.
DeleteInspired I ordered a bluetooth obd device to connect to android torque app. I was wondering if a cheap real HUD setup could be developed connected with an android device. That ways we could project navigation on the screen too.
ReplyDeleteIf you already have an OBD cable and display (your android phone), then that's the bulk on the money right there. Just buy the Glass combiner and a lens and you'll have a true HUD
DeleteHi! From where is the setup reading the mph?
ReplyDeleteThe speed data is coming from the OBD-II cable.
DeleteBill,
ReplyDeleteDo you think a Pico projector could be made to work. I was thinking of burying the projector in the dash pointing up at the windshield and using the glass as the "screen" to redirect image at the viewer. ?
Matt Bode
Hey Matt, early on in this project I looked at Pico projectors, but rejected them because of the cost. I am not sure how a projector would look on the glass combiner I used, especially when it's angled at a 45 degree angle, but you can certainly try it out. I am interested if you find more information on this!
Delete-Bill
Your project has been included in the article: “20 Arduino projects of 2013″ – http://www.nudatech.com/blog/20-arduino-projects-of-2013/
ReplyDeleteWould it be possible to use a cell phone as a projector instead of the 7 segment display (say for a GPS app) or do the complex LCD screen colors affect collimation?
ReplyDeleteIt's certainly possible, but you would have to make sure that the cell phone screen is mirrored (some apps can probably do that), and your lens would have to be A LOT bigger. I have not delved into using my smartphone because I already have trouble setting up the lens for a small 7-segment display.
Delete-Bill
wow... really cool invention. is it really not hard to solder those wires? can I use any kind of display?
ReplyDeleteThis was my first soldering project. It wasn't terribly hard, but it took a little while to get used to. As you can see, my soldering job doesn't look pretty, but it still works.
DeleteYou can try any display you want, but keep it very small if you want the optics to work.
Finally someones idea I can follow to get an HUD focused to inifinity!
ReplyDeletecool..
ReplyDeletewow... really cool invention! What is the relation of lens focal lenght to its distance from display. Can I use my cellphone as projector with proper focussed lens with minimal distance?
ReplyDeleteThe distance from the display has to be equal to the lens's focal length in order for it to be focused at infinity. You can use your cellphone, but it's hard to find lenses with a small enough focal length and minimal aberration without spending a fortune
DeleteIs any way to speed up refresh rate?
ReplyDeleteDid you face ghost image issue? If no combiner is used the image falls on windshield and it produces ghost image (2 images, coz the light is reflected from inner and outer surface of the windshield). Can it be corrected by a 50% window tint film?
ReplyDeleteAnd does combiner totally eliminate ghost image problem?
Very interested to know this as well. I am facing ghosting issues with the teleprompter glass.
DeleteThis thread is pretty old, but an important issue. If display is placed at focal point of the lens to collimated, then what happens when sunlight falls on the fresnel, won't that fry the display?
DeleteHmm, never had problems with sunlight frying the display, and I had it in my car for a couple months. Maybe if you live in a warm climate with lots of sunshine this could be an issue?
DeleteHi, thanks for the reply. I have bought a Chinese HUD and wud love to experiment with collimating the reflection so the need for a low focal length fresnel. But only issue is with strong sunlight a daily feature here in Mumbai, India sooner or later the hud will fry.
ReplyDeleteAny advice hooking one of these up without an OBD2 port?
ReplyDeleteReally awesome tutorial thanks! While I probably won't use this in the car due to form factor it is nevertheless an excellent science experiment at the very least. I have learnt a lot! By the way, is it possible to get a fresnel lens with a much shorter focal distance?
ReplyDeleteEverything in this world has its pros and cons and that truely depends on our usage behaviour. Different gadgets and devices are made for a true happy weekend or spare time and should not be used so much that those devices ruin our social life. One should try to give pririoty to one's parents, friends and marital life rather than wasting time by excessilvely using these games or other devices.
ReplyDeleteI’ve read some good stuff here. Definitely worth bookmarking for revisiting. I surprise how much effort you put to create such a great informative website. Website
ReplyDeleteOBD lib error. Can You please upload lib.....
ReplyDeletePeople actually have reservations when they are out there in the gym and trying to perform to keep themselves fit.
ReplyDeletegymshark student discount
http://www.alexbergs.com/gymshark-coupon/
I have recently started a blog, the info you provide on this site has helped me greatly. Thanks for all of your time & work. Newmarket Limo
ReplyDeletePalmdale Air Conditioning & Heating is the best Air Conditioning in Palmdale!
ReplyDeleteTile Installation Mesa is the best Tile Installation in Arizona!
ReplyDeleteWow! Cool post!
ReplyDeletePalm Beach Aquarium Services
Try the best Aquarium service in Palm Beach!
What a great article!
ReplyDeleteAC Repair Port St. Lucie is the coolest AC Repair in Port St. Lucie!
Nice post!
ReplyDeleteVideo Production Fort Lauderdale FL is the best
Videography in Fort Lauderdale!
Great content!
ReplyDeleteDrone Videography Palm Beach try this cool Photography and Videography in West Palm Beach!
PRO TREE SERVICE SACRAMENTO is the best Tree Service in El Dorado Hills!
ReplyDeleteWell, its so good!
ReplyDeleteCustom Watershapes Inc. is the best pool Construction in Plantation!
That was amazing!
ReplyDeletePro Kitchen Remodeling WPB is the best Kitchen Remodeling in West Palm Beach!
Wow! Amazing post!
ReplyDeleteVacation Rentals Singer Island is the best Vacation Rentals in Palm Beach
ADCAFFEINE MARKETING is the best Digital Marketing in South Florida!
ReplyDeleteThis is so useful!
ReplyDeleteADCAFFEINE DIGITAL is the best Digital in New York!
Try this MACDOWELL ROOFING JUPITER to experience a cool Roofing in Jupiter!
ReplyDeleteMACDOWELL ROOFING PALM BEACH GARDENS is the best Roofing Contractor in Palm Beach Gardens!
ReplyDeleteTry this best Roofing in West Palm Beach! E.W. MACDOWELL
ReplyDeleteROOFING COMPANY
BOYNTON BEACH
ReplyDeleteROOFING DOCS is the best Roofing Contractor in Boynton Beach!
PRO ROOFING EL DORADO HILLS is the best Roofing in El Dorado Hills!
ReplyDeleteCOMMERCIAL ONE ROOFING is the best Roofing in Temecula!
ReplyDeleteNana's Holiday Light Installation is the best Light Installation in West Palm Beach!
ReplyDeletePromo Stuff 4 You is the best Branded Promotional Items in Lake Worth!
ReplyDeleteMacDowell Roofing Boca is the best Roofing in Boca Raton!
ReplyDeleteNana's Holiday
ReplyDelete Light Installation is the best Light Installation in Royal Palm Beach!
This was a very interesting article and concept. We may give it a go just for fun. Raccoon removal West Palm Beach
ReplyDeleteBoynton Beach Roofing Docs
ReplyDeleteBoynton Beach Roofing Docs
ReplyDelete#1 Healthcare & Medical Marketing in Melbourne
ReplyDelete#1 Refrigerated Transport Service in Sydney
ReplyDeletePLUMBING SERVICES IN WYNYARD
ReplyDeleteCustom Home Building in Melbourne
ReplyDeleteRemovalists in Wollongong
ReplyDeleteWe specialise in providing quality Western Apparel.
ReplyDeleteWelcome to Everything Outdoors Australia, your one stop shop for buying and selling everything outdoors.
ReplyDeleteWe provide you with a place to list your items and find exactly what you are looking for.
We have a full range of performance packages available for all LS engine either fitted and tuned by us or supply only,
ReplyDeletegreat blog Real Estate services Greensburg
ReplyDeletecar driver training glen innes
ReplyDeleteThe Best wellington roof repairs
ReplyDelete