Persistent Wi-Fi Crashes on Aurora-DX (QCA6174) — Advice on ath10k Firmware Update?

Hi everyone!

A while ago I posted about my Wi-Fi randomly disconnecting on my Acer Aspire with a Qualcomm QCA6174 chipset. I temporarily switched from NetworkManager to iwd, and the issue seemed to improve… but after a few days it came back. Sometimes it stays stable for 8–9 hours, sometimes it drops after just a few minutes. When it happens, Bluetooth keeps working, but Wi-Fi completely shuts down and does not recover unless I reboot the system.

I asked ChatGPT for help and it suggested that this might be related to unstable ath10k firmware versions for the QCA6174, which is a common problem on Acer laptops. It provided the following solution to install a different firmware version and add some kernel module options to improve stability:

sudo mkdir -p /lib/firmware/ath10k/QCA6174/hw3.0/backup

# Backup the current firmware
sudo mv /lib/firmware/ath10k/QCA6174/hw3.0/*.bin /lib/firmware/ath10k/QCA6174/hw3.0/backup/ 2>/dev/null
sudo mv /lib/firmware/ath10k/QCA6174/hw3.0/*.txt /lib/firmware/ath10k/QCA6174/hw3.0/backup/ 2>/dev/null

# Download a more stable firmware
sudo curl -L -o /lib/firmware/ath10k/QCA6174/hw3.0/firmware-6.bin \
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA6174/hw3.0/firmware-6.bin

sudo curl -L -o /lib/firmware/ath10k/QCA6174/hw3.0/board.bin \
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA6174/hw3.0/board.bin

# Kernel module tweaks
echo "options ath10k_core skip_otp=y rawmode=1 btcoex_active=1" | \
sudo tee /etc/modprobe.d/ath10k-stable.conf

sudo reboot

Before I apply this, I want to make sure it is safe and appropriate for Aurora-DX, since it directly replaces system firmware in /lib/firmware.
Is this recommended on an immutable system like Aurora?
Or is there a better approach that fits the distribution’s model (using layering, package overrides, etc.)?

Any guidance or alternative solutions are very welcome!

Thanks in advance!

Unfortunately those instructions won’t work as for example /lib part is read-only, you can’t add or modify it in anyway.