Repository navigation
Frametop 0.2.1
Frametop 0.2.1 pauses itself while you play VR games, adds new shortcuts and a one-command uninstaller, and makes our own eye tracker the default for gaze mode. It also brings the Hand Recorder, which records your hands for Frametop's open hand dataset.
New
- Pause for VR games. Frametop pauses while a VR game runs, so the game gets the headset's CPU and GPU, and it comes back a few seconds after the game ends. While paused, the screens hide and the desktop nearly stops drawing, but its windows stay open. Click both thumbsticks together twice to pause or resume it yourself, in a game or not. The new Game optimization page of Frametop Input Settings has the settings (#19).
- Tap Meta for the Steam menu. Tapping Meta on any keyboard opens the Steam menu in the SteamVR dashboard, or closes the dashboard. In Frametop Input Settings (Keyboard page), any key combination or modifier tap can now run a Frametop or Steam action, open a profile, or run a command of your own.
- Lazy susan. Meta+Alt+Tab (or Meta+Alt+Shift+Tab) spins every screen and floating window around you together, so the next one glides to straight ahead (#22, thanks @ehippy).
- A reset button next to each screen's grab bar. It puts every screen back in its layout around you, like Meta+Shift+R, and a controller can click it during VR games.
- The keyboard's Mute key mutes the headset's sound (#24, thanks @SuperTuxii).
- A one-command uninstaller:
curl -fsSL https://deejanuz.github.io/frametop/uninstall.sh | bash. It works in two steps around a restart, so it never takes away the keyboard, mouse, or desktop you're using while it runs. See Uninstall. - The Hand Recorder records your hands with the headset's tracking cameras for Frametop's open hand dataset on Hugging Face. It's installed separately; see Install the Frametop Hand Recorder. It works on headsets with or without the Arcturus color passthrough module.
- Accessibility in the desktop. The desktop starts its own accessibility (AT-SPI) registry, so apps show up on its accessibility bus (#27, #28, thanks @JakeGreen2145).
Gaze mode (experimental)
- The installer now offers our own eye tracker as well, and by default gaze mode uses it whenever it's installed. It's more accurate than SteamVR's.
- A fresh install with our eye tracker can now take its first calibration. Before, it could never be calibrated, so gaze mode didn't work.
- The Gaze page says why gaze mode can't work yet, and the calibration opens by itself whenever it's missing. When a calibration dot isn't taken, the panel says why.
- The gaze service idles while gaze mode isn't in use, and it leaves SteamVR's eye tracking alone during VR games, where reading it made some games pause (reported in #13, thanks @curiousjtuber).
Smoother and lighter
- Scrolling and video in the desktop no longer judder. The screens now update once per display frame, in step with the headset's display, and hidden screens update once a second.
- The desktop has no blur or window animations by default, which leaves the GPU to SteamVR. You can turn them back on in the Frametop desktop's System Settings.
- Remote desktop uses much less CPU while no VNC viewer is connected.
- The eye tracker, the pointer, and the input relay use less CPU. The desktop no longer starts Discover's update notifier or IBus.
Fixes
- A taskbar saved on a screen the desktop no longer has comes back on the primary screen (#18).
- The installer works over SSH: it waits for a new build container to finish setting up (#9).
- Small controller movements no longer turn desktop clicks into drags (from #11, thanks @jlneal).
- A newly connected keyboard or mouse is picked up even when it takes a moment to become usable (#12), and a memory bug in how the screens catch the controller laser is fixed (#14). Thanks @curiousjtuber.
- Launching a missing app no longer breaks floating windows (#16, thanks @ehippy).
- Hide/Show Screens in the launcher no longer runs Reset Screen Layout (from #17, thanks @JRMurr).
- Profiles bring back Flatpak apps whose windows name a different app id.
- A controller button pressed on a screen no longer stays held when pausing or hiding the screen takes the laser away mid-click.
- Typing with SteamVR off no longer stops the input relay.
- SteamVR's tools (
vrcmd,vrpathreg) and OpenVR apps work from a terminal in the Frametop desktop. scripts/report.shnow includes the gaze service, our eye tracker, and the desktop's panels and outputs.scripts/doctor.shflags a lost taskbar.
Known limitations
- Frametop doesn't work on the SteamOS beta (0.4.3) yet: gaze mode can't read the eye tracker there, and the desktop has started without its taskbar (#15). Use the stable SteamOS release.
- Hand tracking (hands shown over the screens, pinch to click) is still deferred, and the installer doesn't offer it. The Hand Recorder only records for the dataset.
Update
curl -fsSL https://deejanuz.github.io/frametop/get.sh | bash
Tested on one Steam Frame (SteamOS 0.3.0 build 20260922, SteamVR 2.17.10). See the known limitations. If something goes wrong, run scripts/report.sh and open an issue. Questions and help: the Frametop Discord.