Here's my use case example collected from the web logger:
vrserver
lighthouse: version 1.16.4
vrserver
lighthouse: [DepthAugmentedPassthrough] supported on this system: 0
vrserver
lighthouse: Attached HID Devices:
vrserver
lighthouse: No devices
vrserver
driver lighthouse implements interfaces IVRSettings_003 ITrackedDeviceServerDriver_005 IVRDisplayComponent_002 IVRDriverDirectModeComponent_007 IVRCameraComponent_003 IServerTrackedDeviceProvider_004 IVRWatchdogProvider_001 IVRVirtualDisplay_002 IVRDriverManager_001 IVRResources_001 IVRCompositorPluginProvider_001
vrserver
Loaded server driver lighthouse (IServerTrackedDeviceProvider_004) from /home/anadon/.steam/steam/steamapps/common/SteamVR/drivers/lighthouse/bin/linux64/driver_lighthouse.so
vrserver
Driver lighthouse has no suitable devices
There is a load failure on my system that is not explained. It happens sometimes, but occasionally works. I can't see into why it does or does not work. The crux of this bug lies in logging this Lighthouse driver's detection behavior. I don't have access to anything more granular than that.
Just a change to the signature of and couple of lines in CVRServer::LoadDriver(unsigned int, vr::EVRInitError*, int*) or CDriverManager::LoadDriver(unsigned int, CDriverManager::HmdDriverContext, vr::IVRDriverContext*).
Also looks like the actual logging details would need to be added in driver_lighthouse.so and might involve DisplayPortLinkInfo::DumpRawDataToLog() and LighthouseHmdDriver::OnHtcHmdDeviceConnect(&HtcHmdDeviceInfo_t).
I have things to do other than reverse engineer all this, but I really want to get Beat Saber working again.
Nothing extracted yet.
I'm still troubleshooting some timing related HMD detection bug, and one thing I've found that is crucial but unknown is the probing behavior. I'd like logging statements for that process made available through some sort of flag. Like what subsystems or paths is it looking, what options does it see, what does Steam VR think about each of those possible options and why?