I have a HP 250 G3 Notebook with Ralink RT3290 wireless chipset but it appears to be disabled or hard blocked in Ubuntu 20.04. The card is recognised by iwconfig, lspci, lshw and ip (see output below). rfkill says it is hard blocked and can't unblock it and tells me to use the hardware switch. However, pressing Fn + F12 does nothing and the wireless indicator light is stuck on.
I've removed and blacklisted the hp_wmi module (popular suggestion - handles HP Action keys) and rebooted but the F11 key and light is still stuck and rfkill still cannot unblock.
The rt2x00 project seems to be abandoned? yet wireless.wiki.kernel.org says the rt3290 is recognised by the rt2800pci driver. I've not found anything on backportss and Meadiatek don't seem to offer any support for the card anymore.
Windows 10 Pro was working fine. I've been reading forums up and down but most seem to be out-of-date and using older kernels. Apparently it's not uncommon for HP notebooks and one work around I'm yet to try is taping up a couple pins on the card. My last resort would be another card as there were at least 2 other cards available for this model but unsure about regulatory issues. reluctant to use a USB card.
Do you have any suggestion for seeing where the issue is? I'm still trying to work out if the issue is with the wireless or acpi/wmi drivers.
One thing I noticed was in lsmod is the rt2800pci module was not used but it was a dependancy of others including rt2x00pci and others from the rt2x00 project.
The only thing that shows up in dmesg was rt2800pci changing the name of the interface from wlan0 to the newer wlp9s0f0.
Something else that was interesting was when trying to put the card up using
ip link set was in the response (see below for full context) but what is RTNETLINK?
$ sudo ip addr show 3: wlp9s0f0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether c4:8e:8f:1b:e3:c5 brd ff:ff:ff:ff:ff:ff $ sudo iwconfig wlp9s0f0 IEEE 802.11 ESSID:off/any Mode:Managed Access Point: Not-Associated Tx-Power=off Retry short long limit:2 RTS thr:off Fragment thr:off Encryption key:off Power Management:off $ sudo lspci 09:00.0 Network controller: Ralink corp. RT3290 Wireless 802.11n 1T/1R PCIe 09:00.1 Bluetooth: Ralink corp. RT3290 Bluetooth $ sudo lshw -c network *-network DISABLED description: Wireless interface product: RT3290 Wireless 802.11n 1T/1R PCIe vendor: Ralink corp. physical id: 0 bus info: pci@0000:09:00.0 logical name: wlp9s0f0 version: 00 serial: c4:8e:8f:1b:e3:c5 width: 32 bits clock: 33MHz capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless configuration: broadcast=yes driver=rt2800pci driverversion=5.4.0-58-generic firmware=N/A latency=0 link=no multicast=yes wireless=IEEE 802.11 resources: irq:16 memory:b2510000-b251f. fff $ sudo ip link set wlp9s0f0 up RTNETLINK answers: Operation not possible due to RF-kill $ sudo dmesg | grep wlp9s0f0 [ 16.283508] rt2800pci 0000:09:00.0 wlp9s0f0: renamed from wlan0
Also tried removing and blacklisting hp_wireless and hp_wmi modules. dmesg says nothing when F12 is pressed but strangely when F2 or F3 are pressed to change brightness, the screen brightness is adjusted (without using Fn key) and dmesg asked me to use
setkeycodes e02b <keycode> to make it known. So now I'm looking closer at the ACPI-WMI thing.