You are not logged in.

#1 2021-12-04 16:41:18

LyCC
Member
Registered: 2012-09-05
Posts: 174

How to set up miracast (wireless display to projector)

Hi everyone,

I have a projector with miracast support, which I am trying to use with gnome network displays, but it doesn't like me, so it refuses to work.

So far:
- i have connected to the projector with WiFi (this works)
- i have gnome network displays installed (which gives me "No usable wireless adapters ware found. Please verify that Wi-Fi is enabled and WiFi P2P operations are available in both NetworManager and wpa_supplicant")
I found some 2 year old tutorial on the net, but i'm stuck ...


The output of  iw dev and iw phy

iw dev
phy#0
        Interface p2p0
                ifindex 5
                wdev 0x2
                addr 22:8b:9d:80:92:17
                type managed
                txpower 20.00 dBm
        Interface wlp2s0f0u8
                ifindex 4
                wdev 0x1
                addr 20:0d:b0:2e:72:69
                ssid PROJECTOR-181E
                type managed
                channel 6 (2437 MHz), width: 20 MHz, center1: 2437 MHz
                txpower 20.00 dBm
iw phy
Wiphy phy0
        wiphy index: 0
        max # scan SSIDs: 4
        max scan IEs length: 2257 bytes
        max # sched scan SSIDs: 0
        max # match sets: 0
        Retry short limit: 7
        Retry long limit: 4
        Coverage class: 0 (up to 0m)
        Device supports T-DLS.
        Supported Ciphers:
                * WEP40 (00-0f-ac:1)
                * WEP104 (00-0f-ac:5)
                * TKIP (00-0f-ac:2)
                * CCMP-128 (00-0f-ac:4)
                * CCMP-256 (00-0f-ac:10)
                * GCMP-128 (00-0f-ac:8)
                * GCMP-256 (00-0f-ac:9)
                * CMAC (00-0f-ac:6)
                * CMAC-256 (00-0f-ac:13)
                * GMAC-128 (00-0f-ac:11)
                * GMAC-256 (00-0f-ac:12)
        Available Antennas: TX 0 RX 0
        Supported interface modes:
                 * managed
                 * monitor
        Band 1:
                Capabilities: 0x17e
                        HT20/HT40
                        SM Power Save disabled
                        RX Greenfield
                        RX HT20 SGI
                        RX HT40 SGI
                        RX STBC 1-stream
                        Max AMSDU length: 3839 bytes
                        No DSSS/CCK HT40
                Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
                Minimum RX AMPDU time spacing: 2 usec (0x04)
                HT TX/RX MCS rate indexes supported: 0-7, 32
                Bitrates (non-HT):
                        * 1.0 Mbps (short preamble supported)
                        * 2.0 Mbps (short preamble supported)
                        * 5.5 Mbps (short preamble supported)
                        * 11.0 Mbps (short preamble supported)
                        * 6.0 Mbps
                        * 9.0 Mbps
                        * 12.0 Mbps
                        * 18.0 Mbps
                        * 24.0 Mbps
                        * 36.0 Mbps
                        * 48.0 Mbps
                        * 54.0 Mbps
                Frequencies:
                        * 2412 MHz [1] (20.0 dBm)
                        * 2417 MHz [2] (20.0 dBm)
                        * 2422 MHz [3] (20.0 dBm)
                        * 2427 MHz [4] (20.0 dBm)
                        * 2432 MHz [5] (20.0 dBm)
                        * 2437 MHz [6] (20.0 dBm)
                        * 2442 MHz [7] (20.0 dBm)
                        * 2447 MHz [8] (20.0 dBm)
                        * 2452 MHz [9] (20.0 dBm)
                        * 2457 MHz [10] (20.0 dBm)
                        * 2462 MHz [11] (20.0 dBm)
                        * 2467 MHz [12] (20.0 dBm) (no IR)
                        * 2472 MHz [13] (20.0 dBm) (no IR)
                        * 2484 MHz [14] (20.0 dBm) (no IR)
        Supported commands:
                 * new_interface
                 * set_interface
                 * new_key
                 * start_ap
                 * new_station
                 * new_mpath
                 * set_mesh_config
                 * set_bss
                 * authenticate
                 * associate
                 * deauthenticate
                 * disassociate
                 * join_ibss
                 * join_mesh
                 * remain_on_channel
                 * set_tx_bitrate_mask
                 * frame
                 * frame_wait_cancel
                 * set_wiphy_netns
                 * set_channel
                 * tdls_mgmt
                 * tdls_oper
                 * probe_client
                 * set_noack_map
                 * register_beacons
                 * start_p2p_device
                 * set_mcast_rate
                 * connect
                 * disconnect
                 * set_qos_map
                 * set_multicast_to_unicast
        software interface modes (can always be added):
                 * monitor
        interface combinations are not supported
        HT Capability overrides:
                 * MCS: ff ff ff ff ff ff ff ff ff ff
                 * maximum A-MSDU length
                 * supported channel width
                 * short GI for 40 MHz
                 * max A-MPDU length exponent
                 * min MPDU start spacing
        Device supports TX status socket option.
        Device supports HT-IBSS.
        Device supports SAE with AUTHENTICATE command
        Device supports low priority scan.
        Device supports scan flush.
        Device supports AP scan.
        Device supports per-vif TX power setting
        Driver supports full state transitions for AP/GO clients
        Driver supports a userspace MPM
        Device supports active monitor (which will ACK incoming frames)
        Device supports configuring vdev MAC-addr on create.
        max # scan plans: 1
        max scan plan interval: -1
        max scan plan iterations: 0
        Supported TX frame types:
                 * IBSS: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * managed: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * mesh point: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * P2P-client: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * P2P-GO: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
                 * P2P-device: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
        Supported RX frame types:
                 * IBSS: 0x40 0xb0 0xc0 0xd0
                 * managed: 0x40 0xb0 0xd0
                 * AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * mesh point: 0xb0 0xc0 0xd0
                 * P2P-client: 0x40 0xd0
                 * P2P-GO: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
                 * P2P-device: 0x40 0xd0
        Supported extended features:
                * [ RRM ]: RRM
                * [ FILS_STA ]: STA FILS (Fast Initial Link Setup)
                * [ CQM_RSSI_LIST ]: multiple CQM_RSSI_THOLD records
                * [ CONTROL_PORT_OVER_NL80211 ]: control port over nl80211
                * [ SCAN_RANDOM_SN ]: use random sequence numbers in scans
                * [ SCAN_MIN_PREQ_CONTENT ]: use probe request with only rate IEs in scans
                * [ CONTROL_PORT_NO_PREAUTH ]: disable pre-auth over nl80211 control port support
                * [ SCAN_FREQ_KHZ ]: scan on kHz frequency support
                * [ CONTROL_PORT_OVER_NL80211_TX_STATUS ]: tx status for nl80211 control port support

