Skip to content

ARCore 1.53 breaks IMU tracking on Samsung Galaxy Z Fold 2 (Android 16) #1761

@ghostandthemachine

Description

@ghostandthemachine

Environment

  • Device: Samsung Galaxy Z Fold 2 (SM-F766U)
  • Android: 16 (API 36), build BP2A.250605.031.A3.F766USQS8AZC3, security patch 2026-03-05
  • ARCore version: 1.53.260340693 (auto-updated 2026-04-11)
  • AR Foundation: 5.2.0 (Unity 2022.3.62f3)

Description

After ARCore auto-updated to version 1.53 on April 11, 2026, AR tracking is completely broken on this device. The same app with the same build worked perfectly for weeks prior to the update.

A standalone AR Mobile template APK built fresh from Unity also exhibits degraded tracking behavior, while the same template built with an older ARCore version worked fine.

Symptoms

  • AR session oscillates rapidly between SessionTracking and SessionInitializing (~5000+ transitions)
  • Camera feed displays but world tracking never stabilizes
  • No plane detection or point cloud generation

Root Cause from Logs

The IMU (accelerometer/gyroscope) buffer is consistently empty, preventing visual-inertial odometry:

W imu_state_integration.cc:221] IMU buffer is empty or has only one sample. Returns central state only.

Samsung's sensor HAL is rejecting acceleration data:

W VendorSensorActivity: [increaseErrorCount:166] skip the Acceleration data. ret -11

ARCore's sensor data source dispatches events in large stale batches instead of real-time:

I android_sensors.cc:321] [Live DS] Dispatched 925 gyro events
I android_sensors.cc:306] [Live DS] Dispatched 925 accel events

The motion stereo depth pipeline also fails downstream:

E motion_stereo_manager.cc:189
E motion_stereo_manager.cc:817

And IMU/feature measurement sync is broken:

E motion_tracking_context.cc:2703] INVALID_ARGUMENT: IMU and feature measurements are not synced
E feature_track_ml_depth_provider.cc:163

Reproduction

  1. Samsung Galaxy Z Fold 2 with Android 16 and ARCore 1.53
  2. Launch any AR Foundation app using world tracking
  3. Observe continuous SessionTracking ↔ SessionInitializing oscillation
  4. Check logcat for IMU buffer empty warnings

Expected Behavior

ARCore should properly initialize and read IMU sensor data for visual-inertial tracking, as it did with the previous ARCore version on this same device and OS.

Workaround

None found yet. Rebooting the device does not resolve the issue. The issue persists across both single-process and multi-process (android:process) configurations.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions