Having a similar problem, although I'm not sure if it's related to iOS26 or phones with the U2 chip.
I am doing peer to peer rather then peer to object, but figured I'd share my findings.
iPhone 16 Pro (U2 chip), iOS 26.3.1:
NISession created — capabilities:
token: true
supportsDirection: false
supportsCameraAssistance: true
supportsExtendedDistanceMeasurement: true
supportsPreciseDistanceMeasurement: true
iPhone 12 (U1 chip), iOS 18.6.2:
NISession created — capabilities:
token: true
supportsDirection: true
supportsCameraAssistance: true
supportsExtendedDistanceMeasurement: false
supportsPreciseDistanceMeasurement: true
What I've found so far:
16 Pro / U2 / iOS 26 (?)
3D direction vector is never available
Camera seems to be required for directional convergence
Everything seems to be determined by hAngle
Seems to start an NI session with dirSrc as 'none' and then resolves to 'hAngle' after camera convergence is complete
12 / U1 / iOS 18
Seems to start an NI session with 'hAngle' as its dirSrc before resolving to '3D'.
FYI, placing both a 16 Pro and a 12 face down on a table with rear cameras covered after both devices have established position and relative distance: 12 continues to show position with a dirSrc of '3D'; 16 Pro tells me to "Move to a brighter area" with a dirSrc of 'none'
If anyone has experienced anything differently with NISessions, would love to hear it.
Topic:
App & System Services
SubTopic:
Maps & Location
Tags: