0
votes

I am woking on a project using Google Tango project for VR applications. Until then I used the Lenovo Phab 2 Pro with a DIY Cardboard VR headset and GVR sdk.

I am interested in the smartphone Asus Zenfone AR since it is Tango enabled and works with Daydream VR headset. I would like to use them together in a Unity project, either using Daydream headset as a standard cardboard headset, or better, using the Daydream functionalities.

I would like to know if it is possible to make the Tango sdk to work with the daydream functionalities, since the device was clearly not designed to do that (the daydream headset hides the phone sensors and camera).

Is there any demo app on the Asus Zenfone AR with the daydream headset that is actually using the Tango features?


Edit

I finally got an Asus Zenfone AR and I'm facing similar issue as junior-senior when trying to make both the GVR and Tango sdks working together.

It tried the following:

  • Tango sdk alone
    • android:minSdkVersion="19" android:targetSdkVersion="23" -> working
    • android:minSdkVersion="19" android:targetSdkVersion="24" -> not working, "Unable to load Tango library"
  • Tango sdk + Google VR sdk avec VR enabled Daydream/cardboard
    • android:minSdkVersion="19" android:targetSdkVersion="24" -> Daydream working but "Unable to load Tango library"
  • Tango sdk + Google VR sdk avec VR enabled Daydream/cardboard
    • android:minSdkVersion="19" android:targetSdkVersion="23" -> Unity project not compiling on Asus because can not merge manifests because library target sdk version is 24

So basically on Asus Zenphttps://stackexchange.com/users/9918762?tab=inboxhone,

  • Tango needs target sdk version < 24 to work
  • Google VR needs target sdk version = 24 to work
  • VR enabled with Daydream needs target sdk version = 24 to work

So the only solution I found right now to get a cardboard view with Tango on this phone is the following:

  • Using Tango sdk without Goole VR sdk but with VR enabled and cardboard selected.
2

2 Answers

1
votes

I've been working on a project over the past 2 months trying to get one application to run both Tango and Daydream, depending on the mode selected, using an Asus Zenfone AR. As far as I am aware, it is challenging to do this because Daydream uses a minimum API level of 24, but Tango uses a minimum API level of 23. Setting the Tango API level to 24 doesn't work, nor does setting Daydream to 23. There may be a way around this using Defines to state change the setting depending on the mode you choose, but I haven't tried as it would have taken too much time.

The solution I used was to build a VR scene with Tango and send the mesh data to an FTP server, then download it on the device using Daydream.

If anyone knows any different I'd be happy to hear it.

0
votes

I actually found an article that describes how to use Tango with Daydream on an Asus AR Zenfone (see Appendix 1: Mobile inside-out VR tracking using the Tango SDK in Unity).

  • For the API level, the solution given is :

Error: [Temp\StagingArea\AndroidManifest-main.xml:4, C:......\MyProject\Temp\StagingArea\android-libraries\unitygvr\AndroidManifest.xml:3] Main manifest has but library uses minSdkVersion='19'

To solve this problem we need to edit the AndroidManifest.xml file that Tango has added in the folder Assets/Plugins/Android and change the original line

<uses-sdk android:minSdkVersion="17" android:targetSdkVersion="23" />

to

<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="23" />

  • For the Daydream VR Viewer, they simply cut a hole through the plastic cover of the viewer :

Last but not least, the Daydream headset wasn’t designed for this kind of use case and it covers the whole back part of the phone. As for tracking the Tango sensors need to have a clear path I had to do some small changes as you can see in the picture below (Fig. 15).