Skip to content

Instantly share code, notes, and snippets.

@cristianchaparroa
Last active April 25, 2022 04:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cristianchaparroa/f6eed4df870a49747d59164e522798a6 to your computer and use it in GitHub Desktop.
Save cristianchaparroa/f6eed4df870a49747d59164e522798a6 to your computer and use it in GitHub Desktop.
[WIP] Alfa Network Atheros AR9271 on Debian 11

Debian 11 Installation

On Debian 11 we should add the respective repositories to install the firmware, we should edit the source list

nano /etc/apt/source.list

# adding the next repository
deb http://deb.debian.org/debian/ bullseye non-free 

The next step is load the references to the new repository added to source list

apt update

Install the firmware

apt install firmware-atheros

Troubleshooting

The firmware could generate some issues that we could fix.

1. Infinite loop reconect/disconnect

I'm using the default network manager and when I try to see the new adapter on it, the new appears and disappears and I noted that it tried to rename itself to wlan0, even I already have one. I starting to check the errors and I get the following:

sudo demesg | ath

The result could be similar:

[ 1593.543590] ath: phy139: RX failed to go idle in 10 ms RXSM=0xc076c3
[ 1593.646657] ath: phy139: RX failed to go idle in 10 ms RXSM=0xc076c3
[ 1593.750674] ath: phy139: RX failed to go idle in 10 ms RXSM=0xc076c3
[ 1593.828401] usb 1-4: ath9k_htc: USB layer deinitialized
[ 1594.287461] usb 1-4: ath9k_htc: Firmware ath9k_htc/htc_9271-1.4.0.fw requested
[ 1594.292635] usb 1-4: firmware: direct-loading firmware ath9k_htc/htc_9271-1.4.0.fw
[ 1594.582792] usb 1-4: ath9k_htc: Transferred FW: ath9k_htc/htc_9271-1.4.0.fw, size: 51008
[ 1594.834235] ath9k_htc 1-4:1.0: ath9k_htc: HTC initialized with 33 credits
[ 1595.097089] ath9k_htc 1-4:1.0: ath9k_htc: FW Version: 1.4
[ 1595.097102] ath9k_htc 1-4:1.0: FW RMW support: On
[ 1595.097110] ath: EEPROM regdomain: 0x833a
[ 1595.097114] ath: EEPROM indicates we should expect a country code
[ 1595.097120] ath: doing EEPROM country->regdmn map search
[ 1595.097126] ath: country maps to regdmn code: 0x37
[ 1595.097132] ath: Country alpha2 being used: GB
[ 1595.097136] ath: Regpair used: 0x37
[ 1595.141920] ath9k_htc 1-4:1.0 wlx00c0ca75dc05: renamed from wlan0
[ 1596.059421] ath: phy140: RX failed to go idle in 10 ms RXSM=0xc076c3
[ 1596.162673] ath: phy140: RX failed to go idle in 10 ms RXSM=0xc076c3
[ 1596.266973] ath: phy140: RX failed to go idle in 10 ms RXSM=0xc076c3
[ 1596.336325] usb 1-4: ath9k_htc: USB layer deinitialized
c

The above log confirm to me as I see on network-manager:

ath9k_htc 1-4:1.0 wlx00c0ca75dc05: renamed from wlan0

After research I overwrite the ID-INET-NAME.It maintained the uniqueness of the interface name while shortening it.

  1. copied /lib/udev/rules.d/80-net-setup-link.rules to /etc/udev/rules.d/

  2. changed $env{ID_NET_NAME} to $env{ID_NET_SLOT}

After restart the system I tried to list the network interfaces and I got the both atheros working, the wlan0 the internal chip on the laptop and wlan1 the external adapter.

sudo nmcli device status

DEVICE         TYPE      STATE         CONNECTION 
wlan0          wifi      connected     my-current-network    
p2p-dev-wlan0  wifi-p2p  disconnected  --         
enp1s0         ethernet  unavailable   --         
lo             loopback  unmanaged     --         
wlan1          wifi      unmanaged     --   

Also could be easy to see with airodump

sudo airodump-ng

PHY	Interface	Driver		Chipset

phy0	wlan0		ath9k		Qualcomm Atheros AR9485 Wireless Network Adapter (rev 01)
phy4	wlan1		ath9k_htc	Qualcomm Atheros Communications AR9271 802.11n

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment