Introduction: Prototype Night Vision Goggles for Airsoft/Paintball
A Short Note on Night Vision
True night vision goggles (gen 1, gen2 and gen 3) typically work by amplifying ambient light, however, the night vision goggles we will build here work with a different principle. We will be using the Pi NoIR camera which can see in the dark with the help of near-infrared LEDs. The light from these LEDs is invisible to the naked eye but can be seen by a Pi NoIR camera. Even though you will be able to see in the dark with this, it may not give you a tactical advantage against people with similar technology or true night vision because they will be able to see the light from your LEDs. Also, the LEDs emit a red glow so you will be walking around with a red dot on your head, just something to bear in mind.
- Raspberry pi 3B +
- Pi NoIR camera
- 2 x 3.5mm AV/AUX male jacks
- Power bank (or another suitable battery pack)
- 2 x USB micro to USB cables
- FPV goggles with av input (Eachine EV 100 in my case)
- Velcro strips
- Tactical helmet
Step 1: Activating AV Output on the Raspberry Pi
The first thing we will do will be activating the AV output
on the raspberry pi and connecting it to the FPV goggles. This will effectively make the goggles a monitor. You can test this out with a TV that accepts AV input.
To activate the AV output on the raspberry pi, boot the pi while the HDMI cable is connected, and press shift repeatedly to enter the recovery mode. Now click on edit config and comment out the line that with hdmi_force_hotplug make sure the value is set to 1.
Finally, uncomment sdtv_mode and set it to one of the following values
0: Normal NTSC
1: Japanese version of NTSC – no pedestal
2: Normal PAL
3: Brazilian version of PAL – 525/60 rather than 625/50, different subcarrier
Click on ok to save your changes and press ok to allow the pi to resume booting.
Step 2: Preparing the AV Cable
At this point, we need to prepare the AV cable that will connect the raspberry pi’s AV output to the FPV goggle’s AV input. As far as I can tell there is no standard wiring for 3.5 mm AV jacks so be sure to check the manual of your FPV goggles and wire your jack accordingly. The instructions in this post will show you how to wire the jack for the Eachine EV 100 FPV goggles.
The pinout for the Eachine EV 100 AV input/output as shown in the manual can be seen above in the first image followed by the pinout for the Pi’s AV output.
Step 3: Connecting the Pi to Your Goggles
Moving on, you should put the goggles in AV input mode (refer to your FPV goggle’s manual) and connect them to the pi. Now, boot the pi with the HDMI cable REMOVED. This will prevent it from defaulting to outputting video over HDMI. Once again you need to press the shift key repeatedly until the green light on the Pi stops flashing (that means the pi is now in recovery mode). You can now press ‘3’ or ‘4’ on your keyboard to make the pi output NTSC or PAL format over AV. You may choose to make your settings permanent (by clicking the button in the dialogue box) and press escape to allow the pi to continue booting. You should be able to see the Pi’s desktop through the goggles when it is done.
You might want to edit the overscan values in the recovery
mode config so your screen fits better.
There is one last step and that is to open your terminal and enter the following command.
EDIT: If this is the first time you are using a camera with your Raspberry Pi, you need to activate the interface on your pi first. To do that, click on the Raspberry Pi logo, go to 'Preferences' and click 'Raspberry Pi Configuration.' Finally, click on the 'Interfaces' tab and select enable for the camera and reboot.
$ raspistill -t 0
This will show a camera preview on the screen until you hit ctrl + c.
I put all the pieces together using some tape and Velcro strips.
As you may have guessed I will not be running around in the
field with this, however, I was able to put it on to take some cool pictures.
Step 4: Final Touches and Future Works
The plan is to make some 3D printed parts to hold everything
together and possibly use a raspberry pi zero instead of the model 3b + to reduce the size of the setup. For now, this is just a fun setup you can walk around with and impress your friends..