Develop
Develop
Select your platform

Tracked Physical Keyboard

Updated: Nov 10, 2025
The Tracked Physical Keyboard feature provides users with a way to interact with their physical keyboard while inside a VR environment. This overcomes virtual keyboard limitations and blind touch typing by showing the user’s hands and physical keyboard in a small passthrough window. This works with any bluetooth keyboard paired to the headset. The operating system tracks the location of any keyboard within view and renders a dynamic passthrough cutout so the user can see their hands and keyboard while in an immersive VR environment. This enables the user to type with their real hands on their real keyboard which provides a seamless typing experience.
Tracked Physical Keyboard

How do I set up Tracked Keyboard?

Enabling Tracked Keyboards

The basic functionality for tracking your physical keyboard in a passthrough window is provided by Horizon OS. To enable it on your Quest device, go to Settings > Devices > Keyboard and enable Show my keyboard.

Pairing Your Keyboard

Pairing your bluetooth keyboard is done through the main settings in Horizon OS. On your Quest device, go to Settings > Bluetooth. Find your bluetooth keyboard in the list and select Pair. Follow the instructions to pair your keyboard.

How does Tracked Keyboard work?

Tracked Keyboard works by using dynamic object tracking. When a keyboard is detected, an MRUKTrackable object with TrackableType set to OVRAnchor.TrackableType.Keyboard is created representing the keyboard and a TrackableAdded event is fired that provides an instance of the new tracked object. Similarly, when the keyboard is no longer within view, a TrackableRemoved event is fired. These events can be handled within your project to show the status of the tracked keyboard to the user, create and configure visuals representing the location of the keyboard, etc.
Handling the input from the keyboard in your project is not technically a part of the Tracked Keyboard functionality; however, the Interaction SDK Tracked Keyboard Sample demonstrates the use of Interaction SDK to handle the keyboard input of a Tracked Keyboard within a UI in Unity.

Learn more

Design guidelines

  • Input modalities: Learn about the different input modalities.
  • Head: Learn about design and UX best practices for using a head input.
  • Hands: Learn about design and UX best practices for using hands.
  • Controllers: Learn about design and UX best practices for using controllers.
  • Voice: Learn about design and UX best practices for using voice.
  • Peripherals: Learn about design and UX best practices for using peripherals.
Did you find this page helpful?