Repository navigation
Releases: shinyflvre/OpenVR-SpaceSync
Release list
SpaceSync 2.5.0
SpaceSync 2.5.0
New
Stay Aligned
- Added the new Stay Aligned option.
- Disabled by default and only available when using HMD Driven + No Tracker.
- SpaceSync now follows real headset recenters so your Lighthouse devices stay aligned after recentering.
- Small SLAM tracking hiccups are ignored instead of immediately moving your Lighthouse devices.
- If a tracker with the SteamVR Waist role is available, SpaceSync can use it as an additional reference to reduce drift over time.
- After taking the headset off and putting it back on, SpaceSync can use the Waist tracker to help realign the tracking spaces again.
Stay Aligned is still highly experimental.
It does not completely remove drift when using SpaceSync without a tracker mounted to your headset.
Stay Aligned is mainly intended for situations with limited movement, such as:
- Beat Saber and similar games where you mostly stay in one position.
- Short VRChat sessions of around one hour with limited movement.
- Users who do not currently have an additional tracker available for their headset.
If you plan to dance, move around your room a lot, sleep in VR, jump, or have long VRChat sessions, using a tracker mounted to your headset is still strongly recommended for the best tracking accuracy.
Stay Aligned is currently being tested both with and without a Waist tracker.
Lock Base Stations
- Added the new Lock Base Stations option.
- Disabled by default and available in all SpaceSync tracking modes.
- Keeps Base Stations at the positions they had when SpaceSync was calibrated.
- Prevents accidental SteamVR Base Station position changes from moving your controllers, trackers, or entire Lighthouse tracking space.
- This can help with position jumps caused by tracking loss, Base Station standby, or incorrect SteamVR Base Station updates.
- Calibrate SpaceSync once to establish the locked Base Station layout.
- If you physically move a Base Station, simply calibrate SpaceSync again.
- SpaceSync now warns you if the current SteamVR Base Station layout appears inconsistent.
This feature is still work in progress.
Tracking Diagnostics
- Added additional background diagnostics for tracking issues.
- SpaceSync now logs unexpected Base Station and device movements reported by SteamVR.
- Diagnostic information is written to
spacesync_universe.logand can help identify the cause of sudden tracking jumps.
Improvements
No-Tracker Calibration
- Improved calibration accuracy when using SpaceSync without a Head Tracker.
- Headset leveling now uses saved world tilt information or Lighthouse gravity data.
- Yaw calibration now combines headset rotation data with actual head movement for better accuracy.
- Translation is re-calculated during calibration for more precise alignment.
- Calibration now tolerates short tracking losses and automatically skips invalid tracking poses.
- SpaceSync will never accidentally treat the device used for No-Tracker calibration as a Head Tracker.
Latency Compensation
- SpaceSync now sends the time offset measured during calibration directly to the driver.
- Latency compensation now works correctly even when SpaceSync is being used without a Head Tracker.
- Updated the SpaceSync driver protocol to v19.
Recalibration
- The learned headset scale is now preserved when recalibrating with the same headset.
- Recenters carried over from the previous calibration are now restored if a calibration is cancelled or fails.
- Carried-over recenters are also preserved when changing settings while SpaceSync is running.
Manual Calibration Editing
- Yaw and XYZ position values can now be manually edited while using No-Tracker mode.
- Rotation adjustments now correctly pivot around the original calibration position.
Fixed
- Fixed several No-Tracker calibration accuracy issues.
- Fixed latency compensation issues when using SpaceSync without a Head Tracker.
- Fixed calibration state being lost after cancelled or failed calibrations.
- Fixed learned headset scale being reset unnecessarily during recalibration.
- Fixed short tracking losses interfering with calibration.
- Fixed incorrect device selection during No-Tracker calibration.
- Fixed rotation editing behaving incorrectly around the calibration position.
Full Changelog: 2.1.0...2.5.0
SpaceSync 2.1.1
SpaceSync 2.1.1 Stable
- Added slider to adjust prediction. default = 40
SpaceSync 2.1.0 Stable
Base Station Management
- Added Base Station Management, allowing you to wake, put into standby, or put V2 base stations to sleep directly from SpaceSync over Bluetooth.
- Individual base stations or all base stations can be controlled at once.
- Added Dynamic Mode, which automatically wakes base stations when SpaceSync or SteamVR starts and puts them into standby when SpaceSync or SteamVR closes.
- SpaceSync can now be started without SteamVR for base station management and pre-configuration.
i18n
- Added Japanese translation.
- Added Simplified Chinese translation.
Tracking
- Controllers no longer drift closer or farther away depending on which direction you face. SpaceSync now automatically detects and corrects small alignment differences between the HMD and Lighthouse tracking spaces while you play.
- Recentering the HMD now realigns everything in about 0.1 seconds instead of slowly drifting back into place.
- Mount calibration is now preserved instead of being relearned after every recalibration. Once learned, new calibrations should align correctly immediately.
- Fixed mount calibration data sometimes being reset by short latency spikes immediately after calibrating.
- Untrusted measurement poses no longer cause tracking drift. Lying down or sleeping with the HMD now works without introducing drift, even with less reliable HMD tracking.
- Device velocity data is now scaled correctly, improving SteamVR prediction during fast movements.
- Added Tracker & Controller Smoothing with a 0–100% smoothing slider for Lighthouse trackers and controllers. Helps reduce small tracking jitter, especially during dancing and full-body recordings. Recommended setting: 25%. Disabled by default.
- Devices from other SteamVR drivers no longer freeze when SpaceSync encounters an unknown pose format.
Tracking Preview
- Added a Tracking Preview tab with a 3D preview of everything SteamVR currently sees, including the HMD, trackers, controllers, and their assigned SteamVR roles. Drag to rotate and scroll to zoom.
Improvements
- Renamed Lighthouse to Base Stations throughout the app.
- Added a badge in the top-right corner showing whether SteamVR is currently running.
- Added a warning to the main page when no tracker is connected.
- Diagnostics are now logged every minute instead of every 5 minutes.
- When closing SpaceSync with Dynamic Power enabled, it now shows which base stations are going to turn off.
- Added an option to disable the voice that tells you how to calibrate during calibration.
- SpaceSync stays open on the desktop while it is also open in the SteamVR dashboard.
- If the SpaceSync driver isn't loaded, SpaceSync tells you instead of silently closing and keeps retrying.
- Added basestation indicator images to basestation steamvr 2.
Changes
- Changed the color palette of the UI.
- Changed the logo to a new finished one.
Fixed
- Fixed #7.
- Controllers no longer drift closer or farther away depending on which direction you face. SpaceSync now automatically detects and corrects small alignment differences between the HMD and Lighthouse tracking spaces while you play.
- Recentering the HMD now realigns everything in about 0.1 seconds instead of slowly drifting back into place.
- Mount calibration is now preserved instead of being relearned every time you recalibrate. Once learned, new calibrations should line up correctly right away.
- Fixed mount calibration data sometimes being reset by short latency spikes immediately after calibrating.
- Fixed the Tracker & Controller Smoothing slider value being displayed inside the slider.
- Fixed a bug that caused app resizing not to become visible until the left mouse button was released.
- SpaceSync now shows up in the SteamVR dashboard and starts with SteamVR. It used to close itself when the driver wasn't loaded yet or right after SteamVR started.
- SpaceSync now opens on every PC. It no longer needs a separate Visual C++ runtime or GameInput installation.
- The installer no longer starts SteamVR during installation or uninstallation. It asks you to close SteamVR first so the driver can be updated.
- Only one SpaceSync instance runs at a time. Opening it again brings the existing window to the front. If you open SpaceSync before SteamVR, it switches over seamlessly.
- No more jumping when looking up or down, after calibrating, or while lying down.
- Closing SteamVR puts your base stations into standby when Dynamic Power is enabled. The window now shows the progress instead of disappearing.
Full Changelog: 1.3.2...2.1.0
SpaceSync 2.0.0b
2.0.2b
Improved
- No drift anymore in untrusted mesurment pose. laying down and sleeping works without causing drift on bad HMDs
2.0.1b
Fixed
2.0.0b
Fixed
- Controllers no longer drift closer or farther away depending on which direction you face. SpaceSync now automatically detects and corrects small alignment differences between your headset and Lighthouse tracking space while you play.
- Recentering your headset now realigns everything in about 0.1 seconds instead of slowly drifting back into place.
- Mount calibration is now preserved instead of being relearned every time you recalibrate. Once learned, new calibrations should line up correctly right away.
- Fixed mount calibration data sometimes being reset by short latency spikes immediately after calibrating.
New
- Lighthouse tab: Wake, standby, or sleep your V2 base stations directly from SpaceSync over Bluetooth. Control individual stations or all of them at once. Useful when using Lighthouse tracking without a Lighthouse headset, where SteamVR normally does not manage base station power.
- Tracker & Controller Smoothing: Added a new smoothing slider from 0 to 100% for Lighthouse trackers and controllers. Helps reduce small tracking jitter, especially for dancing and full body recordings. Recommended setting: 25%. Disabled by default.
- Tracking Preview tab: Added a 3D preview showing what SteamVR currently sees, including your HMD, trackers, controllers, and their assigned SteamVR roles. Drag to rotate the view and scroll to zoom.
Improved
- Device velocity data is now scaled correctly, improving SteamVR prediction during fast movements.
- Devices from other SteamVR drivers no longer freeze when SpaceSync encounters an unknown pose format.
- Diagnostics are now logged every minute instead of every 5 minutes.
Full Changelog: 1.3.2...2.0.0b
SpaceSync 1.3.2
SpaceSync 1.3.2
Improvements
- The online mount and scale refinement now only applies a correction when it provably reduces the alignment error on data it has not seen.
- Fixes controllers drifting a few cm away after 20 to 50 minutes.
- Refined offsets are saved to your profile only after such a validated step.
- HMD Driven + No Tracker: headset recenters are now carried over to your lighthouse devices instead of breaking the alignment.
Tracker tilt correction is stricter and moves in smaller steps.
SpaceSync 1.2.0
SpaceSync 1.2.0
Information About Tracking Methods
HMD Driven (Recommended)
Similar to Space Calibrator's continuous calibration, but SpaceSync uses a different and simpler approach designed to reduce drift.
You need a head tracker mounted to your headset. A Vive Tracker 3.0 is recommended, but a Tundra Tracker works as well.
The HMD owns the tracking space, while all Lighthouse tracked devices follow it. This is the recommended mode and generally provides the best overall experience.
HMD Driven + Without Head Tracker
You need at least one Vive/Tundra Tracker mounted to your headset during calibration, or you can use one of your controllers for calibration.
This works similarly to HMD Driven, but instead of continuously keeping both tracking spaces synchronized, it performs a one-time calibration.
The downside is that if your HMD resets or recenters its play space, the calibration can become invalid and you will need to recalibrate.
Lighthouse Driven
This is the opposite of HMD Driven.
Instead of letting the HMD control both tracking spaces, the HMD's tracking pose is ignored. A Vive Tracker 3.0 or Tundra Tracker mounted to your headset provides the head position and rotation instead.
This can provide tracking that is almost as good as HMD Driven and may offer slightly more consistent Lighthouse alignment. However, HMD recenters or tracking corrections can cause visual jitter or temporarily break the alignment.
Tracking
- Controllers now stay better aligned with your hands when turning your body.
- Improved tracking stability during fast head movement.
- These improvements apply to Follow SLAM HMD mode.
- Added HMD Driven + Without Head Tracker mode.
Calibration
- Every calibration step now lasts exactly 1.5 seconds.
- Voice prompts and on-screen instructions are now properly synchronized.
- Slow now repeats the look-around sequence twice, while Very Slow repeats it three times for better calibration coverage.
- Calibration now stops if too few samples were collected instead of using unreliable data.
Settings
- New Hide Head Tracker option for Follow mode. Moves the head tracker out of the play space when not calibrating.
- Removed Discard Calibrated Offset, as it was only tested with Pico headsets.
- Changed the layout of the HMD/Override Settings.
Improvements
- Some settings are now disabled while HMD Driven mode is enabled.
- The window is now resizable.
- added -novr flag to open SpaceSync without VR.
Fixed
- Fixed UI Scale settings.
- Fixed voice prompts interrupting each other or playing in the wrong order.
- Fixed Lighthouse devices swinging or shifting out of place during body rotation.
- Fixed devices briefly jumping or drifting when the headset recenters.
- Fixed UI text being rendered blurry.
SpaceSync 1.1.0
SpaceSync 1.1.0
- Smoother alignment with much less jitter and sway during fast head turns.
- Re-localisation jumps are handled instantly, while short tracking glitches are ignored.
- Headset and tracker latency is continuously adjusted during the session.
- Fixed incorrect Lighthouse angular velocity calculations that caused additional sway.
- Mount offset and headset scale now improve automatically while playing and are saved.
- Removed Relative Calibration sliders. No manual tuning needed anymore.
- use 0,5 threshold instead of 0,1 to minimize scale issues
- Added sounds/vocal help during calibration 8english only)
SpaceSync 1.0.2 Beta
1.0.2 - beta release
- Jump compensation: Recenter and re-localization jumps are now detected when they remain consistent for 3 frames while the head is stable and exceed either 2° or 5 cm. These jumps are applied immediately instead of being filtered, preventing trackers from twitching when the headset re-localizes. Logged as
Drift jump compensated. - Mount check: The driver now monitors how well the calibrated mount offset still matches the tracker, including remaining tilt and positional offset. If the head tracker gets bumped or the strap shifts, a yellow warning appears below the calibration circle prompting you to recalibrate.
- Separate positional latency: The time offset between the headset pose and tracker pose is now learned separately for rotation and position. This fixes controllers and trackers drifting while walking and then settling back into place when you stop.
- Driver status over IPC: Added
RequestGetStatususing protocol v10, providing the drift state, mount check values, learned latencies, and jump count. The overlay polls this status once per second. - README: Added troubleshooting entries for jump compensation and the mount warning.
1.0.1 - init beta release
- Head tracker poses are now only used while the tracker reports
TrackingResult_Running_OK. Previously, if the tracker lost sight of the base stations, its frozen position and gyro-only rotation could still affect the headset and even get learned into the drift correction. This was the original issue I started fixing. - Added a new Follow SLAM HMD mode. In this mode, the headset keeps using its own tracking, while the head tracker's raw Lighthouse pose is cached and used to measure the offset between both tracking spaces. That correction is then applied in reverse to all Lighthouse devices. It is basically the opposite approach of making the tracker drive the HMD, and works better for setups where the headset's own tracking should stay in control.
- Added time alignment between the HMD and tracker poses, including an online estimate for the remaining tracking latency. The correction also uses confidence weighting and freezes during very fast head movement, which helps prevent trackers from swaying or shifting when quickly turning your head.
- Improved how rotational and positional drift corrections are handled so both stay consistent with each other.
- Fixed two race conditions in the configuration handoff and added missing bounds checks.
- The overlay now sends a single transform update per device instead of temporarily disabling and re-enabling devices when applying changes.
- Added additional logging for tracker state changes, drift jumps, and the currently learned latency value.
- Fixed license issues #1
- Added Credit lines
Full Changelog: 1.0.1...1.0.2
SpaceSync 1.0.1 Beta
Init public release
- Head tracker poses are now only used while the tracker reports
TrackingResult_Running_OK. Previously, if the tracker lost sight of the base stations, its frozen position and gyro-only rotation could still affect the headset and even get learned into the drift correction. This was the original issue I started fixing. - Added a new Follow SLAM HMD mode. In this mode, the headset keeps using its own tracking, while the head tracker's raw Lighthouse pose is cached and used to measure the offset between both tracking spaces. That correction is then applied in reverse to all Lighthouse devices. It is basically the opposite approach of making the tracker drive the HMD, and works better for setups where the headset's own tracking should stay in control.
- Added time alignment between the HMD and tracker poses, including an online estimate for the remaining tracking latency. The correction also uses confidence weighting and freezes during very fast head movement, which helps prevent trackers from swaying or shifting when quickly turning your head.
- Improved how rotational and positional drift corrections are handled so both stay consistent with each other.
- Fixed two race conditions in the configuration handoff and added missing bounds checks.
- The overlay now sends a single transform update per device instead of temporarily disabling and re-enabling devices when applying changes.
- Added additional logging for tracker state changes, drift jumps, and the currently learned latency value.
- Fixed license issues #1
- Added Credit lines