HUD That Shows You Notifications

A streamlined HUD - also a challenge for myself

Public Chat
Similar projects worth following
A HUD that will show simple notifications that are relayed from your phone to the HUD on a display that merges with the real word.

Credit goes to

Alain Inspired me to start this project 

Mitchell helped me with his app "ESP Alerts" which lets you choose which app will send notifications to the Esp32 chip. I couldn't use my Amazon tablet, which gave me some errors but Mitchell gave me an APK and it downloaded successfully, it works as expected. The ESP32 and tablet communicate well.

Now I plan to use the Apple Notification center service or ANCS which is a standalone Bluetooth service, there is no need for an app to relay notifications to the ESP32.

  • 1 × Esp32 Dev Module (Wroom32) The "brain" of the HUD
  • 1 × TP4056 Charge Module To charge the Lipo/li-ion battery
  • 1 × 64x32 Monochrome OLED Display To show images, text, etc
  • 1 × Acrylic Glass For the reflector, if i'm going to use one, or i'll use a prism if its cheap

  • Exploring optics

    nagup06/30/2020 at 14:24 0 comments

    I am now trying to test some optics in order to find the most comfortable, most adjustable and most compact layout. I have printed a small case to hold the display and prism however I think I will need a new prism or get a smaller display in order to fit the full image. I have a rough idea on what lens I will need so I also need to buy that but for now I am going to try and make do with my current lens and prism. 

    This prism is actually two right angle prisms joined together so it forms a cube with a divide in the middle to reflect the image to the eye.

  • Modifying code

    nagup01/28/2020 at 15:28 0 comments

    I am struggling with this part of the project - modifying code that connects my ESP32 to my iOS device. I think I need to go back to basics and handle each feature of the code by breaking them down to the bare, essential parts and trying to code those into the sketch. This is by far the longest part of this project but I'm willing to learn. 

    I really need to buy a 3D printer, outsourcing it is immensely expensive. At least I'll be able to work on the code until I can buy a printer. 

  • FPC Adapter

    nagup01/23/2020 at 17:58 0 comments

    FPC to DIP adapter arrived and I went straight to testing my screen. Its not quite DIP but whatever, I got a universal one from Adafruit called "FPC Stick" It has 0.5mm pitch on one side and 1.00mm pitch on the other supporting up to 20 pins on both sides. An adapter with amazing quality though kind of expensive; I needed one quick, no regrets at all though since I'll probably need to use this again and it will last.

    I didn't solder the mechanical pads because I don't really need to and makes it easier to remove (I haven't practised using hot air on plastic connectors much and don't want to melt it when I need to remove it)

    Adafruit also sell a bigger version:

    Screen works, now I need to design optics

  • New PCB design

    nagup01/19/2020 at 13:56 0 comments

    This is a PCB design I've created that lets me integrate the new ESP32 module I bought with the other components like TFT IPS display, battery and power switch. There is a 3v to 5v boost circuit on the PCB and I have designed the PCB to let me use the ENABLE pin on the boost IC with a switch (to turn the chip on and off with the switch) or to keep the ENABLE high all the time with a solder bridge or 0 ohm resistor.

    I did this just as an experiment because I was wondering how other complex devices can be controlled by one switch like a laptop which has so many IC's that need to turn on at different times. So this was my opportunity to experiment with it, if it doesn't work I can just pull the EN pin high with resistor.

    I also have an LDO regulator there because I'm not sure if the boost circuit will even work, If it doesn't I can cut the traces and solder the battery straight to the LDO inputs and job done. Also most importantly the ESP32 needs 3.3v to operate with a suggested minimum output current of 500mA which this chip certainly does have. 

    On the far right, you can see pads for an FFC/FPC connector and another array of pads to the right of it. This is so that the PCB can let me use both kinds of my display. There is one type with an 8 pin 0.5mm pitch FFC and another which is meant to be soldered to a board with 13 pins at a pitch of 0.7mm I think (I couldn't find any connectors with this pitch either). The bank of capacitors, resistors and transistor between U1 and U5 are those components that you see on the back of every display module out there. I just looked at the datasheet for the display and drew a schematic of the display module using continuity mode on my multimeter in order to see how exactly it was all connected.

    Next up, I have a FPC connector to DIP adapter board coming, this will let me test my new displays without the blue driver board and see if they work with my ESP32. Then I can move on to altering the code I found online to start displaying messages on the screen.

  • New optics

    nagup01/18/2020 at 21:15 0 comments

    Scrapping the current optic design - having trouble with being able to keep the display close to my eye but also having the image in focus. I am trying out an optic layout very similar to Google Glass as the path that the light travels is visually smaller (so it can be close to my eye) but actually allows the light to travel probably double the distance. This means I can use a higher focal length lens therefore reducing the chromatic aberration since the image will now be in colour (I hope) and not monochrome like the old one.  

  • ANCS and ESP32

    nagup01/18/2020 at 21:01 1 comment

    I have started work on getting my esp32 module connected to the iOS ANCS service. ANCS is a bluetooth service that essentially relays any notifications that appear on the iPhone to the device connected via Bluetooth/BLE. It's quite difficult because I for one, don't really know how to do this bluetooth stuff and secondly, iOS has quite a complex connection method in order to properly bond. If done correctly I won't even need an app for this device, my mind was blown to be honest, I've been trying to find a good app builder since I started this project. 

    There are codes ready to use online, however I lack proper knowledge on how to use these examples so I need to learn all this first.

    This project has progressed so much and will continue to do so. I am willing to help anyone with a similar project so leave a comment or message :)

  • V2 - because why not

    nagup11/30/2019 at 13:05 0 comments

    This is a new version of the housing since I found a smaller version of the esp32 called the micro32. This version will be hugely slimmer than the last and hopefully better in every way. Can anyone suggest android app development programs? specifically one that can send notifications from the phone to the esp32. 

  • New OLED display holder

    nagup02/01/2019 at 14:05 0 comments

    This is the new screen holder that will hold the lens at the correct distance away from the display. The thickness of the green space between the two components is subject to change but if it gets too thick it will add weight and look odd since my goal is to make it look slim compared to other projects like this 

  • Current version - almost finished

    nagup01/29/2019 at 17:38 0 comments

    Heres an update on how the project is going so far, really close to finishing. Just need to find a lens that will let me mount it as close as possible to the oled display but still keep the image in focus, then I need to make a mount that will hold the screen, lens and reflector as one piece. Bluetack and acrylic were used to allow the current lens to focus into my eye for testing.

  • Installing components onto the body

    nagup08/30/2018 at 11:22 0 comments

    Done with installing the main components, the walls of the 3D print were too thick so I used a rotary tool to carve some space out for the custom PCB that holds the ESP32, Boot button and space for headers to connect the serial converter. next is to play around with the optics and get the software running.

