Invisible QR Code Navigation for Robots 2020

Cheap UV invisible QR codes for indoor navigation of robotics. Print labels from Inkjet Printer and read with a normal camera.

Public Chat
Similar projects worth following
CEO of EZ-Robot DJ Sures
“Wow that’s brilliant. Seriously absolutely brilliant!”

Quotes from Hackaday articles;

"[Josh’s] system simultaneously solves the problem of not wanting ugly QR codes cluttering the wall and making computer vision easier. It’s brilliant, and we’re amazed by this spectacular project that made it"

“They’re QR codes read by an infrared camera, and painted on the walls and ceilings with a special IR sensitive paint that’s invisible to the human eye. It’s navigation for robotic vision, and it’s a fantastic idea."

"So far, the proof of concept works. A computer can easily read QR codes, and if paint is invisible to the human eye but visible to an IR camera, the entire project is merely a matter of implementation. Using IR and QR codes is just so simple and hacker-friendly, and we think it’s fantastic."

UPDATE: We were featured in a hackaday article when we were using IR and anti stokes shift pigments

However now it should be know I have moved to UV since then as it is cheaper and more effective for general use.

UPDATE: I was invited by Stephen from Hackaday to speak about my QR code project in New York at the Maker fair. Due to Time restrictions we couldn't fit everyone in. Sad Times, but hey maybe 2020 could be better.


2020- moved to Noodlers Blue Ghost ink and loaded into empty cartridges, this works great and it is bright and the ink is water proof so it does not smear.

Modded a ROVIO 2.0 and moved to UV only for research purposes.

Building custom in cartridges that will print in Epson Injet - Success!

Selecting and formulating Ir and UV ink mix that works in injet printer - Success!

Buiding a custom illuminator with optimized wavelength to work indoors in normal light- Success!

Reading codes on cieling with less than 3 watts power - Success!

Reading codes on cieling with less than 1 watt power- Success!

Reading codes aprox 1 inch away and 3/4 in size on the floor- Success!

Printing invisible codes on clear re-stick-able labels-Success!

Reading codes while moving with less than 10 fps- Success!

Why? Goals?

As software and technology improves the cost for individual hackers to have access to these tools is not getting any cheaper. For example Individual use for RoboRealm a popular vision and navigation application has raised from $50 per license to a staggering $500 a license.  Using technologies like EZ-Builder and this invisible QR code system a individual user can train a robot to recognize individual objects, pathways, rooms, grid markers and other physical beacons. Keeping is cheap , open and accessible is the key to progress in the DIY builder / hacker community. This project required being able to make custom invisible tags. So in turn I made a large enough setup to print codes and glyphs in the invisible ink and send them to any builder or hacker who wants them for a minimal cost. this has been achieved. The next goal is to make an IR & UV illuminator/ camera board that leverages a small sbc package like raspberry pi zero for example to capture video and route it to be processed to the host computer. At this time these things can be assembled separate, as I have done, but I would like to make a tiny self contained unit for this purpose.

General project description, 

This project started as an easy way to enable physical beacon point navigation into small robotics. After the initial invention I learned that most personal roboticist, toy companies and businesses may prefer not the have their office or home covered in black and white QR codes. So I set out on the voyage to make an invisible method of printing QR codes onto stickers either white or clear. These codes are invisible to the eye on what they are printed but glow brightly a purplish blue when hit with the correct wavelength of light. This is a Anti-stokes shift reaction. Where a material absorbs one wavelength that is not as far into the visible spectrum and emits electrons ( light) at a visible wavelength and favors the blue/ violet section of spectrum that cameras are much more sensitive too. Also printing the background of a QR code with the opposite Anti Stokes shift ink causes the background to show as a darker grey. So even in the absence of UV illumination the IR in the room causes the grey shift in light so the QR code can be read. IN the event it is totally dark either UV or IR will need to be used to illuminate the tag however. I am very exited the first installation of this project went perfect, and now producing the QR codes in multiple ink types with a printer modified to do so is very exciting.  I plan on making a mini service avail for anyone wanting to use this type of navigation...

Read more »

Poster Session Progress.jpg

Poster for Hackaday Superconference.

JPEG Image - 1.46 MB - 10/23/2018 at 20:55


