Daniel, aka CNCDan, wasn’t looking to revolutionize virtual reality. He just wanted a more immersive sim racing experience without breaking the bank. His solution? A fully 3D printed VR headset built with AliExpress parts, open source software and an endless desire to mod.
He started with a simple goal: make sim racing more realistic. Commercial VR headsets, even the entry level ones, were too expensive and had too many features like hand tracking he didn’t need. Instead of settling he decided to use his 3D printer and problem solving skills to create a headgear tailored to his needs. The result is a device with 2880×1440 resolution, adjustable interpupillary distance (IPD) and built in head tracking, all for a tenth of the price of the mainstream options. It’s not perfect but it shows what’s possible when ingenuity meets determination.
- Transform your reality with Meta Quest 3S 128GB. Now get the Amazon-exclusive Cardboard Hero Bundle, which includes the Handiwork Helmet, Handiwork...
- Turn any room into your own personal theater. Dim the space around you and watch on a giant, vibrant screen. Go all in with USB-C headphones, or plug...
- Have more fun with friends in Quest. Whether you’re stepping into an immersive game with people from around the world, watching a live concert...
The headset has two 2.9 inch square monitors. Daniel searched AliExpress for high resolution displays before settling on these. They are a compromise between clarity and size. Larger 3.8 inch OLED panels would have increased the minimum IPD to 68mm, excluding too many people as the average adult IPD is around 63mm with a range of 45-80mm. The 2.9 inch screens are slightly more than 54mm wide and have a minimum IPD of 54mm so they are suitable for a wider range of people. Daniel chose the cheaper 90Hz version over the more expensive 120Hz one and only later found out that full resolution only runs at 60Hz which can be choppy in VR. But the displays are sharp enough for sim racing and prove that low cost components can outperform expectations.

Lenses were the next challenge, so he used his knowledge of FPV drone headsets. Daniel considered Fresnel lenses which are often sold in office supply stores as magnifying sheets. Testing with a phone screen showed a focal distance of around 60mm which is too big for a slim design. A last minute find on AliExpress changed everything: lenses for Google Cardboard with a 45mm focal distance that provided a more compact option. These lenses fit into 3D printed “eye boxes” made of matte black PLA to reduce reflections and provide a clear view of the displays. They’re held in place by a twist-on retaining cap, which eliminates the need for glue, and makes replacing them easy if they get scratched.

Head tracking is essential for sim racing and Daniel used a GY-9250 IMU sensor with an Arduino Pro Micro. He heavily relied on Relativty’s open-source SteamVR head tracking driver, a project so good it’s hard to believe a 15 year old started it. The software handles roll, pitch and tilt – everything you need for immersive driving – without the complexity of positional tracking. To keep things tidy Daniel designed a custom PCB but it’s optional if you’re comfortable soldering directly to the Arduino. The setup requires a quick calibration via Arduino Studio to prevent drift but once dialed in it tracks head movements smoothly and integrates seamlessly with SteamVR.

The headset’s body is a symphony of 3D printed components, each precisely planned for functionality. The eye boxes that hold the screens and lenses slide along 145mm stainless steel rods for IPD adjustment, which are secured with M3 screws and thumb knobs for ease of usage. The main body piece is printed nose-side up to eliminate support concerns and is held together by M3 threaded inserts. The HDMI driver and head tracker are housed in the front cover, which has a display splitter board taped in place. Daniel’s attention to detail extends to the tiny things, such as routing power through the Arduino to save extra cords and using a folding FFC cable to keep the interior clean.

Daniel used an HTC Vive face pad that was inexpensive and readily accessible, with self-adhesive Velcro for simple replacement. The head strap is constructed of 25mm strapping and 3D printed PLA buckles, and it is surprisingly sturdy. The rear plate is printed in flexible TPE and fixes the strap without any internal supports; simply pause the print and insert the material. The end result is a headset that is comfortable for lengthy racing sessions, but Daniel acknowledges that the face plate may not fit every face shape.
What makes this project so accessible? Daniel has uploaded all of his files to GitHub, including 3D models and software instructions. So, if you have a 3D printer and enough patience, you can make your own.
[Source]