Netifd turning radio0 on/off in a loop

I have a bug where it seems as though netifd is setting up and tearing down my radio0 device in a loop. My configs are all correct and I have attempted many ways of reloading configs and restarting services/interfaces such as: 'reload_config', /etc/init.d/(network)(wireless) (reload)(restart), and running uci and ubus commands - to no avail.

I'm running OpenWRT 16.02 on a Gateworks Laguna embedded board. This build has been stable for a while and only really had this bug show up once in the past and wasn't able to replicate it until this lucky week where 2-3+ units are having this problem. Reflashing the boards and running my install scripts tend to fix it, but I've seen cases where I reflash/rereinstall my configs/additional packages, etc., and the problem still occurs. I always reboot the units once or twice to make sure things are stable after reboots, yet some have passed that test and still come up with this issue when powered on later.

I noticed that my static routing info ('ip addr' and 'ip route') is appearing and disappearing (probably with the radio resets or when my monitoring.sh script resets the network adapter when it can't ping the gateway). I've had another unit not have the routing info show up at all, even though my configs are correct and reloaded/restarted. I put in static routes on that unit and that fixed it for a trivial amount of time, but then the resets occured and wiped it again, not to repopulate again (in that instance).

The radio0 device is showing up in the GUI (as are all my network configs), but for some reason my wlan0 static IP will show 'linkdown' (see 'ip addr' output below). This is one thing I don't know if I can change or if that's passive info rather than a setting.

It's so hard to cover everything in a first pass, so I'm more than willing to edit this post if there are questions to make it better documentation for those with similar issues.

UPDATE: seeing issues with ath10k PCI firmware as well (see output at very bottom), I'm wondering how that could be corrupted if that is in my original flashing image.

Troubleshooting Output

Whole output at: https://pastebin.com/5mbHybFR (too long for forum post with dmesg output)

logread

Wed May 20 05:30:01 1970 kern.debug kernel: [   16.520000] ath: EEPROM indicates default country code should be used
Wed May 20 05:30:01 1970 kern.debug kernel: [   16.520000] ath: doing EEPROM country->regdmn map search
Wed May 20 05:30:01 1970 kern.debug kernel: [   16.520000] ath: country maps to regdmn code: 0x3a
Wed May 20 05:30:01 1970 kern.debug kernel: [   16.520000] ath: Country alpha2 being used: US
Wed May 20 05:30:01 1970 kern.debug kernel: [   16.520000] ath: Regpair used: 0x3a
Wed May 20 05:30:01 1970 kern.info kernel: [   16.590000] gsc_hwmon 0-0029: gsc_hwmon chip found
Wed May 20 05:30:01 1970 kern.info kernel: [   16.690000] hidraw: raw HID events driver (C) Jiri Kosina
Wed May 20 05:30:01 1970 kern.info kernel: [   16.900000] u32 classifier
Wed May 20 05:30:01 1970 kern.info kernel: [   16.900000]     input device check on
Wed May 20 05:30:01 1970 kern.info kernel: [   16.910000]     Actions configured
Wed May 20 05:30:01 1970 kern.info kernel: [   16.960000] Mirror/redirect action on
Wed May 20 05:30:01 1970 kern.info kernel: [   17.040000] nf_conntrack version 0.5.0 (3980 buckets, 15920 max)
Wed May 20 05:30:01 1970 kern.info kernel: [   17.130000] Bluetooth: Core ver 2.21
Wed May 20 05:30:01 1970 kern.info kernel: [   17.130000] NET: Registered protocol family 31
Wed May 20 05:30:01 1970 kern.info kernel: [   17.140000] Bluetooth: HCI device and connection manager initialized
Wed May 20 05:30:01 1970 kern.info kernel: [   17.150000] Bluetooth: HCI socket layer initialized
Wed May 20 05:30:01 1970 kern.info kernel: [   17.150000] Bluetooth: L2CAP socket layer initialized
Wed May 20 05:30:01 1970 kern.info kernel: [   17.160000] Bluetooth: SCO socket layer initialized
Wed May 20 05:30:01 1970 kern.info kernel: [   17.160000] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Wed May 20 05:30:01 1970 kern.info kernel: [   17.170000] Bluetooth: BNEP filters: protocol multicast
Wed May 20 05:30:01 1970 kern.info kernel: [   17.170000] Bluetooth: BNEP socket layer initialized
Wed May 20 05:30:01 1970 kern.info kernel: [   17.180000] usbcore: registered new interface driver btusb
Wed May 20 05:30:01 1970 kern.info kernel: [   17.190000] usbcore: registered new interface driver cdc_acm
Wed May 20 05:30:01 1970 kern.info kernel: [   17.200000] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
Wed May 20 05:30:01 1970 kern.info kernel: [   17.210000] usbcore: registered new interface driver cdc_wdm
Wed May 20 05:30:01 1970 kern.info kernel: [   17.220000] e1000e: Intel(R) PRO/1000 Network Driver - 3.2.6-k
Wed May 20 05:30:01 1970 kern.info kernel: [   17.230000] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
Wed May 20 05:30:01 1970 kern.info kernel: [   17.260000] Ebtables v2.0 registered
Wed May 20 05:30:01 1970 kern.info kernel: [   17.280000] input: gsc_input as /devices/platform/gsc_input/input/input0
Wed May 20 05:30:01 1970 kern.info kernel: [   17.290000] gsc_input gsc_input: input driver installed: CTRL_0=0x01
Wed May 20 05:30:01 1970 kern.info kernel: [   17.310000] Bluetooth: HCI UART driver ver 2.3
Wed May 20 05:30:01 1970 kern.info kernel: [   17.310000] Bluetooth: HCI UART protocol H4 registered
Wed May 20 05:30:01 1970 kern.info kernel: [   17.320000] Bluetooth: HCI UART protocol BCSP registered
Wed May 20 05:30:01 1970 kern.info kernel: [   17.320000] Bluetooth: HCI UART protocol ATH3K registered
Wed May 20 05:30:01 1970 kern.info kernel: [   17.350000] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
Wed May 20 05:30:01 1970 kern.info kernel: [   17.360000] Bluetooth: HIDP socket layer initialized
Wed May 20 05:30:01 1970 kern.info kernel: [   17.370000] hso: drivers/net/usb/hso.c: Option Wireless
Wed May 20 05:30:01 1970 kern.info kernel: [   17.370000] usbcore: registered new interface driver hso
Wed May 20 05:30:01 1970 kern.info kernel: [   17.380000] ip_tables: (C) 2000-2006 Netfilter Core Team
Wed May 20 05:30:01 1970 kern.info kernel: [   17.460000] Bluetooth: RFCOMM TTY layer initialized
Wed May 20 05:30:01 1970 kern.info kernel: [   17.470000] Bluetooth: RFCOMM socket layer initialized
Wed May 20 05:30:01 1970 kern.info kernel: [   17.470000] Bluetooth: RFCOMM ver 1.11
Wed May 20 05:30:01 1970 kern.info kernel: [   17.490000] usbcore: registered new interface driver ums-alauda
Wed May 20 05:30:01 1970 kern.info kernel: [   17.500000] usbcore: registered new interface driver ums-cypress
Wed May 20 05:30:01 1970 kern.info kernel: [   17.510000] usbcore: registered new interface driver ums-datafab
Wed May 20 05:30:01 1970 kern.info kernel: [   17.520000] usbcore: registered new interface driver ums-freecom
Wed May 20 05:30:01 1970 kern.info kernel: [   17.520000] usbcore: registered new interface driver ums-isd200
Wed May 20 05:30:01 1970 kern.info kernel: [   17.530000] usbcore: registered new interface driver ums-jumpshot
Wed May 20 05:30:01 1970 kern.info kernel: [   17.540000] usbcore: registered new interface driver ums-karma
Wed May 20 05:30:01 1970 kern.info kernel: [   17.550000] usbcore: registered new interface driver ums-sddr09
Wed May 20 05:30:01 1970 kern.info kernel: [   17.560000] usbcore: registered new interface driver ums-sddr55
Wed May 20 05:30:01 1970 kern.info kernel: [   17.570000] usbcore: registered new interface driver ums-usbat
Wed May 20 05:30:01 1970 kern.info kernel: [   17.580000] usbcore: registered new interface driver usbhid
Wed May 20 05:30:01 1970 kern.info kernel: [   17.590000] usbhid: USB HID core driver
Wed May 20 05:30:01 1970 kern.info kernel: [   17.600000] usbip_core: USB/IP Core v1.0.0
Wed May 20 05:30:01 1970 kern.info kernel: [   17.610000] usbcore: registered new device driver usbip-host
Wed May 20 05:30:01 1970 kern.info kernel: [   17.610000] usbip_host: USB/IP Host Driver v1.0.0
Wed May 20 05:30:01 1970 kern.info kernel: [   17.630000] usbcore: registered new interface driver usbserial
Wed May 20 05:30:01 1970 kern.info kernel: [   17.640000] usbcore: registered new interface driver usbserial_generic
Wed May 20 05:30:01 1970 kern.info kernel: [   17.640000] usbserial: USB Serial support registered for generic
Wed May 20 05:30:01 1970 kern.info kernel: [   17.660000] vhci_hcd vhci_hcd: USB/IP Virtual Host Controller
Wed May 20 05:30:01 1970 kern.info kernel: [   17.660000] vhci_hcd vhci_hcd: new USB bus registered, assigned bus number 4
Wed May 20 05:30:01 1970 kern.info kernel: [   17.690000] usb usb4: New USB device found, idVendor=1d6b, idProduct=0002
Wed May 20 05:30:01 1970 kern.info kernel: [   17.700000] usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
Wed May 20 05:30:01 1970 kern.info kernel: [   17.700000] usb usb4: Product: USB/IP Virtual Host Controller
Wed May 20 05:30:01 1970 kern.info kernel: [   17.710000] usb usb4: Manufacturer: Linux 4.4.0 vhci_hcd
Wed May 20 05:30:01 1970 kern.info kernel: [   17.710000] usb usb4: SerialNumber: vhci_hcd
Wed May 20 05:30:01 1970 kern.info kernel: [   17.740000] hub 4-0:1.0: USB hub found
Wed May 20 05:30:01 1970 kern.info kernel: [   17.740000] hub 4-0:1.0: 8 ports detected
Wed May 20 05:30:01 1970 kern.info kernel: [   17.740000] vhci_hcd: USB/IP 'Virtual' Host Controller (VHCI) Driver v1.0.0
Wed May 20 05:30:01 1970 kern.info kernel: [   17.860000] xt_time: kernel timezone is -0000
Wed May 20 05:30:01 1970 kern.info kernel: [   17.880000] usbcore: registered new interface driver asix
Wed May 20 05:30:01 1970 kern.info kernel: [   17.890000] usbcore: registered new interface driver ath3k
Wed May 20 05:30:01 1970 kern.info kernel: [   17.920000] usbcore: registered new interface driver ath9k_htc
Wed May 20 05:30:01 1970 kern.info kernel: [   17.930000] usbcore: registered new interface driver cdc_ether
Wed May 20 05:30:01 1970 kern.info kernel: [   17.950000] usbcore: registered new interface driver cdc_ncm
Wed May 20 05:30:01 1970 kern.info kernel: [   17.970000] usbcore: registered new interface driver cdc_subset
Wed May 20 05:30:01 1970 kern.info kernel: [   17.980000] usbcore: registered new interface driver ftdi_sio
Wed May 20 05:30:01 1970 kern.info kernel: [   17.990000] usbserial: USB Serial support registered for FTDI USB Serial Device
Wed May 20 05:30:01 1970 kern.info kernel: [   18.130000] usbcore: registered new interface driver garmin_gps
Wed May 20 05:30:01 1970 kern.info kernel: [   18.130000] usbserial: USB Serial support registered for Garmin GPS usb/tty
Wed May 20 05:30:01 1970 kern.info kernel: [   18.160000] usbcore: registered new interface driver huawei_cdc_ncm
Wed May 20 05:30:01 1970 kern.info kernel: [   18.320000] usbcore: registered new interface driver pl2303
Wed May 20 05:30:01 1970 kern.info kernel: [   18.320000] usbserial: USB Serial support registered for pl2303
Wed May 20 05:30:01 1970 kern.info kernel: [   18.340000] PPP generic driver version 2.4.2
Wed May 20 05:30:01 1970 kern.info kernel: [   18.350000] NET: Registered protocol family 24
Wed May 20 05:30:01 1970 kern.info kernel: [   18.350000] usbcore: registered new interface driver qmi_wwan
Wed May 20 05:30:01 1970 kern.info kernel: [   18.370000] usbcore: registered new interface driver rndis_host
Wed May 20 05:30:01 1970 kern.info kernel: [   18.390000] usbcore: registered new interface driver sierra
Wed May 20 05:30:01 1970 kern.info kernel: [   18.390000] usbserial: USB Serial support registered for Sierra USB modem
Wed May 20 05:30:01 1970 kern.info kernel: [   18.420000] usbcore: registered new interface driver sierra_net
Wed May 20 05:30:01 1970 kern.info kernel: [   18.560000] usbcore: registered new interface driver cdc_mbim
Wed May 20 05:30:01 1970 kern.info kernel: [   18.630000] usbcore: registered new interface driver option
Wed May 20 05:30:01 1970 kern.info kernel: [   18.640000] usbserial: USB Serial support registered for GSM modem (1-port)
Wed May 20 05:30:01 1970 kern.info kernel: [   18.670000] usbcore: registered new interface driver qcserial
Wed May 20 05:30:01 1970 kern.info kernel: [   18.670000] usbserial: USB Serial support registered for Qualcomm USB modem
Wed May 20 05:30:03 1970 user.notice : this file has been obsoleted. please call "/sbin/block mount" directly
Wed May 20 05:30:03 1970 daemon.err block: /dev/mtdblock4 is already mounted
Wed May 20 05:30:04 1970 authpriv.info dropbear[1836]: Not backgrounding
Wed May 20 05:30:05 1970 daemon.err insmod: module is already loaded - xt_multiport
Wed May 20 05:30:06 1970 daemon.err insmod: module is already loaded - xt_comment
Wed May 20 05:30:06 1970 daemon.err insmod: module is already loaded - xt_length
Wed May 20 05:30:07 1970 kern.info kernel: [   27.070000] eth0: link up, speed 100 Mb/s, full duplex
Wed May 20 05:30:07 1970 daemon.notice netifd: Interface 'lan' is enabled
Wed May 20 05:30:07 1970 daemon.notice netifd: Interface 'lan' is setting up now
Wed May 20 05:30:07 1970 daemon.notice netifd: Interface 'lan' is now up
Wed May 20 05:30:07 1970 daemon.notice netifd: Interface 'loopback' is enabled
Wed May 20 05:30:07 1970 daemon.notice netifd: Interface 'loopback' is setting up now
Wed May 20 05:30:07 1970 daemon.notice netifd: Interface 'loopback' is now up
Wed May 20 05:30:07 1970 daemon.notice netifd: Network device 'eth0' link is up
Wed May 20 05:30:07 1970 daemon.notice netifd: Interface 'lan' has link connectivity 
Wed May 20 05:30:07 1970 daemon.notice netifd: Network device 'lo' link is up
Wed May 20 05:30:07 1970 daemon.notice netifd: Interface 'loopback' has link connectivity 
Wed May 20 05:30:08 1970 kern.info kernel: [   27.720000] eth0: link down
Wed May 20 05:30:08 1970 daemon.notice netifd: radio0 (2064): command failed: Not supported (-95)
Wed May 20 05:30:08 1970 user.notice firewall: Reloading firewall due to ifup of lan (eth0)
Wed May 20 05:30:09 1970 user.notice : Another app is currently holding the xtables lock; waiting for it to exit...
Wed May 20 05:30:10 1970 daemon.notice netifd: Network device 'eth0' link is down
Wed May 20 05:30:10 1970 daemon.notice netifd: Interface 'lan' has link connectivity loss
Wed May 20 05:30:10 1970 kern.info kernel: [   29.650000] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
Wed May 20 05:30:10 1970 daemon.notice netifd: radio0 (2064): Successfully initialized wpa_supplicant
Wed May 20 05:30:11 1970 daemon.notice netifd: Interface 'wwan' is enabled
Wed May 20 05:30:11 1970 daemon.notice netifd: Interface 'wwan' is setting up now
Wed May 20 05:30:11 1970 daemon.notice netifd: Interface 'wwan' is now up
Wed May 20 05:30:11 1970 daemon.err insmod: module is already loaded - xt_multiport
Wed May 20 05:30:11 1970 daemon.err insmod: module is already loaded - xt_comment
Wed May 20 05:30:11 1970 daemon.err insmod: module is already loaded - xt_length
Wed May 20 05:30:12 1970 daemon.notice smcroute[2355]: SMCRoute version 2.0.0 build 171219
Wed May 20 05:30:12 1970 daemon.warn smcroute[2355]: 22: Invalid outbound IPv4 interface: eth1
Wed May 20 05:30:12 1970 daemon.warn smcroute[2355]: 22: Invalid outbound IPv4 interface: eth2
Wed May 20 05:30:12 1970 daemon.warn smcroute[2355]: 22: No valid outbound IPv4 interfaces, skipping multicast route.
Wed May 20 05:30:12 1970 daemon.warn smcroute[2355]: 29: Invalid outbound IPv4 interface: eth1
Wed May 20 05:30:12 1970 daemon.warn smcroute[2355]: 29: Invalid outbound IPv4 interface: eth2
Wed May 20 05:30:12 1970 daemon.warn smcroute[2355]: 29: No valid outbound IPv4 interfaces, skipping multicast route.
Wed May 20 05:30:14 1970 user.notice : setting up led heartbeat
Wed May 20 05:30:14 1970 user.notice : Clearing ser2net config file
Wed May 20 05:30:15 1970 user.notice monitor: [**] monitor.sh script STARTED
Wed May 20 05:30:15 1970 user.notice : monitor: [**] monitor.sh script STARTED
Wed May 20 05:30:15 1970 user.notice : sh: write error: Value too large for data type
Wed May 20 05:30:15 1970 user.notice : sh: write error: Value too large for data type
Wed May 20 05:30:15 1970 user.notice roaming: [**] roaming.sh script STARTED
Wed May 20 05:30:15 1970 user.notice : roaming: [**] roaming.sh script STARTED
Wed May 20 05:30:15 1970 user.notice temperature: [**] temperature.sh script STARTED
Wed May 20 05:30:15 1970 user.notice : temperature: [**] temperature.sh script STARTED
Wed May 20 05:30:16 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:16 1970 user.notice temperature.sh: Current Temperature: 33.2 Celsius
Wed May 20 05:30:16 1970 user.notice : Zero database found, adding available interfaces...
Wed May 20 05:30:16 1970 user.notice : "gre0" added with 100 Mbit bandwidth limit.
Wed May 20 05:30:16 1970 user.notice : "wlan0" added with 100 Mbit bandwidth limit.
Wed May 20 05:30:16 1970 user.notice : "gretap0" added with 100 Mbit bandwidth limit.
Wed May 20 05:30:16 1970 user.notice : "eth0" added with 100 Mbit bandwidth limit.
Wed May 20 05:30:16 1970 user.notice : "bond0" added with 100 Mbit bandwidth limit.
Wed May 20 05:30:16 1970 user.notice : "ifb0" added with 100 Mbit bandwidth limit.
Wed May 20 05:30:16 1970 user.notice : "ifb1" added with 100 Mbit bandwidth limit.
Wed May 20 05:30:16 1970 user.notice : -> 7 interfaces added.
Wed May 20 05:30:16 1970 user.notice : Limits can be modified using the configuration file. See "man vnstat.conf".
Wed May 20 05:30:16 1970 user.notice : Unwanted interfaces can be removed from monitoring with "vnstat --delete".
Wed May 20 05:30:16 1970 daemon.notice vnstatd[2544]: vnStat daemon 1.12 started. (uid:0 gid:0)
Wed May 20 05:30:16 1970 daemon.info procd: - init complete -
Wed May 20 05:30:16 1970 daemon.notice vnstatd[2544]: Monitoring: gre0 (100 Mbit) wlan0 (100 Mbit) gretap0 (100 Mbit) eth0 (100 Mbit) bond0 (100 Mbit) ifb0 (100 Mbit) ifb1 (100 Mbit) 
Wed May 20 05:30:18 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:20 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:22 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:24 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:24 1970 kern.warn kernel: [   44.280000] ath10k_pci 0000:01:00.0: no channel configured; ignoring frame(s)!
Wed May 20 05:30:26 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:28 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:29 1970 kern.info kernel: [   48.860000] eth0: link up, speed 100 Mb/s, full duplex
Wed May 20 05:30:30 1970 daemon.notice netifd: Network device 'eth0' link is up
Wed May 20 05:30:30 1970 daemon.notice netifd: Interface 'lan' has link connectivity 
Wed May 20 05:30:30 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:32 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:32 1970 authpriv.info dropbear[2642]: Child connection from 192.168.1.50:49317
Wed May 20 05:30:33 1970 kern.warn kernel: [   52.800000] ath10k_pci 0000:01:00.0: no channel configured; ignoring frame(s)!
Wed May 20 05:30:34 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:35 1970 daemon.info dnsmasq[2665]: started, version 2.75 cachesize 150
Wed May 20 05:30:35 1970 daemon.info dnsmasq[2665]: compile time options: IPv6 GNU-getopt no-DBus no-i18n no-IDN DHCP no-DHCPv6 no-Lua TFTP no-conntrack no-ipset no-auth no-DNSSEC loop-detect inotify
Wed May 20 05:30:35 1970 daemon.info dnsmasq[2665]: DNS service limited to local subnets
Wed May 20 05:30:35 1970 daemon.info dnsmasq-dhcp[2665]: DHCP, IP range 192.168.1.100 -- 192.168.1.249, lease time 12h
Wed May 20 05:30:35 1970 daemon.info dnsmasq[2665]: using local addresses only for domain lan
Wed May 20 05:30:35 1970 daemon.warn dnsmasq[2665]: no servers found in /tmp/resolv.conf.auto, will retry
Wed May 20 05:30:35 1970 daemon.info dnsmasq[2665]: read /etc/hosts - 4 addresses
Wed May 20 05:30:35 1970 daemon.info dnsmasq[2665]: read /tmp/hosts/dhcp - 2 addresses
Wed May 20 05:30:35 1970 daemon.info dnsmasq-dhcp[2665]: read /etc/ethers - 0 addresses
Wed May 20 05:30:36 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:38 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:39 1970 authpriv.notice dropbear[2642]: Password auth succeeded for 'root' from 192.168.1.50:49317
Wed May 20 05:30:40 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:42 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:44 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity
Wed May 20 05:30:47 1970 user.notice roaming.sh: [*] ERROR: RSSI value empty. Check your wireless connectivity

cat /etc/config/network

config interface 'loopback'
    option ifname 'lo'
    option proto 'static'
    option ipaddr '127.0.0.1'
    option netmask '255.0.0.0'

config globals 'globals'
    option ula_prefix 'xxxx:xxxx:xxxx::/48'

config interface 'lan'
    option ifname 'eth0'
    option proto 'static'
    option ipaddr '192.168.1.1'
    option netmask '255.255.255.0'
    option ip6assign '60'

config interface 'wwan'
    option _orig_ifname 'wlan0'
    option _orig_bridge 'false'
    option proto 'static'
    option ipaddr '10.200.13.129'
    option netmask '255.255.255.0'
    option gateway '10.200.13.10'

cat /etc/config/wireless

config wifi-device 'radio0'
    option type 'mac80211'
    option hwmode '11a'
    option path 'pci0000:00/0000:00:00.0/0000:01:00.0'
    option txpower '23'
    option country 'US'
    option disabled '0'
    option channel '36'
    option htmode 'VHT20'

config wifi-iface
    option network 'wwan'
    option ssid 'xxxxxx'
    option encryption 'psk2'
    option device 'radio0'
    option mode 'sta'
    option bssid '80:E8:6F:5D:49:BE'
    option wps_pushbutton '0'
    option key 'xxxxxxx'

cat /etc/config/system

config system
    option ttylogin '1'
    option log_file '/var/log/xxxxxxx.log'
    option hostname 'xxxxxx'
    option zonename 'America/Vancouver'
    option timezone 'PST8PDT,M3.2.0,M11.1.0'
    option conloglevel '8'
    option cronloglevel '8'

config timeserver 'ntp'
    list server '0.openwrt.pool.ntp.org'
    list server '1.openwrt.pool.ntp.org'
    list server '2.openwrt.pool.ntp.org'
    list server '3.openwrt.pool.ntp.org'
    option enabled '1'

config led
    option default '0'
    option name 'heartbeat'
    option sysfs 'user1'
    option trigger 'heartbeat'

config button
    option button 'BTN_0'
    option action 'pressed'
    option handler 'logger BTN_0 pressed'

config button
    option button 'BTN_0'
    option action 'released'
    option handler 'factory_reset'
    option min '15'
    option max '999'

netifd -l 5 -d 8

netifd_ubus_init(1150): connected as 994813b7
Failed to publish object 'network': Invalid argument
Failed to publish object 'network.device': Invalid argument
Failed to publish object 'network.wireless': Invalid argument
Failed to publish object 'network.interface': Invalid argument
proto_shell_add_handler(913): Add handler for script ./3g.sh: 3g
proto_shell_add_handler(913): Add handler for script ./batadv.sh: batadv
proto_shell_add_handler(913): Add handler for script ./batadv_vlan.sh: batadv_vlan
proto_shell_add_handler(913): Add handler for script ./dhcp.sh: dhcp
proto_shell_add_handler(913): Add handler for script ./directip.sh: directip
proto_shell_add_handler(913): Add handler for script ./ncm.sh: ncm
proto_shell_add_handler(913): Add handler for script ./ppp.sh: ppp
proto_shell_add_handler(913): Add handler for script ./ppp.sh: pppoe
./qmi.sh: eval: line 1: proto_config_add_defaults: not found
proto_shell_add_handler(913): Add handler for script ./qmi.sh: qmi
proto_shell_add_handler(913): Add handler for script ./wwan.sh: 3g
proto_shell_add_handler(913): Add handler for script ./wwan.sh: wwan
killall: hostapd: no process killed
killall: meshd-nl80211: no process killed
wireless_add_handler(534): Add handler for script ./mac80211.sh: mac80211
netifd_ubus_add_interface(1202): failed to publish ubus object for interface 'loopback'
netifd_ubus_add_interface(1202): failed to publish ubus object for interface 'lan'
netifd_ubus_add_interface(1202): failed to publish ubus object for interface 'wwan'
wdev_update(493): Create wireless device 'radio0'
vif_update(602): Create new wireless interface 0 on device radio0
wireless_device_run_handler(253): Wireless device 'radio0' run setup handler
wireless_device_run_handler(253): Wireless device 'radio0' run teardown handler
wireless_device_mark_down(332): Wireless device 'radio0' is now down
wireless_device_run_handler(253): Wireless device 'radio0' run setup handler
wireless_device_run_handler(253): Wireless device 'radio0' run teardown handler
wireless_device_mark_down(332): Wireless device 'radio0' is now down
wireless_device_run_handler(253): Wireless device 'radio0' run setup handler
wireless_device_run_handler(253): Wireless device 'radio0' run teardown handler
wireless_device_mark_down(332): Wireless device 'radio0' is now down
wireless_device_run_handler(253): Wireless device 'radio0' run setup handler
wireless_device_run_handler(253): Wireless device 'radio0' run teardown handler
wireless_device_mark_down(332): Wireless device 'radio0' is now down

ip addr

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:d0:12:87:f6:53 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.1/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fd3c:b923:3ec5::1/60 scope global noprefixroute 
       valid_lft forever preferred_lft forever
    inet6 fe80::2d0:12ff:fe87:f653/64 scope link 
       valid_lft forever preferred_lft forever
3: ifb0: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN group default qlen 32
    link/ether f2:28:4e:f4:62:c3 brd ff:ff:ff:ff:ff:ff
4: ifb1: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN group default qlen 32
    link/ether 0e:d2:1e:43:1f:0e brd ff:ff:ff:ff:ff:ff
5: gre0@NONE: <NOARP> mtu 1476 qdisc noop state DOWN group default 
    link/gre 0.0.0.0 brd 0.0.0.0
6: gretap0@NONE: <BROADCAST,MULTICAST> mtu 1462 qdisc noop state DOWN group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
7: bond0: <BROADCAST,MULTICAST,MASTER> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether d2:66:8c:7b:b5:40 brd ff:ff:ff:ff:ff:ff
16: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 04:f0:21:94:c7:c5 brd ff:ff:ff:ff:ff:ff
    inet 10.200.13.129/24 brd 10.200.13.255 scope global wlan0
       valid_lft forever preferred_lft forever

ip route

default via 10.200.13.10 dev wlan0  proto static linkdown 
10.200.13.0/24 dev wlan0  proto kernel  scope link  src 10.200.13.129 linkdown 
192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.1 

dmesg | grep ath10k

root@xxxxx:~# dmesg | grep ath10k
[   14.600000] ath10k_pci 0000:01:00.0: enabling device (0140 -> 0142)
[   14.600000] ath10k_pci 0000:01:00.0: pci irq legacy interrupts 0 irq_mode 0 reset_mode 0
[   14.860000] ath10k_pci 0000:01:00.0: Direct firmware load for ath10k/cal-pci-0000:01:00.0.bin failed with error -2
[   14.870000] ath10k_pci 0000:01:00.0: Falling back to user helper
[   14.900000] firmware ath10k!cal-pci-0000:01:00.0.bin: firmware_loading_store: map pages failed
[   15.080000] ath10k_pci 0000:01:00.0: qca988x hw2.0 target 0x4100016c chip_id 0x043202ff sub 0000:0000
[   15.090000] ath10k_pci 0000:01:00.0: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 1
[   15.100000] ath10k_pci 0000:01:00.0: firmware ver 10.2.4.97 api 5 features no-p2p crc32 f91e34f2
[   15.150000] ath10k_pci 0000:01:00.0: Direct firmware load for ath10k/QCA988X/hw2.0/board-2.bin failed with error -2
[   15.160000] ath10k_pci 0000:01:00.0: Falling back to user helper
[   15.180000] firmware ath10k!QCA988X!hw2.0!board-2.bin: firmware_loading_store: map pages failed
[   15.260000] ath10k_pci 0000:01:00.0: board_file api 1 bmi_id N/A crc32 bebc7c08
[   16.410000] ath10k_pci 0000:01:00.0: htt-ver 2.1 wmi-op 5 htt-op 2 cal otp max-sta 128 raw 0 hwcrypto 1
[   44.280000] ath10k_pci 0000:01:00.0: no channel configured; ignoring frame(s)!
[   52.800000] ath10k_pci 0000:01:00.0: no channel configured; ignoring frame(s)!
[   75.570000] ath10k_pci 0000:01:00.0: no channel configured; ignoring frame(s)!
[   81.810000] ath10k_pci 0000:01:00.0: no channel configured; ignoring frame(s)!
[   82.500000] ath10k_pci 0000:01:00.0: no channel configured; ignoring frame(s)!
[   82.650000] ath10k_pci 0000:01:00.0: no channel configured; ignoring frame(s)!
...
[ 1247.700000] ath10k_pci 0000:01:00.0: failed to receive initialized event from target: 00000000       
...

There is no 16.02 version of OpenWrt. If you used the image from their site it's best to ask them directly. Otherwise you could install 19.07.5.