View all 26 components

  • Hmm MIT article

    Josh Starnes01/31/2022 at 03:28 0 comments

    looks like some one started working on using invisible IR inks to make a invisible machine readable QR code

  • Move to UV ink

    Josh Starnes07/12/2020 at 11:36 0 comments

    using IR is great but there is an expensive cost, however we found that UV ink can accomplish the same goal indoors without the expense, outdoors however the IR ink is better because of the high amount of light that would interfere with UV. That being said I will keep IR for outdoor only.

  • Rovio 2020 Upgrades for UV tracking

    Josh Starnes06/30/2020 at 06:48 0 comments

    Updated Fun stuff. I have moved to Noodlers Ghost ink only as it works really well for general purposes and 1.4 the cost of the IR, the IR is still an option though much more expensive if we needed it for the application.

    Here is Rovio 2.0 back together after 2018s tear down. This has certainly been a long term project.

    There are two cameras here, one ceiling facing and  another forward. I do think I will add one pointing down with a focal point at about 2 inches away. The "jewel" on top is a focusing UV led illumination, and there is no forward UV illumination YET, but it is coming, I will 3D print the add on and paint it for match.

  • Testing filters

    Josh Starnes09/04/2019 at 13:36 0 comments

    Refining the sensors. I feel that a sensor dedicated to reading codes in any lighting is more useful than one that can also do full color video. Video and Sensor data should likely be separate for best performance and video processing. I am going to get some speacialized filters to test out how this works with cameras with no IR filter and a bandpass UV / IR filter.

  • Indoor DAYLIGHT testing QR code

    Josh Starnes10/25/2018 at 14:53 0 comments

    Today I am home mid day when it is very bright in my home. The great room has 17 windows and floods with natural light. I used the 3 watt led and the focal lense to create a consistent dot on the ceiling. SUCCESS , the QR code illuminated with great intensity and is easily read by the cam. Agian the naked eye intensity is a soft purple glow , but through the reading cam it looks perfect. So this is perfect for indoor office setups as well. Even in the event there are a great deal of fluorescent lights, a filter could easily cut their light, but in this case we are golden! Yay Version 2 QR sensor setup. I made a short video as well in the excitement.

  • Version 2 testing QR on ceiling

    Josh Starnes10/25/2018 at 02:25 0 comments

    Here is the QR code printed on paper in normal lighting of my home,  the ink is completely invisible until it is hit with the UV and IR lighting.

    This is a normally lit room but the violet shows so bright through the camera that the brightness auto adjust darkens the surrounding area. The QR is certainly readable with this newer light source.

  • Version 2 led illuminator testing

    Josh Starnes10/25/2018 at 01:51 0 comments

    Wow , so this single led much outperforms the 5mm led versions. I brought it up to the advertised 3 watts , using the recommended current and voltage only brought the led up to 1 watt. In either case the results are interesting because this light is NOT very bright, a dim violet color to the naked eye , but through the camera eye it might as well be the blazing sun, this is great because I need to make sure the version 2 reader works will in all lighting conditions and can be adjusted on the fly by reading a simple light sensor. Version 1 was a static 3.2 volts at a set brightness level. The lens on top of the illuminator focuses the light into a usable dot on the ceiling 6 -10 ft away.

  • Update for judges

    Josh Starnes10/23/2018 at 14:12 0 comments

    Hello judges, this project has been ongoing for a while and continues to grow as more concepts are added. At first this project had a goal of finding a way to make physical markers for navigation and the QR code reading on the ceiling was born.  This started in 2012 when I built the first hacked roomba platform with modded camera to test out the concept. Then from there I had push back that no one really wants QR codes all over their house or apartment ect. This makes perfect sense as we all have to deal with other humans that may not like the digital decor. So this set me on the completely secondary task of making invisible QR codes that can be read with any camera without an IR filter AND be used in both the home and office environment without being visually invasive.  The project was a success! I did just that. A combination of one upshift ink and one downshift ink printed on the same label, you create a QR code that is invisible in normal light , but easily read by the camera when exited by 780-850nm IR  and/or 365-405nm Violet UV light. As you can see this is a fantastically bright QR code, but it also works in a bright room because of the second pigment that shows as a grey color which is printed as the background. To do this I tested 14 different ink types and eventually decided on Noodlers ghost ink and IR upshift ink. I modded existing ink cartridges and filled them with the modified inks and they now print perfect through the Epson printer with piezo style print head.  The only shame is that there was a great deal of work put into this project to make a whole solution simple for everyone else to use, I hope the effort is appreciated by the community. Further I realize not everyone will want to go this far to make invisible QR tags ( they can be printed on clear stickers). So I am also going to offer printing them for my fellow hackers to make this project even easier for everyone else to reach.

    My previously hacked roomba kicked the bucket so I started hacking a wowwee rovio , but due to the hurricane damage and flooding , I was required to put in a lot more work at the fiber optics company here and didnt have time to make a particularly interesting video with the new platform. However I posted the first video showing the use of the QR codes on the ceiling until that one is made and posted. I will still do one, but all the documentation, trials and error ect easily prove the process and out to make it work. :)

    Fresh printed QR code invisible to the eye other than the paper is still wet.

    After illumination with an led..

  • Pics on a clean table

    Josh Starnes10/19/2018 at 16:50 0 comments

  • Rovio 2.0 three sensors mounted

    Josh Starnes10/12/2018 at 02:29 0 comments

    Three sets of holes made for ultrasonic SR-04 distance sensors and a quick coat of Matt black so the spacer sorta matches the body.

