Well, the non-existing firmware isn't a problem. The driver supports a new API version 6 while it falls back to API version 5. Currently the API v6 firmware isn't publicly available, as it seems, so the behavior you've seen is correct. Now I took a look at the recent ath10k1 development, I found a fix in 4.17-rc1 that is likely relevant with your problem. 55cc11da69895a680940c1733caabc37be685f5e Revert "ath10k: send (re)assoc peer command when NSS changed" I'm going to build a kernel with this fix for testing.