View all 12 project logs

Enjoy this project?



ConfusedEngineer wrote 01/23/2024 at 15:39 point

Hello, is this still a project you are working on? I have written a program using an HUZZAH32 that has basic things such as temp, humidity, time, pitch yaw and roll, and a basic interface. I am wanting to ass the connection of iOS notifications to it and am struggling with that portion of the program. Furthermore, I have a fair understanding of optics/lenses and mirrors and would be happy to help with that portion if it is something you are still working on.

  Are you sure? yes | no

Mike Szczys wrote 01/29/2019 at 22:09 point

Looking great so far! The issues of adustability for focus is a difficult one. The blue tack and tape method actually lets this look pretty small and sleek. Do you think adding adjustability will make it more bulky or do you have a clever solution already in mind?

  Are you sure? yes | no

nagup wrote 02/01/2019 at 14:00 point


Once I find a lens that will work, Ill make a part that holds the screen and the lens at the right distance, that's all that has to stay constant and then I'll leave that part on a hinge which is joined to the main body. This will let me adjust where the reflector sits so it doesn't get too close to my eye or anyone else's. It's not a huge concern though because I'm making this to fit me but it's nice to have adjustability.

The part will hold the screen, lens and reflector. The reflector will also swivel but Ill probably only need to adjust it once so hopefully I can design something that looks as sleek as the blue tack but doesn't interfere with peripheral vision. I might even need to put the reflector at a certain distance away from the lens to minimise strain on the eye when trying to focus on it so I might also need to combine the 3D printed part with clear acrylic that has been bent to achieve this.  

  Are you sure? yes | no

Virgilius1995 wrote 01/29/2019 at 18:38 point

I'm also wondering what your output would be like in daylight since your photos seem to be in a dimly lit room.

  Are you sure? yes | no

nagup wrote 01/29/2019 at 19:37 point

Because the mirror film is slightly tinted, you can see the text just fine in a room that is lit up very bright with LED lights in each corner. I had to make the pictures a little dark so that all the components could be seen better, I made it even darker in the picture showing the time (5:27pm) because the camera was catching glare from the bright OLED display and you couldnt see the numbers on the screen

  Are you sure? yes | no

Virgilius1995 wrote 01/29/2019 at 19:42 point

Thanks Ill remember to look at some mirror film

  Are you sure? yes | no

Virgilius1995 wrote 01/29/2019 at 17:42 point

Hey its virgilius from project/163612-smart-glasses-notifications-and-heart-rate. Just wanted to thank you for offering support. As well as that i'd like to mention while I'm new to arduino I have some experience with raspberry pi's so feel free to ask!

Other than that I wanted to ask what you've figured our regarding the optics so far. I'm very interested in the image quality on your perspex sheet as from what I've seen prisms seem to provide a much sharper image but it would save me a lot of time and money(also space since the design could be much smaller) if it is sufficient.

  Are you sure? yes | no

nagup wrote 01/29/2019 at 18:01 point

The image is just how it looks in the most recent project log but without the glare, and you dont notice the dark mirror film. I cut clear acrylic into that shape and put some "one way mirror film" on the side facing me, i did this because the image can reflect off the surface of the acrylic as well as the surface on the inside of the acrylic so the image you see looks blurry or as if there are two images on top of each other but slightly offset. 

Overall, the image is perfectly fine since it is positioned in a good place in front of the lens. In my setup, you also see a faint blurry outline of the lens (because it reflects from the mirror) but that will disappear when I find another lens, the current lens i'm using also doesn't cover the whole screen but the text never reaches the corners completely so it's fine for now. you also see the individual pixels because the lens magnifies the text but it's not a problem at all for me. I also need to re position the optics because when I focus on the screen for a minute, it starts to hurt so a little lower down should help. I highly suggest making small prototypes with just the screen running a demo program that displays images. put a lens in front of the screen and hold it in one hand, in the other hand hold the mirror and keep moving them closer to each other until they are in focus, then try to get a measurement of the distance (I measured it using my fingers then I used bluetack to allow for adjustment) 

  Are you sure? yes | no

Virgilius1995 wrote 01/29/2019 at 18:35 point

Thanks I think Ill have a look at a spin off design on my most recent log using a perspex sheet instead and when I've inevitably got everything together try both.. since perspex is cheap its worth the investment. I am very interested in seeing what lens you settle on and will probably wait to see before having one cut for me since the one I listed in my components was the one used by Alain and since my screen is much closer to the output the same lens probably wont give an ideal output.

  Are you sure? yes | no

nagup wrote 01/29/2019 at 19:03 point

I'm using a lens with a 45mm focal length which I bought from Banggood. I know pretty much nothing about optics, but I probably need a lens with 3mm focal lengh because I need it close to the screen. Getting a custom lens is not an option because it would be too expensive. Its hard to find a lens with that FL which is also made of plastic, I wouldnt be able to use a glass lens since all of them come in circular form.

A Fresnel lens can be used too however the only ones I've found so far have focal lengths of 100mm since they are used for magnifying text on newspapers etc.

I'll keep looking for a lens and let you know on your projects comment section if I find what i'm looking for 

  Are you sure? yes | no

Virgilius1995 wrote 01/29/2019 at 19:44 point

Thanks I'd appreciate that. I'm lucky since I've got a friend studying optometry who say'd he could help with custom lenses... I only have to figure out what would be ideal before I make him go through effort.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates