Starlink – Part 12 – Local Wi-Fi on 5 GHz

Out of the box, a Starlink terminal comes with the satellite dish, affectionately called ‘Dishy’, and a Wi-Fi Router. As an Ethernet port is not part of the package and has to be ordered separately, Wi-Fi is the only default connectivity option. So how does that Wi-Fi Access Point perform?

Apart from the SSID and password, very little else is configurable. By default, the router opens a channel in the 2.4 and 5 GHz bands, so even older devices can connect to the network. Also, a channel in the 2.4 GHz band can typically cover a wider area than a channel in the 5 GHz band due to being at a lower frequency and by using narrower channels. This of course comes at the expense of a significantly lower data throughput. Today, I’ll focus on the 5 GHz part, with some notes on the 2.4 GHz part following in the next post.

On Linux, there are a number of shell commands that reveal the supported features of a Wi-Fi network without switching the wireless adapter to promiscuous mode and firing up Wireshark. The most helpful is ‘iw’, which can be used for scanning the environment. Here’s my command line to get a list of supported features of the Wi-Fi access point I’m currently connected to:

sudo iw dev wlp3s0 scan | grep -A 150 associated

The command is not perfect, as it simply outputs 150 lines after the word ‘associated’ has been found. Depending on the capabilities of the associated network, 150 lines might be too much, however, and a part of the information of another network will be shown at the bottom. For more sophisticated networks on the other hand, 150 lines might not be enough. Also, make sure you use Ubuntu 22.04 or newer, as the version included in the previous Long Term Support (LTS) version doesn’t list Wi-Fi 6 (802.11ax) parameters.

That being said, ‘iw’ reveals that my Starlink kit (2nd or 3rd (?) generation, rectangular dish) uses an 802.11ac chip, i.e. Wi-Fi 5. Channel bandwidth in the 5 GHz band is 80 MHz, and 3 spatial streams are supported. Not sure what to do with the 3rd stream, as most notebooks and mobile devices only support 2 streams at best. But perhaps some extra performance can be gained with multi-user MIMO or when connecting repeaters. With a typical notebook that supports 2 spatial streams, the maximum theoretical throughput in the network is 866 Mbps with a 400 ns preamble. In practice, about 2/3 of that can typically be seen on the IP layer close to the access point.

I’m not sure how many simultaneous devices the access point supports, there are different reports on the net. As the network uses the 192.168.1.x subnet, it would be 256 devices at most.

One could of course be disappointed that Wi-Fi 6 is not supported, and that features such as a 160 MHz channel or 4 MIMO streams are missing. I do use such features at home to increase the overall speed in my wireless network, so it would be good to have those supported as well. But on the other hand, an 80 MHz Wi-Fi 5 channel is more than capable to handle the up to 200 Mbps that this Starlink kit delivers in the downlink direction in reasonably good Wi-Fi signal conditions.

That being said, if I needed a Wi-Fi network for high speed local traffic, I would go for Starlink’s Ethernet port option and then connect a dedicated and optimized Wi-Fi access point and repeaters. Starlink also offers their own repeaters, which I did not try, so I can’t say if they use separate channels for repeating and backhauling, and if the setup would be are capable of Dynamic Frequency Selection (DFS), radar detection and higher power output in the upper part of the 5 GHz band. All of these features would be required for high local network throughput. It would be interesting to have a closer look, but it’s not my usage scenario.

So there we go, an almost ‘boring’ Wi-Fi setup. Boring it may be, but the network proved to work very well for forwarding Internet connectivity and is very stable with my different notebooks and mobile devices. So, well done Starlink!

And here’s the ‘iw’ scan dump for the details:

# Use 'iw' with Ubuntu 22.04 or higher to catch 802.11ax 
# parameters as well
#
x@x:~$ sudo iw dev wlp0s20f3 scan | grep -A 150 associated