View all 42 project logs

  • 1
  • 2
    setup blank ink cartidges and chipsets to hack printer
  • 3
    Fill cartridges with inks

View all 27 instructions

Enjoy this project?



Paul Crouch wrote 10/05/2018 at 17:12 point

Hi Josh, I happened to be looking at the LattePanda x86 earlier today. Aside from the grunt, I believe it has USB3.0 and 2 UARTs, which I could certainly use (I want to run ROS on Ubuntu). Have you used it yet? Would you recommend?

  Are you sure? yes | no

Josh Starnes wrote 10/05/2018 at 18:04 point

Yeah So far I recommend it, its the best for the money and size. It also have IO ports for arduino too built in which could be used. The version I have is 2gb, the only thing I would recommend is that Windows really like 4 gb ram which is the next step up, but I have not heard anything bad about it either.

  Are you sure? yes | no

Paul Crouch wrote 10/05/2018 at 20:45 point

Yeah, I wondered if I'd need the bigger 4GB version for Ubuntu, I presume it won't need as much resources as Win10. 

I love what you're doing with the UV QR codes, BTW. Once you've perfected it, you should sell kits and print codes as a service for people like me; too lazy and just want the end result :-)

  Are you sure? yes | no

Josh Starnes wrote 10/05/2018 at 15:01 point

@Arik , I got the printer setup! no more drawing the codes by hand with a marker, they print beautifully ! Next I am experimenting with stimulating the ink with laser instead of LEDS to save power.

  Are you sure? yes | no

Josh Starnes wrote 07/08/2018 at 03:42 point

@erick , yes Noodlers is the cheapest I found at 15 dollars for a large bottle probably 100ml 

I filled the Epson 702XL ink cartridges tonight! I also did a few drop tests on paper and wall paint ( almond colored) to compare.  The yellow is brighter than Noodlers for sure , but costs more.

  Are you sure? yes | no

Josh Starnes wrote 07/08/2018 at 01:22 point

right now the cost of my IR ink is 50 dollars for 1/4 ounce bottle. They are proud of this stuff. I’m looking at purchasing ingredients that are in IR ink and making my own. Ir ink basically looks like a gray marker through the camera.

  Are you sure? yes | no

Josh Starnes wrote 06/30/2018 at 12:36 point

Hello Arik , Yes that was the original intent is to place QR codes, Glyphs or April codes onto the ceiling and a upwards facing camera would pick them up. Right now I am working on making my own INK that can be printed in an Inkjet printer that is multi spectrum reactive but still completely invisible! I am looking into using both IR absorbing , IR shift and UV reactive so it can be viewed in nearly any lighting situation on any surface.

  Are you sure? yes | no

Arik wrote 06/29/2018 at 15:24 point

Hi Josh, nice project. I am interested in using IR ink in similar projects. Have you considered that? Any tips or ideas on how to print/make IR ink QR codes? Imagine having those on the walls or ceiling, completely not visible to the human eye.

  Are you sure? yes | no

Josh Starnes wrote 07/07/2018 at 12:15 point

Hey Arik, a personal update for you. I believe I am working out the bugs on that one. I purchased a HP printer that uses individual color cartridges,  HP 702 , then I ordered completely empty refillable cartridges from a website that supports refilling instead of paying for overpriced ink. I will be filling these with some UV ink solutions and see if we can print directly to a sticker or translucent film that can be placed on the ceiling , walls or even floors. I will update the project soon as I have everything put together to get it working. :)

  Are you sure? yes | no

Arik wrote 07/07/2018 at 20:08 point

Sounds awesome. If Inkjet printing won't work, I can suggest silk screen or stencil. Especially if you need just a few symbols rather than the flexibility of a QR code. Or perhaps a stencil with tens of different preset QR/bar codes

Few questions: How did you put the ink in a marker pen? Any idea if there is an inexpensive IR ink available? I am looking for something that will be excited and output in the invisible wavelengths. Preferably IR rather than UV.

  Are you sure? yes | no

Does this project spark your interest?

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