Introduction: Arduino Glass - Open Source Augmented Reality Headset

Picture of Arduino Glass - Open Source Augmented Reality Headset

Have you ever considered getting an augmented reality headset? Were you also wowed at the possibility of augmented reality and looked at the price tag with a broken heart?

Yes, me too!

But that didn't stop me there. I built up my courage and instead, decided to build my own AR headset.

I really felt that augmented reality market is niche and it needs an open market. Makers and developers are the market enablers.

But the problem is that their developer kits are expensive and costs greater than $1000. So a normal maker or developer cannot afford it. So I am building this open source platform for augmented reality on both software and hardware so makers and developers can innovate together on it.

Step 1: Continuation..

Picture of Continuation..

The cost of building this development kit won't cost you more than $20 for a bare minimum design. Now that is where I realised that I need to understand the basic science on how augmented reality headset works.

I watched a few hands-on demos of few headsets on YouTube and I understood the simple logic behind the display.

One of the uses of this device is to avoid accidents. Most accidents happen in the city due to the distraction caused by phone calls while riding. This could be developed as a device that helps in delivering message notifications and navigates users through the helmet, causing lesser distractions thereby making it a safe ride. Fitted with a GPS and accelerometer, both connected to the cloud, the geographical data collected helps in providing better terrain details for that the rider’s geographical location.

Step 2: Tools Needed:

Parts needed:

1. Pref board

2. Arduino Nano

3. HC 05

4. SSD1306 OLED Display

5. Buzzer

6. Vibrator motor

7. Transparent plastic sheets

8. Berg pins female

9. Wires

10. Solder station

11. Scissors

12. Battery bank



How does HuD works?

So how does the HuD work? High school physics tells you that light reflects on a mirror, refracts on a semitransparent mirror, and passes through a transparent glass. We will be using exactly that principle here.


Cut the thick polythene sheet into 5 equal square shaped pieces.

Arrange four pieces as a cube with OLED and glue it together.

Fix the light refractor by placing the sixth piece diagonally inside the cube.

Glue it such that one surface is facing the OLED display and the other is facing the side of your eye.

Finally fix the last piece and seal it.

Tadda!! That is your HuD display. So simple!

Step 4: OLED Display

Picture of OLED Display

I used a Chinese OLED display that works on the SPI bus. It took me almost a day to figure out the data sheet. I found out that the u8lib library is needed to make it work.

Now connect the SPI OLED Display to the SPI pin of the Arduino Nano.

Connect this OLED display with a long wire to fit near your eye for easy view.

Now download the library file and extract it into your Arduino library folder.

Now uncomment the particular OLED driver in the program to enable your OLED Display

Test with different modes in Library Example folder.

Step 5: ​OLED and AR Display

Picture of ​OLED and AR Display

Test the OLED with the AR glass by using the sample code and adjust the display for better viewing experience.

The major problem with this AR display is that we are using a mirror to refract the rays so the image to be displayed, has to be inverted. This requires you to build a library with the inverted alphabet and bitmaps to display it properly.

There are many websites, which converts bitmap into HEX code that can be used directory into the OLED library files.

You can use a small concave lens for better Focal length

Step 6: Hardware Interfacing With Ard-G

Picture of Hardware Interfacing With Ard-G

Now refer to the schematics here and solder it in a pref board.

It will be a bit tricky to solder if you are a NOOB in soldering.

I would recommend that you use as many wires as possible to avoid any mistake while soldering.

Now cut the pref board into two pieces and make it look like an AR glass.

Place some foam between the OLED and the pref board to ensure stability. You can also glue it together.

Here I have made a bare bone shield for the Arduino Nano where any sensor or device can be interfaced.

I have connected accelerometer, light sensor and sound sensor for sensor acquisition and can be used for user's application.

Step 7: Schematic:

Picture of Schematic:

Step 8: ​Arduino Code

Click on the attachment to download the code.

For each function I am sending a number followed by “.” which acts as end of one data and reads the next data. It can configure in the ATC Lite Android App.

Check the In-line comment for better Understanding of the code.

As for the Android app part, let me be honest. I am not an Android app developer so I haven't implemented the navigation control to it. I just downloaded the ATC lite app and created a custom layout like forward, backward, message and call notification to it. This sends numbers via Bluetooth to the headset. to download the app and test it.

Step 9: Final Test

Picture of Final Test

Please do give me suggestions and your feedback after trying it out.

I would love to hear from you. Feel free to comment below! Let’s talk!


AaronB277 (author)2018-01-14

A way you could make it less bulky is by getting an Arduino Trinket and some of the micro charger boards, and 3d printing a low profile case that clips to your glasses.

For the display, you could use a longer OLED to reduce the angles etc. of all the prisms or whatever which would make it much thinner and less bulky.

Ameer89AR (author)2017-05-02

great job

can I buy a one from you?

abhi0911 (author)2017-04-04

I have purchased SH1107 OLED for this project. I cannot find this OLED in the u8g library. How to add this OLED or program for this OLED.

Moreover how to verify if the OLED is working without arduino

FutureXOFFICIAL (author)2017-03-27

will bluetooth be avalible for IOS?

FabianoC8 (author)2017-02-03

Man, you're awesome! Hats off to you!

bkuhn01 (author)2016-11-24

Any interest in beginning a partnership in development of a new platform? email me

TOYH (author)2016-09-17

hey would you be able to project your phone screen on this through a usb to hdmi converter?

arunmag (author)TOYH2016-09-26

No. Idea is to reduce the immersiveness. It will just display the notification

nthet (author)2016-09-15

Nice bro

kparag575 (author)2016-05-22

Hi arun, can i buy this one unit from u?? I loved it.. Please rpl me i m from Maharashtra.

alexfmadrigal (author)2016-04-14

it's amazing and cheaper

BharathRam (author)2016-04-13

Nice work..... HuD impressed me....

TheThinker (author)2016-04-12

Excellent idea! Thanks for sharing your work.

arpimatic_lab (author)2016-04-12

Great work!

About This Instructable



More by arunmag:Intel Glass_Augmented reality headset - 1EEG Neuro-Mood LightArduino Glass - Open Source Augmented Reality Headset
Add instructable to: