TL;DR: Found some handy code on this forum, modified and tested in powershell for starting a mobile hotspot. The important part of the script is the ability to select the 6ghz band. Anybody have any ideas on how to get around this radiorestriction issue? I'm in Australia, 6ghz wifi is not restricted and Windows has my location.
[Windows.System.UserProfile.LockScreen,Windows.System.UserProfile,ContentType=WindowsRuntime] | Out-Null
# Define functions. Not important to this question
Add-Type -AssemblyName System.Runtime.WindowsRuntime
$asTaskGeneric = ([System.WindowsRuntimeSystemExtensions].GetMethods() | ? { $_.Name -eq 'AsTask' -and $_.GetParameters().Count -eq 1 -and $_.GetParameters()[0].ParameterType.Name -eq 'IAsyncOperation`1' })[0]
Function Await($WinRtTask, $ResultType) {
$asTask = $asTaskGeneric.MakeGenericMethod($ResultType)
$netTask = $asTask.Invoke($null, @($WinRtTask))
$netTask.Wait(-1) | Out-Null
$netTask.Result
}
Function AwaitAction($WinRtAction) {
$asTask = ([System.WindowsRuntimeSystemExtensions].GetMethods() | ? { $_.Name -eq 'AsTask' -and $_.GetParameters().Count -eq 1 -and !$_.IsGenericMethod })[0]
$netTask = $asTask.Invoke($null, @($WinRtAction))
$netTask.Wait(-1) | Out-Null
}
# Create tethering manager
$connectionProfile = [Windows.Networking.Connectivity.NetworkInformation,Windows.Networking.Connectivity,ContentType=WindowsRuntime]::GetInternetConnectionProfile()
$tetheringManager = [Windows.Networking.NetworkOperators.NetworkOperatorTetheringManager,Windows.Networking.NetworkOperators,ContentType=WindowsRuntime]::CreateFromConnectionProfile($connectionProfile)
# Create configuration
$configuration = new-object Windows.Networking.NetworkOperators.NetworkOperatorTetheringAccessPointConfiguration
$configuration.Ssid = "Hotspot"
$configuration.Passphrase = "Psswrd1234"
$configuration.Band = 3
# Check whether Mobile Hotspot is enabled
$tetheringManager.TetheringOperationalState
# Set Hotspot configuration
AwaitAction ($tetheringManager.ConfigureAccessPointAsync($configuration))
# Start Mobile Hotspot
Await ($tetheringManager.StartTetheringAsync()) ([Windows.Networking.NetworkOperators.NetworkOperatorTetheringOperationResult])
It does set the band to 6ghz (name and password censored):
But it will not enable. The powershell result i get is:
("Off" is the TetheringOperationalState)
The slightly longer version of this story is that I have a Quest 3, and I'm interested in seeing how 6ghz will perform for the wireless link to PC. I have 5ghz wifi currently and it's ok at the 200Mbps setting, except when there are high movement scenes with a lot of detail (like driving a rally car with a lot of trees and grass moving around). It'd be nice to use the 6ghz hardware i already have sitting in my pc rather than drop a couple hundred to get a 6ghz router.
I've googled around for ways to remove or get around the radio restriction and it didn't help. I tried tunnelbear to change my location and I tried changing my default location in windows to other countries that also don't have 6ghz restrictions.
This is on a Windows 11 preview build (canary build:25997.1010) (which is how I'm able to select 6ghz at all ($configuration.Band = 3
)) Any help would be appreciated :-)
Source
Duplicate, but maybe comments are useful.
One of the tricks is to run the script provided in the original post. Check out the source, it might be useful.
Or you can connect your phone to get Wi-Fi 6 working properly. Check this video.