Skip to content
Alberto Fanjul edited this page Nov 5, 2017 · 57 revisions

Does my hardware supports miraclecast requirements:

Check it running res/test-hardware-capabilities.sh

Log for support

$ sudo journalctl -f |& tee journal.log
$ sudo miracle-wifid --log-level trace |& tee wifid.log
$ sudo miracle-sinkctl --log-level trace --log-journal-level trace |& tee sink.log

add wifid.log, sink.log and journal.log to a zip and upload to a new or existing issue. Is handy to include exact command line used miracle-wifid --log-level trace miracle-sinkctl --log-level trace run 3 etc.

Security concerns: If you're afraid to upload your mac address on logs, add this filter before tee

sed 's/..:..:..:..:..:../00:00:00:00:00:00/g'

to hide your mac address.

To provide logs for dbus you can use

$ sudo dbus-monitor --system |& tee dbus.log

Ubuntu requirements

- ubuntu-restricted-extras
- gstreamer1.0
- libglib2.0-dev 
- libreadline-dev
- libudev-dev
- libsystemd-dev
- libusb-dev
- build-essential

optional:

- git
- check
- cmake

Raspberry pi instructions

See details on raspberry pi 3

Bring down wifi interfaces

Failed to create interface p2p-dev-wlan0: -16 (Device or resource busy)

Means that interface used by miraclecast is not ready to use. Normally that means that something (many times miraclecast) left a wireless interface configured without p2p

Check if something restarted normal wifi config. It's easy to detect because wpa_supplicant spawned by miracast has a control interface socket configured by '-C /run/miracle/wifi/...' and wpa_supplicant by network managers normally was a '-u' (dbus interface)

Depending on your system there will be a series of services and target that tries to reconfig wpa_supplicant if you just kill it:

$ sudo systemctl stop NetworkManager
$ sudo systemctl stop network

one of them should work. You can enable again after use miraclecast with:

$ sudo systemctl start NetworkManager
$ sudo systemctl start network 

Miracast vs Chromecast

Many people see these technologies as similar but they are far from being the same, although the final result seems pretty similar.

Chromecast and other technologies (like AirPlay9 are based on have all the devices under same Wifi (i.e using an AP), while miracast is based on Wifi-Direct (No AP). This results in two devices communicating with the security level they decide two provide (maybe none at all), instead of allowing access to a local network to unknown devices. Miracast is too a battery drainer for this reason, as the need to keep communication working all the time

Microsoft OS support

Windows support is still a WIP. You can find PR on #136. It is just a Q&D from reverse enginnering sessions from microsoft implementation. Is tested against Windows 10, but people reports it works with Microsoft wireless display adapter too. Feedback wellcome

Clone this wiki locally