raspberry pi 3 - AtesComp/miraclecast GitHub Wiki

Running on Raspberry PI 3

raspberry pi 3 screenshot

Install

There's a ready to go image on raspberry pi image

To install you need to write it to an sdcard:

  • download file

  • check your sdcard dev with:

      $ df -h
    

If you connect by usb it should be /dev/sdb, by card slot it should be /dev/mmcblk

  • write image to sdcard

      $ sudo su -
      $ gzip -dc ~/archarm230716.gz | dd bs=4M of=/dev/mmcblk
    

For Windows see this

If you want to see progress install pv

    $ gzip -dc archarm230716.gz | pv -s $(du -sb archarm230716.gz | awk '{ print $1}') | dd bs=4M of=/dev/mmcblk

more info

It should run out of the box

Usage

If you have an raspberry pi 1 or 2 and a wifi-direct usb dongle you can config kernel doing:

  • edit kernel config

      $ sudo vi /boot/config.txt
    
  • add this line

    kernel=kernel7.img

more info

At this time raspberry has an arch arm distro with mate desktop (gtk2).

  • user: alarm
  • pass: alarm

it is added to sudoers.

For package managing I have added yaourt, a package manager for AUR (Arch linux user repository).

To update miraclecast you just need to do:

$ yaourt -S miraclecast-git

Do it at least at first install of image to stay up to date

that uses my AUR repo https://aur.archlinux.org/packages/miraclecast-git/ which is tied to master branch

See yaourt is configured to don't ask anything http://kissmyarch.blogspot.com.es/2012/05/two-simple-yaourt-tips.html.

It has ssh and vnc enabled from boot. You can see what net raspberry gets with:

$ nmap -p 22 --open -sV 192.168.0.0/24
$ nmap -p 5900 --open -sV 192.168.0.0/24

See 192.168.0 depends on your net config

connect through ssh or vnc is a easy way to interact with raspberry pi at this time, but you can always plug raspberry to a monitor and operate with a usb keyboard and mouse.

Once connected stop network (at this time normal Wifi setup is not compatible with Wifi Direct)

$ sudo systemctl stop networkd.service
$ sudo systemctl stop network.target

Note this means you should connect ssh or vnc through ethernet

should be enough. Anyway, check there's no wpa_supplicant running before starting miracle-wifid with:

$ ps -ef | grep wpa_supplican[t]

Then run miraclecast commands as usual

$ sudo miracle-wifid
$ sudo miracle-sinkctl

and run the interface it detects

Notes

If for whatever reason it doesn't work check if wlan0 is not up with

$ ifconfig

and if it does bring it down:

$ sudo ifconfig wlan0 down

This is an annoying bug that makes miraclecast start wlan0 and p2p-dev-wlan0-0 but not bring wlan0 down when disconnect. Help wanted