Skip to main content
Participant
August 15, 2026
Question

OpenXR Spatial Markers seem broken (206.0.0.109.432)

  • August 15, 2026
  • 5 replies
  • 152 views

I just updated my Meta Horizon Link to Version 206.0.0.109.432.

I am using native development over OpenXR, Quest3 (also updated to latest) over cable.

Seem that using the same code, spatial markers are no longer "working" - 

could be no markers reported, could be some are reported on first scan and then nothing. 

I got all the plumbing working as expected but still no joy - 

XR_EXT_spatial_entity, XR_EXT_future , XR_EXT_spatial_marker_tracking 

Any insights would be appreciated.

5 replies

Picho74Author
Participant
August 15, 2026

In addition, the process now hangs on exit - see attached image with call stack.

here is some partial (filtered) log  - 

07:47:03: [SpatialMarker] Extension check: XR_EXT_spatial_entity = YES, XR_EXT_future = YES, XR_EXT_spatial_marker_tracking = YES

07:47:03: [SpatialMarker] All extensions found - spatial marker tracking AVAILABLE

07:47:03: OpenXR Instance - ! Runtime Name: Oculus ! Runtime Version: 1.206.0

07:47:03: [SpatialMarker] InitInstance - xrInstance=1

07:47:03: [SpatialMarker] Loading extension function pointers via xrGetInstanceProcAddr...

07:47:03: [SpatialMarker] InitInstance completed OK

07:47:03: OpenXR UpdateSessionStateChange: 1

07:47:03: OpenXR UpdateSessionStateChange: 2

07:47:03: OpenXR UpdateSessionStateChange: 3

07:47:03: [SpatialMarker] Raw recording to C:\Temp\SpatialMarkerRaw_20260815_074703.csv

07:47:04: OpenXR UpdateSessionStateChange: 4

07:47:04: OpenXR UpdateSessionStateChange: 5

07:47:15: [SpatialMarker] CalibrationPoint SET: "VPT1_A" pos=(0.417785,0.676193,-0.042772)

07:47:15: [SpatialMarker] CalibrationPoint SET: "VPT1_B" pos=(0.071969,0.867789,0.219700)

07:47:15: [SpatialMarker] CalibrationPoint SET: "VPT1_C" pos=(-0.292110,0.723759,-0.034452)

07:47:15: [SpatialMarker] Calibration ENABLED

07:47:15: [SpatialMarker] InitSession - xrSession=2 systemId=23

07:47:15: [SpatialMarker] Enumerating capabilities on xrInstance=1 systemId=23

07:47:15: [SpatialMarker] Runtime reports 1 supported spatial capabilities

07:47:15: [SpatialMarker] Capability[0]: MARKER_TRACKING_QR_CODE (value=1000743000)

07:47:15: [SpatialMarker] Component[0]: MARKER (value=1000743000)

07:47:15: [SpatialMarker] Component[1]: BOUNDED_2D (value=1)

07:47:15: [SpatialMarker] StartContextCreation - configuring QR Code (only capability supported by Quest 3)

07:47:15: [SpatialMarker] xrCreateSpatialContextAsyncEXT OK - future=1, polling...

07:47:15: [SpatialMarker] InitSession completed OK - context creation started, state=CreatingContext

07:47:15: [SpatialMarker] Heartbeat: state=CreatingContext snapshots=0 withEntities=0 pendingFutureAgeMs=0 knownMarkers=0

07:47:15: [SpatialMarker] HeadContinuity: head untracked for 3.562000s - stage-frame state dropped

07:47:15: [SpatialMarker] Context future is READY - completing...

07:47:15: [SpatialMarker] Spatial context ready - marker detection running

07:47:15: [SpatialMarker] No markers detected - scanning...

07:47:20: [SpatialMarker] Heartbeat: state=CreatingSnapshot snapshots=16 withEntities=0 pendingFutureAgeMs=4016 knownMarkers=0

07:47:21: [SpatialMarker] Snapshot future pending for 5s - the runtime is not completing snapshots (16 completed so far, 0 with entities)

07:47:25: [SpatialMarker] Heartbeat: state=CreatingSnapshot snapshots=16 withEntities=0 pendingFutureAgeMs=9016 knownMarkers=0

07:47:30: [SpatialMarker] Heartbeat: state=CreatingSnapshot snapshots=16 withEntities=0 pendingFutureAgeMs=14016 knownMarkers=0

07:47:34: [SpatialMarker] Cancelling pending future

07:47:34: [SpatialMarker] Destroying spatial context handle

07:47:34: OpenXR UpdateSessionStateChange: 4

07:47:34: OpenXR UpdateSessionStateChange: 3

07:47:34: OpenXR UpdateSessionStateChange: 6

07:47:34: OpenXR UpdateSessionStateChange: 1

07:47:34: OpenXR UpdateSessionStateChange: 8

07:48:16: OpenXR session destroyed via session lifecycle

07:48:16: [SpatialMarker] Destructor - cleaning up

 

 

Picho74Author
Participant
August 15, 2026

In addition, the process now hangs on exit - see attached image with call stack.

 

Picho74Author
Participant
August 15, 2026

here is a partial (filtered) log from the app for OpenXR calls etc.

 

Picho74Author
Participant
August 15, 2026

Here is a log I found with the same code running on the earlier Meta version - it SEEMS to be 205.0.0.167.543 but not 100% sure, this one gets the markers properly

 

Picho74Author
Participant
August 15, 2026

Added a minimal repro, this should settle the big question: the wedge is 100% Meta's runtime, nothing to do with our codebase:

Minimal Spatial Marker Fail Repro 206.0.0.109.432