[OnePlus 3 Guides, News, & Discussion] Arnova8G2:
This line must be added to the build.prop file ro.config.calibration_cad=/system/etc/calibration_cad.xml

calibration_cad.xml

<!-- This calibration file was created by fidning an average of the factory
calibration for 12 different marlin devices -->
<rig>
<device_id>0</device_id>
<camera>
<camera_model name="" index="3" type="calibu_fu_fv_u0_v0_k1_k2_k3">
<width>320</width>
<height>180</height>
<params> [260.215; 260.277; 157.511; 86.24160000000001; 0.23834; -0.688656; 0.664354] </params>
</camera_model>
<pose />
</camera>
<camera>
<camera_model name="Narrow" index="1" type="calibu_fu_fv_u0_v0_k1_k2_k3">
<width>1920</width>
<height>1080</height>
<params> [1436.454; 1436.235; 961.194; 544.107; 0.0226009; -0.0657141; 0.0971462] </params>
</camera_model>
<pose />
</camera>
<camera>
<camera_model name="MotionTracking" index="0" type="calibu_fu_fv_u0_v0_k1_k2_k3">
<rolling_shutter_readout_time>0.032</rolling_shutter_readout_time>
<rolling_shutter_direction>vertical</rolling_shutter_direction>
<width>640</width>
<height>480</height>
<params> [478.818; 478.745; 320.398; 241.369; 0.0226009; -0.0657141; 0.0971462] </params>
</camera_model>
<pose />
</camera>

<intrinsic_imu_calibration name="" imu_id="100" type="linear_imu_sg_mg_sa_ma_gqa">
<b_w_b_a> [-3.07369782e-04; 4.28678044e-04; 9.12135974e-05; -1.85969238e-02; 2.03411118e-01; 5.32338456e-02] </b_w_b_a>
<intrinsics> [1.010190509929088; 0.99952874560230054; 0.99875073981115248; 0.00020295094237530545; -0.0010146324225753722; -0.0015288737491827727; 1.0037397346218304; 0.9998363203309959; 1.0086648122514161; -2.7183776773623861e-05; -0.011104403267733234; 0.0017284620688527564; 9.30533440e-04; 4.04378542e-03; -2.00236441e-03; 9.99989386e-01] </intrinsics>
<gyro_noise_sigma>0.00053088400000000002</gyro_noise_sigma>
<gyro_bias_sigma>0.000141254</gyro_bias_sigma>
<accel_noise_sigma>0.0048836499999999998</accel_noise_sigma>
<accel_bias_sigma>0.012589299999999999</accel_bias_sigma>
</intrinsic_imu_calibration>

<extrinsic_calibration name="Device_T_OpenGl" index="0" frame_A_id="40" frame_B_id="42">
<A_T_B> [0, 1, 0, 0; -1, 0, 0, 0; 0, 0, 1, 0] </A_T_B>
</extrinsic_calibration>
<extrinsic_calibration name="Imu_T_Device" index="0" frame_A_id="100" frame_B_id="40">
<A_T_B> [0, -1, 0, 0; 1, 0, 0, 0; 0, 0, 1, 0] </A_T_B>
</extrinsic_calibration>
<extrinsic_calibration name="Imu_T_3" index="0" frame_A_id="100" frame_B_id="3">
<A_q_B> [-0.99996425050397042; 0.00011372; -0.00485282; 0.00692351] </A_q_B>
<A_p_B> [-0.008424721099186037; 0.007710053076859457; -0.006284916910266555] </A_p_B>
</extrinsic_calibration>
<extrinsic_calibration name="Imu_T_Narrow" index="0" frame_A_id="100" frame_B_id="1">
<A_q_B> [-0.99996425050397042; 0.00011372; -0.00485282; 0.00692351] </A_q_B>
<A_p_B> [-0.008424721099186037; 0.007710053076859457; -0.006284916910266555] </A_p_B>
</extrinsic_calibration>
<extrinsic_calibration name="Imu_T_MotionTracking" index="0" frame_A_id="100" frame_B_id="0">
<A_q_B> [-0.99996425050397042; 0.00011372; -0.00485282; 0.00692351] </A_q_B>
<A_p_B> [-0.008424721099186037; 0.007710053076859457; -0.006284916910266555] </A_p_B>
</extrinsic_calibration>
</rig>

I looked in the codes but could work on OP5 but not our devices, but works on marlin who have the same soc as OP3

My logcat Errors in the calibration_cad.xml file is IMU->CoconutDepth and IMU->Depth Extrinsics:

12-12 12:11:16.782 6109 6124 I native :	CAD: /system/etc/calibration_cad.xml

12-12 12:11:16.782 6109 6124 I native :	Factory: /data/data/com.google.ar.core/files/config/calibration.xml

12-12 12:11:16.782 6109 6124 I native :	Online: /data/data/com.google.ar.core/files/config/online-calibration.xml

12-12 12:11:16.782 6109 6124 I native :	ActiveFile: kOnlineCalibrationFile

12-12 12:11:16.782 6109 6124 I native :	Hardcoded CAD model fallback: Enabled

12-12 12:11:16.782 6109 6124 I native :	Device type: kUnknownDevice

12-12 12:11:16.785 6109 6124 I native : calibration_provider.cc:379 Successfully parsed requested Online calibration: /data/data/com.google.ar.core/files/config/online-calibration.xml.

12-12 12:11:16.786 6109 6124 I native : calibration_provider.cc:379 Successfully parsed requested CAD calibration: /system/etc/calibration_cad.xml.

12-12 12:11:16.787 6109 6124 W native : legacy_checks_and_device_specific_hotfixes.cc:290 Found both IMU->CoconutDepth and IMU->Depth Extrinsics. Overwriting IMU->Depth transform with that of IMU->CoconutDepth. This is a special case built for Coconut devices.

12-12 12:11:16.787 6109 6124 W native : legacy_checks_and_device_specific_hotfixes.cc:309 Found both IMU->CoconutDepth and IMU->IR Extrinsics. Overwriting IMU->IR transform with that of IMU->CoconutDepth. This is a special case built for Coconut devices.

12-12 12:11:16.787 6109 6124 W native : legacy_checks_and_device_specific_hotfixes.cc:331 Found both CoconutDepth and Depth Intrinsics. Overwriting Depth Intrinsics with CoconutDepth. This is a special case built for Coconut devices.

12-12 12:11:16.787 6109 6124 E native : device_profile_proto_io.h:346 Extrinsics has invalid id 9

12-12 12:11:16.787 6109 6124 E native : calibration_jni.cc:73 Could not convert calibration from properties into device profile.

questions and answers for this ARcore problem : https://github.com/tomthecarrot/arcore-for-all/issues?q=is:issue+is:closed