Open dudego opened 7 years ago
On my 3T logcat says:
09-01 17:40:49.482: W/tango_camera_native_jni(13301): Camera system initilized.
09-01 17:40:49.482: E/tango_camera_native(13301): 2 is not a valid camera index.
09-01 17:40:49.482: E/tango_camera_native(13301): 3 is not a valid camera index.
09-01 17:40:49.489: I/tango_camera_native_jni(13301): Attaching texture_window 0xc9ec2008
09-01 17:40:49.642: D/tango-ndk-hal(13323): jint JNI_OnLoad(JavaVM*, void*)
09-01 17:40:49.651: D/tango-ndk-hal(13323): void Java_com_google_atap_tango_TangoVirtualHalService_initialize(JNIEnv*, jclass) 0x0
09-01 17:40:49.658: I/tango_camera_native_jni(13301): jint Java_com_google_tango_jni_TangoCameraNative_ConnectVhs(JNIEnv*, jobject, jobject, jobject)
09-01 17:40:49.658: I/tango_camera_native_jni(13301): Attaching tracking_window 0xc9ec6808
09-01 17:40:49.753: I/tango(13323): java_service_entrypoint.cc:216 Creating new g_tango.
09-01 17:40:49.775: W/tango(13323): helpers.cc:418 Defaulting to persistent calibration file.
09-01 17:40:49.775: W/tango(13323): helpers.cc:395 Property calibration_cad is not defined.
09-01 17:40:49.775: I/tango(13323): calibration_provider.cc:486 Instantiating calibration provider with sources:
09-01 17:40:49.775: I/tango(13323): CAD:
09-01 17:40:49.775: I/tango(13323): Factory:
09-01 17:40:49.775: I/tango(13323): Online: /data/data/com.google.tango/files/config/online-calibration.xml
09-01 17:40:49.775: I/tango(13323): ActiveFile: kOnlineCalibrationFile
09-01 17:40:49.775: I/tango(13323): Hardcoded CAD model fallback: Enabled
09-01 17:40:49.775: E/tango(13323): device_provider.cc:336 Could not identify device type from build fingerprint 'OnePlus/OnePlus3/OnePlus3T:7.1.1/NMF26F/08081200:user/release-keys'.
09-01 17:40:49.775: E/tango(13323): helpers.cc:288 Hardcoded CAD model unavailable for device kUnknownDevice
09-01 17:40:49.776: W/tango(13323): calibration_provider.cc:379 Requested parsing of Online calibration, but failed to parse it and the following fallbacks:
09-01 17:40:49.776: W/tango(13323): - Online calibration: File does not exist: /data/data/com.google.tango/files/config/online-calibration.xml.
09-01 17:40:49.776: W/tango(13323): - Factory calibration: File not set.
09-01 17:40:49.776: W/tango(13323): - CAD calibration: File not set.
09-01 17:40:49.776: W/tango(13323): - Hardcoded CAD model: Could not load hardcoded CAD model. It is only available when:
09-01 17:40:49.776: W/tango(13323): - Explicitly setting the active file to kHardcodedCadModel.
09-01 17:40:49.776: W/tango(13323): - On device, as a fallback when reading the CAD calibration file fails.
09-01 17:40:49.776: W/tango(13323): calibration_provider.cc:379 Requested parsing of CAD calibration, but failed to parse it and the following fallbacks:
09-01 17:40:49.776: W/tango(13323): - CAD calibration: File not set.
09-01 17:40:49.776: W/tango(13323): - Hardcoded CAD model: Could not load hardcoded CAD model. It is only available when:
09-01 17:40:49.776: W/tango(13323): - Explicitly setting the active file to kHardcodedCadModel.
09-01 17:40:49.776: W/tango(13323): - On device, as a fallback when reading the CAD calibration file fails.
09-01 17:40:49.776: A/tango(13323): calibration_provider.cc:589 Check failed: parse_cad_error_code == LoadCalibrationXmlErrorCode::kSuccess
09-01 17:40:49.862: A/DEBUG(13348): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
09-01 17:40:49.862: A/DEBUG(13348): Build fingerprint: 'OnePlus/OnePlus3/OnePlus3T:7.1.1/NMF26F/08081200:user/release-keys'
09-01 17:40:49.862: A/DEBUG(13348): Revision: '0'
09-01 17:40:49.862: A/DEBUG(13348): ABI: 'arm64'
09-01 17:40:49.863: A/DEBUG(13348): pid: 13323, tid: 13323, name: om.google.tango >>> com.google.tango <<<
09-01 17:40:49.863: A/DEBUG(13348): signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
09-01 17:40:49.869: A/DEBUG(13348): Abort message: 'calibration_provider.cc:589 Check failed: parse_cad_error_code == LoadCalibrationXmlErrorCode::kSuccess '
09-01 17:40:49.869: A/DEBUG(13348): x0 0000000000000000 x1 000000000000340b x2 0000000000000006 x3 0000000000000008
09-01 17:40:49.869: A/DEBUG(13348): x4 0000430000000000 x5 0000000000808000 x6 0000007fb6124000 x7 0000000000000000
09-01 17:40:49.869: A/DEBUG(13348): x8 0000000000000083 x9 ffffffffffffffdf x10 0000000000000000 x11 0000000000000001
09-01 17:40:49.869: A/DEBUG(13348): x12 ffffffffffffffff x13 0000000000000000 x14 0000000000000000 x15 002e4817eb7061bb
09-01 17:40:49.869: A/DEBUG(13348): x16 0000007fb2eb3ee0 x17 0000007fb2e5d984 x18 0000000000000000 x19 0000007fb61d8b40
09-01 17:40:49.869: A/DEBUG(13348): x20 0000000000000006 x21 0000007fb61d8a98 x22 0000000000000002 x23 0000007fdf93cc58
09-01 17:40:49.869: A/DEBUG(13348): x24 0000000000000068 x25 0000007fa727fa98 x26 0000007fa73fbd20 x27 0000007fa737b5a0
09-01 17:40:49.869: A/DEBUG(13348): x28 0000007fa737b578 x29 0000007fdf93c630 x30 0000007fb2e5ae14
09-01 17:40:49.869: A/DEBUG(13348): sp 0000007fdf93c610 pc 0000007fb2e5d98c pstate 0000000060000000
09-01 17:40:49.878: A/DEBUG(13348): backtrace:
09-01 17:40:49.878: A/DEBUG(13348): #00 pc 000000000006b98c /system/lib64/libc.so (tgkill+8)
09-01 17:40:49.878: A/DEBUG(13348): #01 pc 0000000000068e10 /system/lib64/libc.so (pthread_kill+64)
09-01 17:40:49.878: A/DEBUG(13348): #02 pc 00000000000242e8 /system/lib64/libc.so (raise+24)
09-01 17:40:49.878: A/DEBUG(13348): #03 pc 000000000001cd54 /system/lib64/libc.so (abort+52)
09-01 17:40:49.878: A/DEBUG(13348): #04 pc 0000000000005a84 /system/lib64/liblog.so (__android_log_assert+232)
09-01 17:40:49.878: A/DEBUG(13348): #05 pc 0000000000100718 /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so (_ZN13MessageLoggerD2Ev+4120)
09-01 17:40:49.878: A/DEBUG(13348): #06 pc 0000000000c8433c /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so
09-01 17:40:49.878: A/DEBUG(13348): #07 pc 0000000000c85be8 /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so
09-01 17:40:49.878: A/DEBUG(13348): #08 pc 0000000000129150 /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so (_ZN13tango_service12TangoContextC1ESt10shared_ptrINS_15JniTangoServiceEE+512)
09-01 17:40:49.878: A/DEBUG(13348): #09 pc 000000000013c80c /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so (_ZN12tango_binder7ServiceC2ESt10shared_ptrIN13tango_service15JniTangoServiceEE+228)
09-01 17:40:49.878: A/DEBUG(13348): #10 pc 000000000013a238 /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so (Java_com_google_atap_tango_TangoServiceJNINative_CreateNativeService+972)
09-01 17:40:49.878: A/DEBUG(13348): #11 pc 00000000007f5e98 /data/app/com.google.tango-1/oat/arm64/base.odex (offset 0x7a7000)
09-01 17:40:51.976: I/tango(13389): java_service_entrypoint.cc:216 Creating new g_tango.
09-01 17:40:51.984: W/tango(13389): helpers.cc:418 Defaulting to persistent calibration file.
09-01 17:40:51.984: W/tango(13389): helpers.cc:395 Property calibration_cad is not defined.
09-01 17:40:51.984: I/tango(13389): calibration_provider.cc:486 Instantiating calibration provider with sources:
09-01 17:40:51.984: I/tango(13389): CAD:
09-01 17:40:51.984: I/tango(13389): Factory:
09-01 17:40:51.984: I/tango(13389): Online: /data/data/com.google.tango/files/config/online-calibration.xml
09-01 17:40:51.984: I/tango(13389): ActiveFile: kOnlineCalibrationFile
09-01 17:40:51.984: I/tango(13389): Hardcoded CAD model fallback: Enabled
09-01 17:40:51.984: E/tango(13389): device_provider.cc:336 Could not identify device type from build fingerprint 'OnePlus/OnePlus3/OnePlus3T:7.1.1/NMF26F/08081200:user/release-keys'.
09-01 17:40:51.984: E/tango(13389): helpers.cc:288 Hardcoded CAD model unavailable for device kUnknownDevice
09-01 17:40:51.984: W/tango(13389): calibration_provider.cc:379 Requested parsing of Online calibration, but failed to parse it and the following fallbacks:
09-01 17:40:51.984: W/tango(13389): - Online calibration: File does not exist: /data/data/com.google.tango/files/config/online-calibration.xml.
09-01 17:40:51.984: W/tango(13389): - Factory calibration: File not set.
09-01 17:40:51.984: W/tango(13389): - CAD calibration: File not set.
09-01 17:40:51.984: W/tango(13389): - Hardcoded CAD model: Could not load hardcoded CAD model. It is only available when:
09-01 17:40:51.984: W/tango(13389): - Explicitly setting the active file to kHardcodedCadModel.
09-01 17:40:51.984: W/tango(13389): - On device, as a fallback when reading the CAD calibration file fails.
09-01 17:40:51.984: W/tango(13389): calibration_provider.cc:379 Requested parsing of CAD calibration, but failed to parse it and the following fallbacks:
09-01 17:40:51.984: W/tango(13389): - CAD calibration: File not set.
09-01 17:40:51.984: W/tango(13389): - Hardcoded CAD model: Could not load hardcoded CAD model. It is only available when:
09-01 17:40:51.984: W/tango(13389): - Explicitly setting the active file to kHardcodedCadModel.
09-01 17:40:51.984: W/tango(13389): - On device, as a fallback when reading the CAD calibration file fails.
09-01 17:40:51.984: A/tango(13389): calibration_provider.cc:589 Check failed: parse_cad_error_code == LoadCalibrationXmlErrorCode::kSuccess
09-01 17:40:52.051: A/DEBUG(13406): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
09-01 17:40:52.051: A/DEBUG(13406): Build fingerprint: 'OnePlus/OnePlus3/OnePlus3T:7.1.1/NMF26F/08081200:user/release-keys'
09-01 17:40:52.051: A/DEBUG(13406): Revision: '0'
09-01 17:40:52.051: A/DEBUG(13406): ABI: 'arm64'
09-01 17:40:52.052: A/DEBUG(13406): pid: 13389, tid: 13389, name: om.google.tango >>> com.google.tango <<<
09-01 17:40:52.052: A/DEBUG(13406): signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
09-01 17:40:52.054: A/DEBUG(13406): Abort message: 'calibration_provider.cc:589 Check failed: parse_cad_error_code == LoadCalibrationXmlErrorCode::kSuccess '
09-01 17:40:52.054: A/DEBUG(13406): x0 0000000000000000 x1 000000000000344d x2 0000000000000006 x3 0000000000000008
09-01 17:40:52.054: A/DEBUG(13406): x4 0000000000000000 x5 0000000000808080 x6 0000007fb6124000 x7 0000000000000000
09-01 17:40:52.054: A/DEBUG(13406): x8 0000000000000083 x9 ffffffffffffffdf x10 0000000000000000 x11 0000000000000001
09-01 17:40:52.054: A/DEBUG(13406): x12 ffffffffffffffff x13 0000000000000000 x14 0000000000000000 x15 003ab5904bee0a8b
09-01 17:40:52.054: A/DEBUG(13406): x16 0000007fb2eb3ee0 x17 0000007fb2e5d984 x18 0000000000000000 x19 0000007fb61d8b40
09-01 17:40:52.054: A/DEBUG(13406): x20 0000000000000006 x21 0000007fb61d8a98 x22 0000000000000002 x23 0000007fdf93cc58
09-01 17:40:52.054: A/DEBUG(13406): x24 0000000000000068 x25 0000007fa727fa98 x26 0000007fa73fc680 x27 0000007fa737bba0
09-01 17:40:52.054: A/DEBUG(13406): x28 0000007fa737bb78 x29 0000007fdf93c630 x30 0000007fb2e5ae14
09-01 17:40:52.054: A/DEBUG(13406): sp 0000007fdf93c610 pc 0000007fb2e5d98c pstate 0000000060000000
09-01 17:40:52.059: A/DEBUG(13406): backtrace:
09-01 17:40:52.059: A/DEBUG(13406): #00 pc 000000000006b98c /system/lib64/libc.so (tgkill+8)
09-01 17:40:52.059: A/DEBUG(13406): #01 pc 0000000000068e10 /system/lib64/libc.so (pthread_kill+64)
09-01 17:40:52.059: A/DEBUG(13406): #02 pc 00000000000242e8 /system/lib64/libc.so (raise+24)
09-01 17:40:52.059: A/DEBUG(13406): #03 pc 000000000001cd54 /system/lib64/libc.so (abort+52)
09-01 17:40:52.059: A/DEBUG(13406): #04 pc 0000000000005a84 /system/lib64/liblog.so (__android_log_assert+232)
09-01 17:40:52.059: A/DEBUG(13406): #05 pc 0000000000100718 /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so (_ZN13MessageLoggerD2Ev+4120)
09-01 17:40:52.059: A/DEBUG(13406): #06 pc 0000000000c8433c /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so
09-01 17:40:52.059: A/DEBUG(13406): #07 pc 0000000000c85be8 /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so
09-01 17:40:52.059: A/DEBUG(13406): #08 pc 0000000000129150 /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so (_ZN13tango_service12TangoContextC1ESt10shared_ptrINS_15JniTangoServiceEE+512)
09-01 17:40:52.059: A/DEBUG(13406): #09 pc 000000000013c80c /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so (_ZN12tango_binder7ServiceC2ESt10shared_ptrIN13tango_service15JniTangoServiceEE+228)
09-01 17:40:52.059: A/DEBUG(13406): #10 pc 000000000013a238 /data/app/com.google.tango-1/lib/arm64/libtango_service_library.so (Java_com_google_atap_tango_TangoServiceJNINative_CreateNativeService+972)
09-01 17:40:52.059: A/DEBUG(13406): #11 pc 00000000007f5e98 /data/app/com.google.tango-1/oat/arm64/base.odex (offset 0x7a7000)
09-01 17:40:52.791: A/tango(13301): jni_helper.cc:19 'vm' Must be non NULL
09-01 17:40:52.861: A/DEBUG(13415): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
09-01 17:40:52.861: A/DEBUG(13415): Build fingerprint: 'OnePlus/OnePlus3/OnePlus3T:7.1.1/NMF26F/08081200:user/release-keys'
09-01 17:40:52.861: A/DEBUG(13415): Revision: '0'
09-01 17:40:52.861: A/DEBUG(13415): ABI: 'arm'
09-01 17:40:52.861: A/DEBUG(13415): pid: 13301, tid: 13315, name: UnityMain >>> com.paramsen.helloar <<<
09-01 17:40:52.861: A/DEBUG(13415): signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
09-01 17:40:52.864: A/DEBUG(13415): Abort message: 'jni_helper.cc:19 'vm' Must be non NULL'
09-01 17:40:52.864: A/DEBUG(13415): r0 00000000 r1 00003403 r2 00000006 r3 00000008
09-01 17:40:52.864: A/DEBUG(13415): r4 e43ff978 r5 00000006 r6 e43ff920 r7 0000010c
09-01 17:40:52.864: A/DEBUG(13415): r8 e43fdd18 r9 e43fdd14 sl 00000515 fp e43fe028
09-01 17:40:52.864: A/DEBUG(13415): ip 00000002 sp e43fd898 lr e594b517 pc e594dd98 cpsr 200f0010
09-01 17:40:52.866: A/DEBUG(13415): backtrace:
09-01 17:40:52.867: A/DEBUG(13415): #00 pc 00049d98 /system/lib/libc.so (tgkill+12)
09-01 17:40:52.867: A/DEBUG(13415): #01 pc 00047513 /system/lib/libc.so (pthread_kill+34)
09-01 17:40:52.867: A/DEBUG(13415): #02 pc 0001d765 /system/lib/libc.so (raise+10)
09-01 17:40:52.867: A/DEBUG(13415): #03 pc 000192a1 /system/lib/libc.so (__libc_android_abort+34)
09-01 17:40:52.867: A/DEBUG(13415): #04 pc 00017308 /system/lib/libc.so (abort+4)
09-01 17:40:52.867: A/DEBUG(13415): #05 pc 00005855 /system/lib/liblog.so (__android_log_assert+112)
09-01 17:40:52.867: A/DEBUG(13415): #06 pc 00009e69 /data/app/com.paramsen.helloar-1/lib/arm/libtango_client_api2.so
09-01 17:40:52.867: A/DEBUG(13415): #07 pc 0001256d /data/app/com.paramsen.helloar-1/lib/arm/libtango_client_api2.so
09-01 17:40:52.867: A/DEBUG(13415): #08 pc 00009247 /data/app/com.paramsen.helloar-1/lib/arm/libtango_client_api2.so (TangoService_isSupported+26)
09-01 17:40:52.867: A/DEBUG(13415): #09 pc 0000716c <anonymous:d8aeb000>
Thanks for sharing your log! It is consistent with other crash logs, which is good. Isolating the issue. Please stay tuned.
@tomthecarrot you think it's possible to force a specific build fingerprint like sailfish or marlin build to load the harcoded configuration ?
My opinion is, Google's packed camera setting with calibration profile (FOV,focal length, etc) using for calculating in AR. That's mean hacking need more than a mimic fingerprint.
Tried running sample.apk got same error as @SohnyBohny. On Android sample, getting no crash but it shows black screen with no viewfinder. I'm on OxygenOS 4.1.7
Log:
09-01 22:17:04.601 14270-14270/? I/art: Late-enabling -Xcheck:jni
09-01 22:17:04.707 14270-14270/com.google.ar.core.examples.java.helloar W/System: ClassLoader referenced unknown path: /data/app/com.google.ar.core.examples.java.helloar-2/lib/arm64
09-01 22:17:04.716 14270-14270/com.google.ar.core.examples.java.helloar I/InstantRun: starting instant run server: is main process
09-01 22:17:04.717 14270-14270/com.google.ar.core.examples.java.helloar V/InstantRun: Starting server socket listening for package com.google.ar.core.examples.java.helloar on android.net.LocalSocketAddress@7f47ae8
09-01 22:17:04.717 14270-14270/com.google.ar.core.examples.java.helloar V/InstantRun: Started server for package com.google.ar.core.examples.java.helloar
09-01 22:17:04.764 14270-14270/com.google.ar.core.examples.java.helloar W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
09-01 22:17:04.808 14270-14270/com.google.ar.core.examples.java.helloar E/SupportedDevices: Device calibration unavailable. Just kidding! ;)
09-01 22:17:04.826 14270-14270/com.google.ar.core.examples.java.helloar E/SupportedDevices: Device calibration unavailable. Just kidding! ;)
09-01 22:17:04.830 14270-14270/com.google.ar.core.examples.java.helloar I/TangoClientLibLoader: Pure Java path, not loading libtango_client_api.so at all.
09-01 22:17:04.835 14270-14270/com.google.ar.core.examples.java.helloar D/ApplicationLoaders: ignored Vulkan layer search path /data/app/com.google.tango-1/lib/arm64:/system/fake-libs64:/data/app/com.google.tango-1/base.apk!/lib/arm64-v8a for namespace 0x7f81b630f0
09-01 22:17:04.842 14270-14270/com.google.ar.core.examples.java.helloar I/ndk_camera: Starting native camera system initialization.
09-01 22:17:04.843 14270-14270/com.google.ar.core.examples.java.helloar D/ndk_camera: Camera 0 has 88 metadata tags
09-01 22:17:04.843 14270-14270/com.google.ar.core.examples.java.helloar E/ACameraMetadata: getConstEntry: cannot find metadata tag 1310721
09-01 22:17:04.843 14270-14270/com.google.ar.core.examples.java.helloar W/ndk_camera: Failed to get metadata tag 1310721 for camera 0 with error code -10004
09-01 22:17:04.843 14270-14270/com.google.ar.core.examples.java.helloar E/ACameraMetadata: getConstEntry: cannot find metadata tag 1638401
09-01 22:17:04.843 14270-14270/com.google.ar.core.examples.java.helloar W/ndk_camera: Failed to get metadata tag 1638401 for camera 0 with error code -10004
09-01 22:17:04.843 14270-14270/com.google.ar.core.examples.java.helloar D/ndk_camera: Camera 1 has 87 metadata tags
09-01 22:17:04.843 14270-14270/com.google.ar.core.examples.java.helloar E/ACameraMetadata: getConstEntry: cannot find metadata tag 1310721
09-01 22:17:04.843 14270-14270/com.google.ar.core.examples.java.helloar W/ndk_camera: Failed to get metadata tag 1310721 for camera 1 with error code -10004
09-01 22:17:04.843 14270-14270/com.google.ar.core.examples.java.helloar E/ACameraMetadata: getConstEntry: cannot find metadata tag 1638401
09-01 22:17:04.844 14270-14270/com.google.ar.core.examples.java.helloar W/ndk_camera: Failed to get metadata tag 1638401 for camera 1 with error code -10004
09-01 22:17:04.844 14270-14270/com.google.ar.core.examples.java.helloar I/ndk_camera: Camera system initialized successfully with 2 cameras.
09-01 22:17:04.844 14270-14270/com.google.ar.core.examples.java.helloar W/tango_camera_native_jni: Camera system initilized.
09-01 22:17:04.844 14270-14270/com.google.ar.core.examples.java.helloar E/tango_camera_native: 2 is not a valid camera index.
09-01 22:17:04.844 14270-14270/com.google.ar.core.examples.java.helloar E/tango_camera_native: 3 is not a valid camera index.
09-01 22:17:04.848 14270-14270/com.google.ar.core.examples.java.helloar I/tango_camera_native_jni: Attaching texture_window 0x7f83254e10
09-01 22:17:04.848 14270-14270/com.google.ar.core.examples.java.helloar D/TangoVhs: about to bind as vhs
09-01 22:17:04.861 14270-14270/com.google.ar.core.examples.java.helloar D/TangoVhs: finished bind as vhs
09-01 22:17:04.864 14270-14302/com.google.ar.core.examples.java.helloar D/AppTracker: App Event: start
09-01 22:17:04.906 14270-14303/com.google.ar.core.examples.java.helloar I/Adreno: QUALCOMM build : 853a1ff, I9c435c2712
Build Date : 01/10/17
OpenGL ES Shader Compiler Version: XE031.09.00.04
Local Branch :
Remote Branch :
Remote Branch :
Reconstruct Branch :
09-01 22:17:04.912 14270-14303/com.google.ar.core.examples.java.helloar I/OpenGLRenderer: Initialized EGL, version 1.4
09-01 22:17:04.912 14270-14303/com.google.ar.core.examples.java.helloar D/OpenGLRenderer: Swap behavior 1
09-01 22:17:05.269 14270-14270/com.google.ar.core.examples.java.helloar D/TangoVhs: connected
09-01 22:17:05.270 14270-14310/com.google.ar.core.examples.java.helloar I/TangoCameraNative: Tango VHS Ready
09-01 22:17:05.432 14270-14310/com.google.ar.core.examples.java.helloar W/System.err: android.os.DeadObjectException
09-01 22:17:05.432 14270-14310/com.google.ar.core.examples.java.helloar W/System.err: at android.os.BinderProxy.transactNative(Native Method)
09-01 22:17:05.432 14270-14310/com.google.ar.core.examples.java.helloar W/System.err: at android.os.BinderProxy.transact(Binder.java:651)
09-01 22:17:05.432 14270-14310/com.google.ar.core.examples.java.helloar W/System.err: at com.google.atap.tangoservice.ITangoVhs$Stub$Proxy.getTrackingSurface(ITangoVhs.java:111)
09-01 22:17:05.432 14270-14310/com.google.ar.core.examples.java.helloar W/System.err: at com.google.atap.tangoservice.TangoVhs.getTrackingSurface(TangoVhs.java:81)
09-01 22:17:05.432 14270-14310/com.google.ar.core.examples.java.helloar W/System.err: at com.google.tango.jni.TangoCameraNative$2.run(TangoCameraNative.java:88)
09-01 22:17:05.432 14270-14310/com.google.ar.core.examples.java.helloar W/System.err: at java.lang.Thread.run(Thread.java:761)
09-01 22:17:05.432 14270-14310/com.google.ar.core.examples.java.helloar I/tango_camera_native_jni: jint Java_com_google_tango_jni_TangoCameraNative_ConnectVhs(JNIEnv*, jobject, jobject, jobject)
09-01 22:17:05.432 14270-14310/com.google.ar.core.examples.java.helloar W/tango_camera_native_jni: tracking_surface == nullptr! Could break AR usecases
09-01 22:17:07.847 14270-14275/com.google.ar.core.examples.java.helloar I/art: Do partial code cache collection, code=29KB, data=29KB
09-01 22:17:07.847 14270-14275/com.google.ar.core.examples.java.helloar I/art: After code cache collection, code=25KB, data=26KB
09-01 22:17:07.847 14270-14275/com.google.ar.core.examples.java.helloar I/art: Increasing code cache capacity to 128KB
@tazzkiller Changing the build fingerprint requires modifying build.prop
, which requires root access. It looks like the retrieval of Build.FINGERPRINT
is done in the shared library, which we cannot reasonably decompile. However, from the logs we can see that it is looking for a default calibration file at a certain path. The file just doesn't exist:
File does not exist: /data/data/com.google.tango/files/config/online-calibration.xml.
Has anyone here seen this file before? We might be able to transfer it, or at least analyze its format, which is unknown to me since Tango calibration happens in the shared library.
@GearWalker I agree that this will require more than a fingerprint bypass to run well; Google has packed camera information into each device calibration file. However, it should still run on other devices, albeit with inferior tracking. Should be able to fix that eventually with other calibration files.
This is the calibration of my lenovo phab 2 pro.
If you have some times... Help us to use arcore.
I hope it can be useful for the other devices:
<camera>
<camera_model type="ocvpinhole_fu_fv_u0_v0_k1_k2_p1_p2_k3" index="9">
<height>172</height>
<width>224</width>
<params> [217.703; 217.703; 112.515; 85.56399999999999; -0.11089; -1.58741; -0.00209361; -0.000538251; 3.2844] </params>
</camera_model>
</camera>
<camera>
<camera_model type="calibu_fu_fv_u0_v0_k1_k2_k3" index="1">
<height>1080</height>
<width>1920</width>
<params> [1731.206360516446; 1732.677289488748; 943.1348595963085; 537.6571431787531; 0.1094496622673276; -0.4108265365645714; 0.475447218116997] </params>
</camera_model>
</camera>
<camera>
<camera_model type="calibu_fu_fv_u0_v0_w" index="0">
<height>480</height>
<width>640</width>
<params> [258.0279723280229; 257.9325894945989; 319.2867258258189; 247.9366888098331; 0.9237464165790711] </params>
</camera_model>
</camera>
<intrinsic_imu_calibration name="" imu_id="100" type="linear_imu_sg_mg_sa_ma_gqa">
<b_w_b_a> [0.003279189508569884; -0.003641411555781314; -0.01420767144270043; -0.05450540812723018; 0.09276885007381314; -0.1031923326113218] </b_w_b_a>
<crossterms> [1.025964032588029, 6.898315558285549e-05, -0.002394102729788997, 0.99993025810868, -0.001333883474316033, 0.01173455042111752; 0, 0.9959605953670061, 0.001331435953266336, 0.001352846547543467, 0.999997791724473, -0.001608214039356206; 0, 0, 1.003200790205349, -0.01173237933786674, 0.001623976925491637, 0.9999298545268153; 0, 0, 0, 0.9991234998599263, 0.001075941239544266, 0.01092913042072655; 0, 0, 0, 0, 0.9983856505746271, 0.0008273949261931844; 0, 0, 0, 0, 0, 1.009554033427301] </crossterms>
<gyro_noise_sigma>5.3088443999999998e-05</gyro_noise_sigma>
<gyro_bias_sigma>0.00014125375</gyro_bias_sigma>
<accel_noise_sigma>0.001883649</accel_noise_sigma>
<accel_bias_sigma>0.012589253999999999</accel_bias_sigma>
</intrinsic_imu_calibration>
<extrinsic_calibration frame_A_id="100" frame_B_id="3">
<A_T_B> [0.9999844756254934, -0.0005021532115802354, -0.005549445932629149, 0.03658832169344564; -0.0004985226887430327, -0.9999996608465904, 0.0006555774805837913, -0.006753995010965239; -0.005549773250852955, -0.0006528007784460961, -0.9999843868121181, -0.001898144060175344] </A_T_B>
</extrinsic_calibration>
<extrinsic_calibration frame_A_id="100" frame_B_id="2">
<A_T_B> [0.9999844756254934, -0.0005021532115802354, -0.005549445932629149, 0.03658832169344564; -0.0004985226887430327, -0.9999996608465904, 0.0006555774805837913, -0.006753995010965239; -0.005549773250852955, -0.0006528007784460961, -0.9999843868121181, -0.001898144060175344] </A_T_B>
</extrinsic_calibration>
<extrinsic_calibration frame_A_id="100" frame_B_id="0">
<A_T_B> [0.9999839923437485, -0.003916609860094113, 0.004083530759244597, -0.002682900280152626; -0.003922749405736185, -0.9999911861252394, 0.001496565714114598, -0.00710568960695596; 0.004077633303483724, -0.001512560425464221, -0.9999905424890785, -0.004690524465063749] </A_T_B>
</extrinsic_calibration>
<extrinsic_calibration frame_A_id="100" frame_B_id="1">
<A_T_B> [-0.999969739495792, 0.0007815952820795802, -0.00774010345748462, 0.04715388712151403; 0.0007814836662144472, 0.9999996944894312, 1.744487913182522e-05, -0.006689607031597; 0.007740114727636435, 1.139558681415265e-05, -0.9999700447984148, -0.0053648135783008] </A_T_B>
</extrinsic_calibration>
<extrinsic_calibration frame_A_id="100" frame_B_id="9">
<A_T_B> [0.9999844756254934, -0.0005021532115802354, -0.005549445932629149, 0.03658832169344564; -0.0004985226887430327, -0.9999996608465904, 0.0006555774805837913, -0.006753995010965239; -0.005549773250852955, -0.0006528007784460961, -0.9999843868121181, -0.001898144060175344] </A_T_B>
</extrinsic_calibration>
</rig>
Thank you very much @vespino75! I'll try it out.
Please try this ARCore Service data directory mod and install it using: adb restore backup-mod.ab
This modification to the data directory seems to make the calibration XML load just fine from the logcat messages I am seeing. It is based on the calibration XML that @vespino75 posted (thanks btw!)
Please also make sure you have a recent backup of your device. Even though it only contains a backup for Tango Service + it didn't clear data on my phone + it shouldn't on yours, there is a chance of unexpected results when restoring.
Have Xiaomi Mi5 with latest MIUI 8 Android 7.0 stock and restoring your backup-mod.ab and installing arcore modified.apk doesn't work.. still crashes similar to this post and says: "File does not exist: /data/data/com.google.tango/files/config/online-calibration.xml" some comments: 1) using android-backup-extractor-20170828-bin and unpacking your mod backup using "abe.jar unpack" I see under config folder you provide online-configuration.xml and configuration.xml not "online-calibration.xml" as the error says.. is that ok?
2) maybe my backup restore doesn't work for me correctly because after making a backup of com.google.tango via "adb backup -f myFiles.ab com.google.tango" after restoring your backup and examining it (android-backup-extractor) I can't find online-configuration.xml and configuration.xml files on the config folder as you backup contains..
so can a restore operation fail silently? any ideas? thanks..
also on this article "https://elandroidelibre.elespanol.com/2017/08/probamos-arcore-la-realidad-aumentada-mas-sencilla-android.html" a java arcore apk is provided https://www.dropbox.com/s/u0j5xk5utzbyxyn/java-arcore-hello.apk?dl=0 and fails with device not supported also similarly the webaroncore https://github.com/google-ar/WebARonARCore/blob/webarcore_57.0.2987.5/apk/WebARonARCore.apk can you check both app apks work with phones your mod works? thanks..
@oscarbg Sorry about that.. Yes you are correct, the XML file should be named "calibration" and not "configuration". I'll correct that on my end also.
It's possible that the restore itself failed or the directory was overwritten after the restore. Or maybe there is a necessary file manifest that doesn't contain the newly-added files?
Hi,
I was trying to make ARCore work on a Moto G5 Plus, but it's crashing when I try to open sample
. I was able to install the modified SDK, though.
What's the best way to submit a diagnostic log?
09-04 10:48:26.177 9051-9051/com.google.ar.core.examples.java.helloar E/SupportedDevices: Device calibration unavailable. 09-04 10:48:26.232 9051-9131/com.google.ar.core.examples.java.helloar I/Adreno: QUALCOMM build : 0a3bdfc, Ifb508eebcd Build Date : 08/13/16 OpenGL ES Shader Compiler Version: XE031.09.00.03 Local Branch : Remote Branch : Remote Branch : Reconstruct Branch : 09-04 10:48:26.237 9051-9131/com.google.ar.core.examples.java.helloar I/OpenGLRenderer: Initialized EGL, version 1.4 09-04 10:48:26.270 9051-9131/com.google.ar.core.examples.java.helloar V/RenderScript: 0x7f68ac4000 Launching thread(s), CPUs 4
I can't install “modified ARCore Service APK”,analysis this installation package APK failed
@feng612266 please first uninstall the existing one via Settings > Apps or adb uninstall com.google.tango
@nkkollaw The best way to submit a diagnostic log is to open a new issue on this repo with your device type, OS, and logcat output of the error. Thanks!
S8-SM-G9500,Still open, stop running directly.
Samsung Galaxy S7 Edge SM-G935A Nougat 7.0 doesn't work. Everything installed perfectly fine, tango stops working, unity logo, app closes.
Asus Nexus 7 doesn't work Nougat 7.1.2 (it was worth a shot!) Everything installs perfectly fine, tango stops working, unity logo, app closes.
In fact, modifying build.prop
to disguise your phone (such as OnePlus3T) as "supported devices" such as Pixel XL works. You can try it.
@PhanTask It seems that ARCore is loading a specific calibration file for each supported device, while unsupported devices do not contain a calibration file. If we could force ARCore to use a Pixel calibration file for every device, it wouldn't be perfect, but at least devs with other devices could start trying it out.
Hi all,
Just found out about this project but i think i have one pointer.
After extracting the original arcore-preview.apk, i did a grep for "sailfish" or "marlin" strings, and found that some native libraries matched:
$ grep -r -i sailfish ./
Binary file ./classes.dex matches
Binary file ./lib/arm64-v8a/libtango_service_library.so matches
Binary file ./lib/arm64-v8a/libcamera_intrinsic_util.so matches
Binary file ./lib/arm64-v8a/libtango_hal.so matches
Binary file ./lib/arm64-v8a/libexternal_lift_optimized_cpu.so matches
So, i decided to try the "strings" commandline tool in linux, and dumped the "libcamera_intrinsic_util.so" this way:
$ strings lib/arm64-v8a/libcamera_intrinsic_util.so > calibs.txt
And found a section with what seems to be calibration files for sailfish (Pixel) and marlin (Pixel XL):
Pixel
<!-- This calibration file was created by finding an average of the factory
calibration from 15 different sailfish devices -->
<rig>
<device_id>0</device_id>
<camera>
<camera_model type="calibu_fu_fv_u0_v0_k1_k2_k3" index="3">
<rolling_shutter_readout_time>0.0326218</rolling_shutter_readout_time>
<rolling_shutter_direction>vertical</rolling_shutter_direction>
<height>1080</height>
<width>1920</width>
<params> [1438.074; 1437.387; 962.7; 541.68; 0.02346390059751408; -0.07105310253878637; 0.1032442584871399] </params>
</camera_model>
</camera>
<camera>
<camera_model type="calibu_fu_fv_u0_v0_k1_k2_k3" index="1">
<rolling_shutter_readout_time>0.0326218</rolling_shutter_readout_time>
<rolling_shutter_direction>vertical</rolling_shutter_direction>
<height>1080</height>
<width>1920</width>
<params> [1438.074; 1437.387; 962.7; 541.68; 0.02346390059751408; -0.07105310253878637; 0.1032442584871399] </params>
</camera_model>
</camera>
<camera>
<camera_model type="calibu_fu_fv_u0_v0_k1_k2_k3" index="0">
<rolling_shutter_readout_time>0.0326218</rolling_shutter_readout_time>
<rolling_shutter_direction>vertical</rolling_shutter_direction>
<height>480</height>
<width>640</width>
<params> [479.3587929491562; 479.1290793034052; 320.9121423763001; 240.5622376910913; 0.02346390059751408; -0.07105310253878637; 0.1032442584871399] </params>
</camera_model>
</camera>
<intrinsic_imu_calibration name="" imu_id="100" type="linear_imu_sg_mg_sa_ma_gqa">
<b_w_b_a> [4.055342447275729e-05; 0.001936147886559007; 0.0002635790412183244; -0.5505037927266886; 0.08210154466632563; -0.2914230575306716] </b_w_b_a>
<intrinsics> [1.014235200012831; 0.9987125199130248; 0.9994260945204136; -4.396568890276594e-06; 8.179045062126865e-05; -0.002441386030384373; 1.003541184743259; 0.9975126271712497; 1.015355583656942; 0.0006687720528010025; -0.009757701727792454; 0.0005066586840230228; 0.0008979918987595646; 0.004493849179807071; 0.001422816616943145; 0.9999884871952144] </intrinsics>
<gyro_noise_sigma>0.00053088444</gyro_noise_sigma>
<gyro_bias_sigma>0.00014125375</gyro_bias_sigma>
<accel_noise_sigma>0.0048836490000000003</accel_noise_sigma>
<accel_bias_sigma>0.012589253999999999</accel_bias_sigma>
</intrinsic_imu_calibration>
<extrinsic_calibration name="Device_T_OpenGl" 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" 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" frame_A_id="100" frame_B_id="3">
<A_q_B> [-0.9999642045966601; 0.001693865408266952; -0.004382474491291886; 0.007036637171317588] </A_q_B>
<A_p_B> [-0.00888318714353073; 0.005325271486780649; -0.005029891072710525] </A_p_B>
</extrinsic_calibration>
<extrinsic_calibration name="Imu_T_2" frame_A_id="100" frame_B_id="2">
<A_q_B> [-0.9999642045966601; 0.001693865408266952; -0.004382474491291886; 0.007036637171317588] </A_q_B>
<A_p_B> [-0.00888318714353073; 0.005325271486780649; -0.005029891072710525] </A_p_B>
</extrinsic_calibration>
<extrinsic_calibration name="Imu_T_Narrow" frame_A_id="100" frame_B_id="1">
<A_q_B> [-0.9999642045966601; 0.001693865408266952; -0.004382474491291886; 0.007036637171317588] </A_q_B>
<A_p_B> [-0.00888318714353073; 0.005325271486780649; -0.005029891072710525] </A_p_B>
</extrinsic_calibration>
<extrinsic_calibration name="Imu_T_MotionTracking" frame_A_id="100" frame_B_id="0">
<A_q_B> [-0.9999642045966601; 0.001693865408266952; -0.004382474491291886; 0.007036637171317588] </A_q_B>
<A_p_B> [-0.00888318714353073; 0.005325271486780649; -0.005029891072710525] </A_p_B>
</extrinsic_calibration>
</rig>
Pixel XL
<!-- 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="" index="2" 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="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_2" index="0" frame_A_id="100" frame_B_id="2">
<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>
So, maybe you can give this a try, instead of the Phab2pro calibration?
I haven't tried it myself, but just getting familiar with the experiments you tried. Great work btw. Hope this helps.
Regards, Sergio
That's fantastic, @saaguirre! Thank you for your detailed research. Your information on the calibration files brings us a step closer to solving this challenge.
@tomthecarrot Have you tried add a "Service/BroadcastReceiver" into the apk which would write calibration contents into the file "/files/config/online-calibration.xml"? Then we just send a "adb am start" command to trigger and won't have to restore the file by "adb restore". We may also be able to make it run once when the device is rebooted.
I've resigned the arcore-preview-modified.apk with my debug keystore, and written another app with the same shareId to write "calibration.xml" into "/data/data/com.google.tango/files/config/online-calibration.xml".
It seems I've passed the online calibration file check, but failed at CAD calibration check. Can anyone provide a CAD calibration? I don't know where to find it yet.
Here's the log:
10-30 18:13:25.347 21015-21058/? I/tango: calibration_provider.cc:486 Instantiating calibration provider with sources: CAD: Factory: Online: /data/data/com.google.tango/files/config/online-calibration.xml ActiveFile: kOnlineCalibrationFile Hardcoded CAD model fallback: Enabled 10-30 18:13:25.353 21015-21058/? E/tango: device_provider.cc:336 Could not identify device type from build fingerprint 'google/bullhead/bullhead:7.1.1/NMF26F/3425388:user/release-keys'. 10-30 18:13:25.353 21015-21058/? E/tango: helpers.cc:288 Hardcoded CAD model unavailable for device kUnknownDevice 10-30 18:13:25.361 21015-21015/? A/tango: calibration_provider.cc:589 Check failed: parse_cad_error_code == LoadCalibrationXmlErrorCode::kSuccess
--------- beginning of crash
10-30 18:13:25.362 21015-21015/? A/libc: Fatal signal 6 (SIGABRT), code -6 in tid 21015 (om.google.tango) 10-30 18:13:25.362 21015-21058/? I/tango: calibration_provider.cc:360 Successfully parsed requested Online calibration: /data/data/com.google.tango/files/config/online-calibration.xml. 10-30 18:13:25.362 21015-21058/? W/tango: calibration_provider.cc:379 Requested parsing of CAD calibration, but failed to parse it and the following fallbacks:
@tomthecarrot
Setting the build property ro.config.calibration_cad to point to a calibration file seems to fix the issue.
I have a rooted device, after adding the below property to build.prop stopped the crash problem for me
"ro.config.calibration_cad=/system/etc/calibration_cad.xml
"
EDIT:
calibration_cad.xml file is obtained by following @saaguirre suggestions.
Hi @raghav-alevoor, could you send me a copy of "calibration_cad.xml"?Or you can paste it here in case others may need it.
@Rysle I'm using the xml file for "Pixel XL" as posted by @saaguirre in this thread.
It seems ARCore looks for "ro.config.calibration_cad"
system property to load the calibration file for unknown devices. The system property should point to the xml file location
Hy,
If you want i have made a module for Magisk to enable ArCore to all devices. After installation your device is recognize to a Pixel XL and the calibration file is auto mounted to the right folder on system.
you can download the zip here : https://drive.google.com/open?id=13yhaX7o5hk76Goz2GAnfXpn-ycwb8GuY
PS : Of course official apk service by google work with this module.
Hi everyone, sorry for the delay in responses; I have been working on college applications :)
@Rysle I like your solution of a Service started by a received Broadcast, as it would also run on non-rooted devices. Does loading the calibration XML make ARCore functional on your device?
@raghav-alevoor I'm glad it's stable with the build.prop modification. Is ARCore functioning normally, i.e. is it detecting surfaces and tracking points on your device?
@tomthecarrot With the "Pixel XL" configuration file, image is inverted on my device (it's a custom device not OnePlus 3T). The sample app can detect surfaces and track point, due to the autofocus camera on my device it is not very reliable.
I'm tinkering with parameters. With the below config file, the camera image orientation is ok. No noticable change in surface detection and motion tracking
`
Official ARCore service (tango core) works on Xiaomi Red Mi Note4 with Pixel Experience 8.1 AOSP custom ROM after installing magisk module that recognises device as Pixel XL, created by @tazzkiller posted in this thread. ARCore apps available on playstore and apps developed with unity based on ARCore preview (Tango core) works perfectly. ARCore preview 2 based apps are not working.... Why?
@irfan-r It's possible that Google made a change in the ARCore library that broke this modification on some devices. Feel free to research and try additional modifications to arcore-for-all to see if those will work on your device.
arcore installs successfully but on running sample it logs: