Matteo Pisani, CTO and co-founder of Remoria VR, has reversed engineered a Google Daydream controller to make it function on an iOS device. For those unfamiliar, Google Daydream is a VR headset with a controller that is compatible with Android and not with iOS platform. Also, it is only compatible with Google’s Pixel and Motorola’s Moto Z smartphones running on Android 7.0 Nougat. Back in May, Clay Bavor, Google’s Virtual Reality department VP, had categorically stated that currently Google Daydream isn’t “compatible with iOS and won’t be for several years probably.” So, how did Pisani make the Daydream work on an iOS device? He decided to hack the Daydream and make it compatible with iOS. To start the complex technical process, he used an app called BlueCap to get his iPhone recognize the Daydream controller and after some failed attempts he was able to see incoming data packets in real time. On continuing the investigation further, he found out that the masked data actually included a magnetometer, accelerometer, gyroscope and touchpad button apart from other data. Next, he began the reverse engineering process and figuring out how to actually extract and use that data. After a few failed attempts, he was successful in getting the Daydream controller data to read correctly on his iPhone. Pisani also identified that the iPhone’s packets-per-second were more than enough to effortlessly and efficiently run a VR game or 3D experience. Check out the Daydream controller running on iOS in the video below:
Although the controller hasn’t been tested with VR apps, the fact that Pisani was able to connect it and make it function appropriately on the otherwise incompatible iOS device is pretty promising. Another impressive aspect is that he used an iPhone 5 for this work instead of the current iPhone 7 or 7 Plus. This indicates that the Daydream controller can also be hacked for other versions of Android other than the required Nougat 7.0.