diff --git a/OpenVR-SpaceCalibrator/VRState.cpp b/OpenVR-SpaceCalibrator/VRState.cpp index 7ac51b2..f111f19 100644 --- a/OpenVR-SpaceCalibrator/VRState.cpp +++ b/OpenVR-SpaceCalibrator/VRState.cpp @@ -97,5 +97,12 @@ int VRState::FindDevice(const std::string& trackingSystem, const std::string& mo if (device.trackingSystem == trackingSystem && device.model == model && device.serial == serial) return device.id; } + // allow fallback excluding serial for HMD specifically + for (int i = 0; i < devices.size(); i++) { + const auto& device = devices[i]; + + if (device.trackingSystem == trackingSystem && device.model == model && device.deviceClass == vr::TrackedDeviceClass::TrackedDeviceClass_HMD) return device.id; + } + return -1; } \ No newline at end of file