BSS 00:00:00:00:00:00(on wlp0) -- associated
	last seen: 1620.538s [boottime]
	TSF: 992484482 usec (0d, 00:16:32)
	freq: 5180
	beacon interval: 100 TUs
	capability: ESS Privacy ShortPreamble RadioMeasure (0x1031)
	signal: -49.00 dBm
	last seen: 372 ms ago
	Information elements from Probe Response frame:
	SSID: the_quick_brown_fox
	Supported rates: 6.0* 9.0 12.0* 18.0 24.0* 36.0 48.0 54.0 
	DS Parameter set: channel 36
	RSN:	 * Version: 1
		 * Group cipher: CCMP
		 * Pairwise ciphers: CCMP
		 * Authentication suites: PSK
		 * Capabilities: 1-PTKSA-RC 1-GTKSA-RC (0x0000)
	HT capabilities:
		Capabilities: 0x11ef
			RX LDPC
			HT20/HT40
			SM Power Save disabled
			RX HT20 SGI
			RX HT40 SGI
			TX STBC
			RX STBC 1-stream
			Max AMSDU length: 3839 bytes
			DSSS/CCK HT40
		Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
		Minimum RX AMPDU time spacing: 4 usec (0x05)
		HT RX MCS rate indexes supported: 0-23, 32
		HT TX MCS rate indexes are undefined
	HT operation:
		 * primary channel: 36
		 * secondary channel offset: above
		 * STA channel width: any
		 * RIFS: 0
		 * HT protection: no
		 * non-GF present: 1
		 * OBSS non-GF present: 0
		 * dual beacon: 0
		 * dual CTS protection: 0
		 * STBC beacon: 0
		 * L-SIG TXOP Prot: 0
		 * PCO active: 0
		 * PCO phase: 0
	Extended capabilities:
		 * BSS Transition
		 * Interworking
		 * Operating Mode Notification
		 * Max Number Of MSDUs In A-MSDU is unlimited
	WMM:	 * Parameter version 1
		 * BE: CW 15-1023, AIFSN 3
		 * BK: CW 15-1023, AIFSN 3
		 * VI: CW 7-15, AIFSN 2, TXOP 3008 usec
		 * VO: CW 3-7, AIFSN 2, TXOP 1504 usec
	RM enabled capabilities:
		Capabilities: 0x02 0x00 0x00 0x00 0x00
			Neighbor Report
		Nonoperating Channel Max Measurement Duration: 0
		Measurement Pilot Capability: 0
	AP Channel Report:
		 * operating class: 128
		 * channel(s): 42 58 106 122
	Power constraint: 3 dB
	TPC report: TX power: 63 dBm
	Transmit Power Envelope:
		 * Local Maximum Transmit Power For 20 MHz: 15 dBm
		 * Local Maximum Transmit Power For 40 MHz: 15 dBm
		 * Local Maximum Transmit Power For 80 MHz: 15 dBm
	Country: DE	Environment: Indoor/Outdoor
		Channels [42 - 54] @ -1 dBm
	VHT capabilities:
		VHT Capabilities (0x33c279b1):
			Max MPDU length: 7991
			Supported Channel Width: neither 160 nor 80+80
			RX LDPC
			short GI (80 MHz)
			TX STBC
			SU Beamformer
			SU Beamformee
			+HTC-VHT
			RX antenna pattern consistency
			TX antenna pattern consistency
		VHT RX MCS set:
			1 streams: MCS 0-9
			2 streams: MCS 0-9
			3 streams: MCS 0-9
			4 streams: not supported
			5 streams: not supported
			6 streams: not supported
			7 streams: not supported
			8 streams: not supported
		VHT RX highest supported: 1170 Mbps
		VHT TX MCS set:
			1 streams: MCS 0-9
			2 streams: MCS 0-9
			3 streams: MCS 0-9
			4 streams: not supported
			5 streams: not supported
			6 streams: not supported
			7 streams: not supported
			8 streams: not supported
		VHT TX highest supported: 1170 Mbps
	VHT operation:
		 * channel width: 1 (80 MHz)
		 * center freq segment 1: 42
		 * center freq segment 2: 0
		 * VHT basic MCS set: 0xffea

Next up: A look at the 2.4 GHz Wi-Fi of the Starlink router.

One thought on “Starlink – Part 12 – Local Wi-Fi on 5 GHz”

Comments are closed.