What would be the next step? Thank you.

Last edited by LyCC (2021-12-05 19:46:38)

Offline

#2 2021-12-05 07:47:07

foxpy
Member
Registered: 2021-01-18
Posts: 10

Re: How to set up miracast (wireless display to projector)

LyCC wrote:

The output of  iw dev and iw phy

        Available Antennas: TX 0 RX 0
        Supported interface modes:
                 * managed
                 * monitor
        Band 1:
                Capabilities: 0x17e

What would be the next step? Thank you.

To be honest it looks like your WiFi driver does not implement P2P mode. For example, for my WiFi card it says:

	Available Antennas: TX 0 RX 0
	Supported interface modes:
		 * IBSS
		 * managed
		 * AP
		 * monitor
		 * P2P-client
		 * P2P-GO
	Band 1:
		Capabilities: 0x1963

What is your WiFi card and WiFi driver? Assuming it is PCIe device, run:

lspci -k | grep -iA5 network

…and copy paste here.

Also one little gotcha, for your card, iw phy reports capabilities to transmit and receive P2P commands.
Really looks like poor driver support for me.

Offline

#3 2021-12-05 19:38:05

LyCC
Member
Registered: 2012-09-05
Posts: 174

Re: How to set up miracast (wireless display to projector)

Hi, thank you,
it's an USB device

Bus 001 Device 002: ID 148f:7601 Ralink Technology, Corp. MT7601U Wireless Adapter

the other one is. Now that you given me an idea, I have a different one (a more expensive one):

Bus 001 Device 009: ID 2c4e:0102 Mercucys INC 802.11n NIC

strange, for this one the iw dev or phy doesn't display anything ... it's like no wifi device connected, even thou the WiFi network is working, is connected and I am posting this message from the wireless connection.

edit: i have no special driver installed for these, the kernel recognizes them and WiFi is working.

just out of curiosity I will try it from my laptop and post an update.

edit: nope, the laptop integrated wifi doesn't have those features either, only: IBSS, managed, AP, AP/VLan, monitor and mash point. That device is an RTL8822CE 802.11ac PCIe wireless adapter.

The funny thing is, that when I am connected to the projector via WiFi, I have a "network display" sound output, image below (chromium) - not that it works or anything, but something is happening ??? -
Screenshot-20211205-215905.png

Last edited by LyCC (2021-12-05 20:15:47)

Offline

#4 2021-12-07 08:22:07

foxpy
Member
Registered: 2021-01-18
Posts: 10

Re: How to set up miracast (wireless display to projector)

Well, I believe that if you don't have any adapter with such driver that supports p2p modes, it should not be possible to even attempt to use miracast. I have got similar experience in past, when I didn't have a WiFi adapter with good driver implementing p2p mode and I couldn't use miracast, just had to watch my friend with a mac enjoying his miracast experience, haha smile! I am very sorry but I can't test anything for you right now because I don't have any miracast device nearby.

Offline

#5 2021-12-07 08:27:05

foxpy
Member
Registered: 2021-01-18
Posts: 10

Re: How to set up miracast (wireless display to projector)

LyCC wrote:

The funny thing is, that when I am connected to the projector via WiFi, I have a "network display" sound output, image below (chromium) - not that it works or anything, but something is happening ???

Chromium supports miracast. It probably does some probe on local network and detects miracast devices. I believe it would fail to connect because you don't have WiFi devices with p2p support.

Offline

#6 2021-12-07 18:18:39

LyCC
Member
Registered: 2012-09-05
Posts: 174

Re: How to set up miracast (wireless display to projector)

Ok, thank you everyone for the inputs.
Yes, chromium has a "cast" option, so most likely does do some detection.

I got a step forward, I think it is KDE, since the connection is not made via wpa_supplicant * (the service is not even enabled). Does anyone know how KDE is handling WiFi connections? Is it via NetworkManager?
However I failed to connect with wpa_cli, it gives me auth failed, don't understand why as I set the passkey (or is that supposed to be set in clear text?).

* gnome_network_displays - states that (if I understand correctly)

Thanks.

Last edited by LyCC (2021-12-07 18:20:10)

Offline

#7 2021-12-07 18:45:49

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 20,612

Re: How to set up miracast (wireless display to projector)

Plasma prefers Networkmanager. All other things being equal, that is what it will use.


Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
The shortest way to ruin a country is to give power to demagogues.— Dionysius of Halicarnassus
---
How to Ask Questions the Smart Way

Offline

#8 2021-12-08 16:56:00

LyCC
Member
Registered: 2012-09-05
Posts: 174

Re: How to set up miracast (wireless display to projector)

I found a wifi adapter that actually displays the P2P modes, but from what I understand, now I must recompile wpa_supplicant with P2P support enabled, which will only last till the next update or until something breaks due to the updates ...
I give up ... going to buy a DVI-to HDMI adapter and a longer HDMI cable, install it through the drywall, as it requires less time and only set up once.

Thanks for the inputs, much appreciated.

Last edited by LyCC (2021-12-08 16:57:21)

Offline

#9 2021-12-08 20:56:49

foxpy
Member
Registered: 2021-01-18
Posts: 10

Re: How to set up miracast (wireless display to projector)

LyCC wrote:

from what I understand, now I must recompile wpa_supplicant with P2P support enabled, which will only last till the next update or until something breaks due to the updates ...

Are you sure? Where did you find information about that?

Offline

#10 2021-12-09 07:24:16

LyCC
Member
Registered: 2012-09-05
Posts: 174

Re: How to set up miracast (wireless display to projector)

Well, I'm not sure, since I have no experience with this, like I said, from what I understand ...

