This site has been archived and remains strictly as a historical reference for developers who actively maintain apps built using the legacy Google VR SDK, which was last updated in 2019 and is no longer receiving updates.
  • All developers actively developing experiences for Google Cardboard should use the new open source Cardboard SDKs for iOS, Android NDK, and Unity XR Plugin. These new SDKs offer streamlined APIs, improved device compatibility, and built-in viewer profile QR code scanning.
  • The Daydream View VR headset is no longer available for purchase as of October 15, 2019. Existing apps on supported devices are unaffected for users who previously installed those applications. It is no longer possible to opt-in to Daydream distribution via Google Play.

Daydream Hardware

Stay organized with collections Save and categorize content based on your preferences.

Daydream hardware consists of a VR headset and controller. Combined with a Daydream-ready phone, you can create high-quality, interactive mobile VR experiences.

Daydream-ready headsets are designed for the high-quality mobile VR experiences that Daydream enables. Unlike the Google Cardboard viewer, they are designed for extended use. Instead of a trigger button, users interact with VR applications using the Daydream controller.

The Daydream controller was created with mobile VR in mind. Designed to be both accessible and expressive, it can track its rotation and orientation with high accuracy. It also includes a clickable touchpad and two buttons called APP and HOME. The APP button can be used by apps and the HOME button is reserved for system use.

Developing with Daydream

When building a Daydream application, you should use a Daydream-ready phone and Daydream hardware for running, debugging, and testing. This page describes how to get ready for development.


Follow the instructions to set up Daydream. This will pair your phone with your Daydream controller.

You'll also want to set up your phone for Android development, like enabling USB debugging on your device by going to Settings > Developer options.

  • If Developer options is hidden, go to Settings > About phone and tap Build number seven times. Return to the previous screen to find Developer options.

Pairing another controller

By default your phone can only be paired with a single controller. If you would like to pair it with a new or different controller, follow these steps.

Open the Daydream application you installed earlier. Tap the icon, select Settings > Pair new controller, then follow the on-screen instructions.

The Controller Emulator

You may find it convenient to use the Controller Emulator while developing, especially if you are using Unity or Unreal, as you can use it both in the editor and while testing on your phone. See its page for more details.

How to factory reset the Lenovo Mirage Solo

The following instructions will access the recovery window for the Lenovo Mirage Solo and allow you to reset the device to factory settings.

  1. Plug in the device to a USB port. Wait until the device is at least 20% charged. This is so you won't get stuck in a boot loop.
  2. While the device is still connected to a USB port, power on the device.
  3. While not wearing the device, press and hold the power button and volume up together on the device (not the controller) until the device restarts.
  4. Let go of power button once the screen flashes. Keep holding the volume up. You should see the Lenovo logo. You should then see the Android Recovery screen featuring a broken Android logo and the words "No commands" underneath the logo. Repeat the above if you don't see the broken android logo.
  5. When in the Android Recovery screen, hold the power button for 2 second and short press volume up button. This will take you to the full recovery command screen. Once the commands show up on the screen let go of all buttons.
  6. Use volume up and down to navigate between the options.
  7. Highlight the option Wipe data/factory reset and short press the power button to select this option.
  8. Use the volume buttons to select yes and press the power button to confirm.
  9. The device will now reboot to its factory reset state.