International developers have been waiting patiently to buy Samsung’s Gear VR mobile headset internationally ever since the US release on December 8th. Many of them have their virtual reality applications ready to go, yet they have no way to test them without a way to purchase the headset. That was at least until a developer in Australia plugged an Oculus Rift DK1 controller box into the Galaxy Note 4 (the phone that powers the Gear VR headset).

Mark Schramm (co-creator of VR Bits) was sitting at home one day at the end of 2014 wondering how he was going to test his company’s new Gear VR demos. So instead of waiting for Samsung and Oculus to figure out an international release date, Schramm started experimenting with other possible options. He began by stripping down one of his extra DK1 headsets, removing the controller box and connecting it to the Note 4. Surprisingly, he found that the phone correctly recognized the headtracking sensor in the DK1.

See also: Rev VR Podcast (Ep.88): Introducing OpenGear, A Gear VR Alternative, By Developer Mark Schramm

From there, Schramm ordered a developer board covered in sensors (including an IMU) and flashed firmware onto it. This was done with the help of already established Github code that took information learned from the open-sourcing of the Oculus DK1 headset. After that, the board was mounted to a Google Cardboard VR smartphone adapter. With the Note 4 placed into Cardboard, and a strap attached, a Gear VR clone, capable of testing VR applications without Gear VR itself, was born.

Schramm documented the entire process through some videos. In addition, all the steps were posted on a website aptly called Since then, a couple of other developers across the globe have created their own Gear VR clones.

There is a great video of a ping pong game between the official Gear VR and the cloned version. In it Schramm and a few other VR enthusiasts test out the tracking differences between the two devices by using the pass through camera. It is a joyfully fun experience to watch. (Spoiler: the real Gear VR still wins).

Although this is a cool project that can allow developers without the Gear VR headset to begin testing their apps, it’s in no way meant to ‘compete’ with Samsung’s Gear VR. It is instead only meant to show that developers can clone the headset and test their apps while they wait for the official headset to get shipped to their doors. Because Open Gear is essentially only taking the information learned from the researchers and developers within Oculus, all the credit should go back to Oculus for the heavy lifting. Still, Mark Schramm showed that is indeed possible to access the Oculus Store without an official Gear VR, which is definitely worth applauding.

See Also: News Bits – Samsung’s Gear VR International Rollout Begins With 4 EU Territories

However, the Gear VR clone has are some crucial limitations. For instance, as the Open-Gear website states, “Open Gear does not seem to trigger the switch into the low persistence mode of the screen correctly (even though it should).” The folks behind Open Gear are working to properly enable low persistence, which greatly reduces blur introduced by the display when the user moves their head.

In addition, the “tracker has a much lower update frequency, [so] you wouldn’t get the buttery smooth 1000Hz of the real thing, but it is enough for app testing.” Even more notably, there is no touchpad on the clone which reduces interactivity with some of the VR experiences; but any Bluetooth controller can be synced to the phone as a workaround.

Open Gear is a mere stepping stone for app testing, and nothing more (for now).

How to Build Your Own Open Gear Headset

If you are interested in cloning your own Gear VR for testing an app, the steps are actually relatively straightforward. The Open Gear website lays out the steps:

  1. Modify your App
    • For GearVR apps to run outside of Oculus Home, two things are necessary:
      • You will need a valid Oculus Signature file, which you can get from here.
      • And you will have to modify your AndroidManifest.xml file.
        • Change vr_only to vr_dual
        • and android.intent.category.INFO to android.intent.category.LAUNCHER.
    • This will enable your app to be launched via the Android Homescreen/Appdrawer.
    • Build it and you are ready to go. You can even test your performance right now, just without head tracking.
  2. Build your OpenGear
    • The concept behind OpenGear is very simple: if you plug a DK1 into a Note 4 via a USB Host cable, it recognizes it as a valid tracker and will enable head tracking.
      • We will be using a STM32F3 DISCOVERY board as a DK1 replacement.
        • Follow this tutorial to flash the STM32F3 DISCOVERY board with the new firmware.
      • Build your Case/Phoneholder. We will be releasing Note 4 compatible cutting templates soon.
  3. Test Away
    • You are now ready to test your app!
    • But why stop here? You just built a Gear VR compatible device. Launch Oculus Video 360 (which comes with its own icon on the Android Homescreen).\
    • Connect a bluetooth mouse to your Note 4. The Left mouse button will be the tap, the right mouse button will be the back key. You can even drag the mouse to emulate the swipes.
    • Long press the right mouse button to go to the config menu. You can enable pass-through mode or even start Oculus Home from there!
Newsletter graphic

This article may contain affiliate links. If you click an affiliate link and buy a product we may receive a small commission which helps support the publication. More information.

  • Janus

    “This was done with the help of already established Github code that took information learned from the open-sourcing of the Oculus DK1 headset”

    No. The code by yetifrisstlama existed way before the dk1 firmware was public. There were no updates to it since the dk1 code was released. ATM there are two options, updating the code by yetifrisstlama with the routines found in the dk1 code, or adapting the dk1 code to work on the STM32.

    • Simon

      Also a note from the bug tracker; the desktop SDK no longer works with the ‘foculus’. It looks like it is glitching when it attempts to read the magnetometer calibration tables…. which presumably aren’t implemented.