Unify driver protobuf protocol to SolarXR #902

Open
opened 2026-04-06 00:23:18 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @ImUrX on 11/5/2023

We kinda have 2 different schemas currently being used, this needs an overhaul.

  • Figure out how the whole protocol should look in flatbuffer
  • Use only unix sockets in all OS for the driver IPC (supported since Insider Build 17063 on Windows 10)
  • Work out if any extra is needed for Monado to have an easy time using this

Stuff that needs to be thought of:

  • Because we are gonna still use sockets/pipes, we should use TCP directly, it will make everything easier by making sure messages are in order (which should still happen in UDP tbh) and take care of the concept of a "connection" which UDP doesn't have. The current implementation in Linux is TCP, so it won't require much change.
*Originally created by @ImUrX on 11/5/2023* We kinda have 2 different schemas currently being used, this needs an overhaul. - [ ] Figure out how the whole protocol should look in flatbuffer - [ ] Use only unix sockets in all OS for the driver IPC (supported since [Insider Build 17063](https://devblogs.microsoft.com/commandline/af_unix-comes-to-windows/) on Windows 10) - [ ] Work out if any extra is needed for Monado to have an easy time using this Stuff that needs to be thought of: * Because we are gonna still use sockets/pipes, we should use TCP directly, it will make everything easier by making sure messages are in order (which should still happen in UDP tbh) and take care of the concept of a "connection" which UDP doesn't have. The current implementation in Linux is TCP, so it won't require much change.
MrUnknownDE added the Type: EnhancementType: DiscussionArea: SteamVR DriverPriority: NormalType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: DiscussionType: DiscussionType: DiscussionType: DiscussionType: DiscussionType: DiscussionType: DiscussionType: DiscussionArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverArea: SteamVR DriverPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: NormalPriority: Normal labels 2026-04-06 00:24:08 +02:00
Sign in to join this conversation.
No Label Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Area: SteamVR Driver Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Priority: Normal Type: Discussion Type: Discussion Type: Discussion Type: Discussion Type: Discussion Type: Discussion Type: Discussion Type: Discussion Type: Discussion Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/SlimeVR-Server#902