The HMD (Head Mounted Display example: GearVR) has long been a conundrum for people like me. I want to do gear demos, i want to share 360 video with more people, but handing a bunch of headsets (phone based or stand alone) to the un-initated can get a bit chaotic.
Generally speaking there are a few ways to handle this problem:
- An army of volunteers to trouble shoot each individual HMD
- stand alone, one button to play HMD’s that are -hopefully- user proof (tip of day, nothing is user proof)
- Proprietary controller software that ranges from a few hundred to thousands of dollars depending on how many HMDs you want to control (assuming that it will even work with your HMDs)
- On the Samsung GearVR product support page, somewhat sparse directions and a user.cfg file that basically doesn’t work.
Thanks to a very kind and generous donor, I received funds to purchase a number of HMDs for my Virtual Salish See and 360 for Seniors programs. Amazing, right? Until you realize the full responsibility of managing said funds, spending them on the ‘right’ devices, stretching them to get as much benefit as possible… For the past few months i’ve been agonizing over what HMDs to use. I pretty much had/have my heart set on the Oculus Go, assuming it is at least a bit better than the GearVR + phone.
A decent stand alone that connects to a broader network (aka content and store) is basically my holy grail. So far about as hard to find as the Holy Grail too…
As months passed and my donor kept asking ‘so, how are things progressing’, i realized that with no set release date for the Go I really needed to start looking at my other options, at least to get a start. Time waits for no woman suffering analysis paralysis and release dates.
My current solution:
Gear VR (ebay for about $20-25, for what i do, the 2016 is fully adequate)
Samsung Galaxy S6 (ebay, refurbished for 137)
Yeah, its far from the top of the line, but they work well for sharing 360 video and this way i could save a bunch of the donation for when the ‘next gen’ decides to actually release.
Now, about that Controller/receiver mode.
Why is this so important to me? Because i don’t have the aforementioned army of volunteers. I try to plan my projects so that worst case scenario I can manage them single-handedly. I’ll take all the help i can get, but when reality sets in, I need to be able to perform minor miracles.
Pouring over the Samsung page got me about halfway there.
It was clear that controlling multiple headsets was possible, i just couldn’t make it work no matter how closely i followed their directions.
First off, there are TWO SamsungVR apps. One is the mobile app, one is the VR app. I could make the mobile app control the mobile apps no problem.
Samsung VR mobile is a regular Android application. You can stream 360 videos without having to mount your device on a Gear VR headset. You can browse and play videos available from the Samsung VR service, Gallery Videos , and videos available from a DLNA Media Server.
Samsung VR mobile can be a great companion application for Samsung VR for Gear VR. With Samsung VR for Gear VR installed on your device, you can:
launch a video directly into Samsung VR for Gear VR from Samsung VR mobile.
download videos to watch in-headset for offline viewing.
sign in from one application and be automatically signed into the other.
upload content to the Samsung VR Service.
MilkVR folder created, Content placed in folder on ALL devices, now on to that pesky .cfg file.
Now we have MilkVR folder (supposedly no longer necessary, but a nice way to keep stuff organized) full of good content, all phones matchy-matchy content wise. Oh look, still nothing playing.
So the .cfg listed maybe that file worked on a previous model or with another headset but nothing i could do made it work with my combo of phone (S6) and GearVR.
“To support synchronized playback, a user.cfg file with the following commands must be placed in the MilkVR folder of each device to be controlled:
It took a couple days of reading and convoluted tests, but i finally figured out how to make it work for my phones… a single command line.
So first off, lets investigate what these command lines do:
Headless:true means that the SamsungVR app won’t open all the way to the menu screen, it will just go black upon opening the app as opposed to that startup window with lots of options
Headless-auto-play:false This keeps the gearVR from autoplaying
sync-service:true is what was missing from the best of my ability to decipher. This turns ‘on’ the sync service.
and finally, i added another little goodie,
touch-events:false which lets me turn OFF the touch pad on the side of the GearVR which basically causes way more trouble than its worth for demos due to the fact that EVERYONE touches it when trying to adjust the headset and messes up what they are trying to watch, accidentally exits out, accidentally brings up the control screen, etc…
I could also tell it to not respond to the ‘back’ button on the headset but for now i’ll leave that active and revisit after a few demo events.