This seems to have reintroduced a random crash in Resonite that happens in one of those functions. I wrapped the whole thing in that guard to fix it because I wasn't able to figure out where the crash was coming from, and I still can't really see how it happens :/
Fixes the hand tracking being offset since the introduction of dynamic interaction profiles in WiVRn.
The code was always assuming a fake quest controller pose on non-index hand tracking, which was wrong with the simple interaction profile provided by Meta's runtime for hand tracking.
Orion (51d76ba7) at 30 Mar 16:10
fix hand tracking with simple interaction profile
... and 19 more commits
I won't be continuing work on this branch as it has too many issues and I mostly want to focus my future work on XRizer instead, the draft PR there might be a better reference for anyone looking to port it over as it has both device restriction and secondary action sets implemented (needed to resolve issues in VRC), and also uses an IPC mechanism to run a separate XrInstance https://github.com/Supreeeme/xrizer/pull/41
Implements action set priorities using XR_EXT_active_action_set_priority (tysm @Beyley for getting it working in Monado!) and fixes inputs getting stuck in some games (thanks mitsuami-megane!)
We still need a way to decouple estimated hand inputs from legacy actions before this can be merged, I'll try to get that done soon™
I tried multiple things that didn't really work, but eventually I got myself a 12V power supply for all my network gear, and also hooked the phone up to it through a buck converter, that made the freezes go away completely!
Turns out this little phone can suck more than 5A through the battery terminals for a split second during heavy IO, that's crazy...
I run a Poco F1 as a server, and a couple months ago it suddenly started freezing at random, usually once per day. It would still respond to pings and SSH would accept a connection and immediately drop it, or actually allow me to log in and show a prompt, however running anything there would just freeze as well.
I ended up creating a rootfs with its own sshd running so I could potentially get in if the storage freezes, but I didn't notice anything unusual in dmesg, the only symptom of anything being wrong was that trying to mount or access the affected block device in any way would freeze. I moved everything to a microsd for a while, but today I wanted to see if it still happens on the latest kernel (6.11.0) from pmOS, and it sadly does.
It's entirely possible it is a hardware failure, the phone has been through a lot and has a gutted battery, but I'm not sure why it would fail completely at random without any triggers other than there being some storage activity. I'm able to copy large amounts of data to and off internal storage, and it didn't once freeze during that operation, but after a few hours of normal activity it just decides to die for whatever reason.
If it matters for anything I'm running Arch Linux ARM, postgres, and a couple other services on it, I could definitely try to capture some kernel logs again and grab anything else that might be helpful.
Orion (e47e5a19) at 09 Jan 21:48
Fix button release in games that rely on bChanged
Orion (effe0a87) at 09 Jan 21:46
Fix skeletal tracking level detection
Orion (9bc11728) at 26 Dec 21:45
Never pass the floor-relative wrist along to the app
Fixes the skeletal tracking level being wrong because Zucc decided to add fake controllers for hand tracking
Orion (eb66fdeb) at 26 Dec 21:41
Fix skeletal tracking level detection
Fixes hands flying off into the distance when the runtime returns valid controller poses with hand tracking
Orion (9bc11728) at 26 Dec 20:38
Never pass the floor-relative wrist along to the app
Orion (1f78ed73) at 26 Dec 18:47
set hand tracking validity to false if controller is valid
... and 2 more commits
Orion (81d4363a) at 23 Dec 23:08
WIP: Find currently active actions for hand inputs
This looks like another memory safety issue, if you could grab some proton logs (can be less verbose, like PROTON_LOG=-seh,+warn,+err) that could help narrow down which function is responsible
Orion (2c067996) at 22 Dec 18:16
WIP: Find currently active actions for hand inputs