gnome network displays still doesn't see anything and gives the message that P2P support must be enabled on both wpa supplicant and NetworkManager.
So i searched the net on how to set up gnome network displays and there are quite a few tutorials out there (no more then a year old), I do not want
to advertise any of them. Each tutorial describes how to install gnome network displays from git, after which how to recompile wpa supplicant with P2P support enabled.

Now, If i do that, either pacman overwrites it with the next update, or I do recompile each time (which is frustrating),
or I do not update the wpa_supplicant and it will work until some compatibility issue arises with some future update, and only then I recompile from source again.
So unless there is a more civilized way to handle this, I've given up on it.

Last edited by LyCC (2021-12-09 07:24:54)

Offline

#11 2021-12-09 10:11:32

foxpy
Member
Registered: 2021-01-18
Posts: 10

Re: How to set up miracast (wireless display to projector)

LyCC wrote:

So i searched the net on how to set up gnome network displays and there are quite a few tutorials out there (no more then a year old), I do not want
to advertise any of them. Each tutorial describes how to install gnome network displays from git, after which how to recompile wpa supplicant with P2P support enabled.

I personally don't like random tutorials on the Internet (and it is a good thing that you didn't post any link to them), especially when there is a page on Arch wiki about the topic you need. It points to this software. The first thing I would do is to try using it. It says to disable NetworkManager (yeah, casting without active internet connection doesn't sound fun at all). But if you can make it work: WiFi drivers support multiple interfaces and NetworkManager has a thing called "unmanaged interface", so there is a possibility to run this feature as intended.

I do not urge you to try things, but if you are still interested, there is a strategy I would personally try to follow:
- try miraclecast;
- if it works, try to make it work together with networkmanager.

Also, I have just realised my WiFi driver does not support interface combinations! iw phy tells this:

	software interface modes (can always be added):
		 * monitor
	interface combinations are not supported

So, in my case, if I ever wanted to use miraclecast together with active Internet connection, I couldn't!
Feels like Linux WiFi driver support is still way too far from perfect… you either buy modern Intel card (which cannot run AP at 5 GHz band because of firmware restriction!) or suffer with whatever adapter you are stuck with.

Offline

#12 2021-12-09 15:04:55

LyCC
Member
Registered: 2012-09-05
Posts: 174

Re: How to set up miracast (wireless display to projector)

Thank you, i omitted that package as it was flagged as "out of date", but I managed to install it, but honestly I have no idea what to do in it.
The upstream documentation is lacking, here is the help output:

[miraclectl] # help
Available commands:
  list                                      List all objects
  select [link]                             Select default link
  show [link|peer]                          Show detailed object information
  set-friendly-name [link] <name>           Set friendly name of an object
  set-managed [link] <yes|no>               Manage or unmnage a link
  p2p-scan [link] [stop]                    Control neighborhood P2P scanning
  connect <peer> [provision] [pin]          Connect to peer
  disconnect <peer>                         Disconnect from peer
  quit                                      Quit program
  help                                      Print help

I played around with it, but unfortunately the scan doesn't work (plus I have no idea how to use it, I guess: select link, set managed to yes, p2p-scan and then connect).

ERROR: cannot change p2p-scanning state on link 4 to 1: Invalid argument (ctl_link_set_p2p_scanning() in ctl-wifi.c:739)

I will look into it some more when I will have time. Thank you again foxpy.

PS: I have 3 usb adapters, of which only one displays P2P operation (I have no idea what it is, the clone of something, it was about 0.65 usd from china, a noname, I guess it's blind luck),
plus a raspberry pi, in which the wifi also supports this mode. I agree with you, unfortunately the WiFi HW support is awful currently. I will experiment some more ... sometime ...

Last edited by LyCC (2021-12-09 15:11:04)

Offline

#13 2021-12-09 16:48:50

foxpy
Member
Registered: 2021-01-18
Posts: 10

Re: How to set up miracast (wireless display to projector)

LyCC wrote:

I agree with you, unfortunately the WiFi HW support is awful currently.

Yeah. I believe things would get better over time, because 10 years ago in Linux connecting to WiFi just to get working Internet connection was a challenge. Today, it works out of the box almost always and adapter support is very wide. Fancy stuff like p2p modes, meshes and whatever is still very bad, though.

Offline

Board footer

Powered by FluxBB