Update: This modification may work for the Nexus 9 and other Android devices lacking Miracast but support WiFi-Direct. As always, make a backup in recovery prior to attempting this modification.
With Android 4.2 in 2012, Google brought Miracast support to smartphones and tablets. Being announced as a Nexus and operating system feature, I expected it to remain on the Nexus 6. However, it wasn’t included. Using a root tool, I was able to add support for Miracast to my Nexus 6.
For those unfamiliar with Miracast, it is a standard established for wireless HDMI. The WiFi Alliance established the standard for others to adopt in technology of all types. It enables a device to display it’s screen on a TV or monitor wirelessly, though with a slight delay. It isn’t much different than plugging your phone into a TV to display the screen, except without the wires. Microsoft added support for this standard to Windows with the release of Windows 8.1.
Since Google added the same feature to their Chromecast, perhaps Google didn’t see the need to add support for a competing standard. The difference between Miracast and Google’s Chromecast screen mirroring, however, is Miracast doesn’t need an internet connection or router to connect to. Miracast is a direct connection between the two devices being used. Google Cast with the Chromecast requires an internet connection for two devices to communicate. Until recently, both devices also needed to be on the same internet network.
Fortunately, it just took adding one line of code to Android to enable Miracast. You will need root access and to know how to find the build.prop file, edit it with a text editor or use a build.prop editor app. Just add the following line to the build.prop file and reboot.
Miracast will now be enabled, but you may need to turn it on in settings:
- Go to Android Settings
- Go to Display
- Go to Cast Screen
- Tap the button in the top right corner (vertical 3-dots)
- Check mark Enable wireless display
Now you will be able share your Nexus 6’s screen with your Miracast-enabled device. Audio will also be sent to the Miracast device. One thing I hadn’t tested yet is DRM content. HDMI and Miracast can normally process license-protected content, but I am unsure if adding this line to the build.prop will enable DRM access.