802.11n device connection drops with Wifiwave2

Hi all!

I have an hap ac3 running a capsman instance with a connected cAP ac. After switching to the new wifi-qcam-ac package, my Garmin Forerunner 955 drops the connection to the Wifi after receiving ~5.1MiB of data. How can I be so sure about the data size? Because I am trying to debug this thing for weeks now - data amount is always the same. The watch is transfering with good bandwith and then suddenly it drop to zero until it will just disconnect. The logs will give no more information than just:

XX:XX:XX:XX:2F:8B@wifi1(mpb-net) disconnected, connection lost, signal strength -70

The watch is working fine in other Wifi networks. The ONLY THING that helps to solve the issue in my network, is to downgrade the 2.4Ghz band to the G standard - everything is working fine then, but of course I am limitting all the other devices to slow bandwith as well. Since I tried nearly everything from setting manual frequency to disabling all the roaming settings, etc. I assume that this has to be a bug either in the Mikrotik software or the Garmin device. Since it worked fine for years with the old Wifi package, I guess it is related to the wifiwave2/qcom package.

I really would like to further debug this issue, but I have no more ideas to gather more information?! Or maybe I am missing something in my config that can cause this?

Here is the config that is NOT working with the Garmin watch:



# 2025-12-14 19:05:17 by RouterOS 7.20.6

# software id = YC5S-YUYC

#

# model = RBD53iG-5HacD2HnD

# serial number = 

/interface bridge

add name=bridge port-cost-mode=short

/interface list

add name=WAN

add name=LAN

/interface lte apn

set [ find default=yes ] ip-type=ipv4 use-network-apn=no

/interface wifi channel

add band=2ghz-n disabled=no name="mpb-net 2GHz" reselect-interval=23h30m..23h59m

add band=5ghz-ac disabled=no name="mpb-net 5GHz" reselect-interval=23h30m..23h59m skip-dfs-channels=all

/interface wifi datapath

add bridge=bridge disabled=no name=mpb-net

/interface wifi security

add authentication-types=wpa2-psk connect-priority=0/1 disabled=no encryption=ccmp ft=yes ft-over-ds=yes name="mpb-net WPA2"

/interface wifi steering

add 2g-probe-delay=yes disabled=no name=mpb-steering neighbor-group=dynamic-mpb-net-a860b91a rrm=yes wnm=yes

/interface wifi configuration

add channel="mpb-net 2GHz" country=Germany datapath=mpb-net disabled=no manager=local mode=ap name="mpb-net 2G" security="mpb-net WPA2" ssid=mpb-net steering=mpb-steering

add channel="mpb-net 5GHz" country=Germany datapath=mpb-net disabled=no manager=local mode=ap name="mpb-net 5G" security="mpb-net WPA2" ssid=mpb-net steering=mpb-steering

/interface bridge port

add bridge=bridge ingress-filtering=no interface=ether2 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether1 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether3 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether4 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether5 internal-path-cost=10 path-cost=10

/ip firewall connection tracking

set enabled=no udp-timeout=10s

/ipv6 settings

set disable-ipv6=yes max-neighbor-entries=8192

/interface detect-internet

set detect-interface-list=all

/interface list member

add interface=ether1 list=WAN

add interface=ether2 list=LAN

add interface=ether3 list=LAN

add interface=ether4 list=LAN

add interface=ether5 list=LAN

add interface=wifi1 list=LAN

add interface=wifi2 list=LAN

/interface ovpn-server server

add auth=sha1,md5 mac-address=FE:4C:EF:30:33:EE name=ovpn-server1

/interface wifi cap

set certificate=none discovery-interfaces=bridge slaves-datapath=mpb-net slaves-static=no

/interface wifi capsman

set ca-certificate=auto certificate=auto enabled=yes interfaces=bridge package-path="" require-peer-certificate=no upgrade-policy=none

/interface wifi provisioning

add action=create-dynamic-enabled disabled=no master-configuration="mpb-net 2G" supported-bands=2ghz-n

add action=create-dynamic-enabled disabled=no master-configuration="mpb-net 5G" supported-bands=5ghz-n

/ip address

add address=192.168.1.2/24 interface=ether2 network=192.168.1.0

/ip dns

set servers=192.168.1.1

/ip firewall filter

add action=accept chain=input disabled=yes in-interface=bridge protocol=udp src-port=5246,5247

add action=accept chain=input disabled=yes dst-port=5246,5247 in-interface=bridge protocol=udp

/ip ipsec profile

set [ find default=yes ] dpd-interval=2m dpd-maximum-failures=5

/ip route

add disabled=no dst-address=0.0.0.0/0 gateway=192.168.1.1

/routing bfd configuration

add disabled=no

/system clock

set time-zone-name=Europe/Berlin

/system identity

set name=ac3

/system routerboard settings

set auto-upgrade=yes

And here is the config, that is working flawlessly:



# 2025-12-14 19:08:27 by RouterOS 7.20.6

# software id = YC5S-YUYC

#

# model = RBD53iG-5HacD2HnD

# serial number = 

/interface bridge

add name=bridge port-cost-mode=short

/interface list

add name=WAN

add name=LAN

/interface lte apn

set [ find default=yes ] ip-type=ipv4 use-network-apn=no

/interface wifi channel

add band=2ghz-g disabled=no name="mpb-net 2GHz" reselect-interval=23h30m..23h59m

add band=5ghz-ac disabled=no name="mpb-net 5GHz" reselect-interval=23h30m..23h59m skip-dfs-channels=all

/interface wifi datapath

add bridge=bridge disabled=no name=mpb-net

/interface wifi security

add authentication-types=wpa2-psk connect-priority=0/1 disabled=no encryption=ccmp ft=yes ft-over-ds=yes name="mpb-net WPA2"

/interface wifi steering

add 2g-probe-delay=yes disabled=no name=mpb-steering neighbor-group=dynamic-mpb-net-a860b91a rrm=yes wnm=yes

/interface wifi configuration

add channel="mpb-net 2GHz" country=Germany datapath=mpb-net disabled=no manager=local mode=ap name="mpb-net 2G" security="mpb-net WPA2" ssid=mpb-net steering=mpb-steering

add channel="mpb-net 5GHz" country=Germany datapath=mpb-net disabled=no manager=local mode=ap name="mpb-net 5G" security="mpb-net WPA2" ssid=mpb-net steering=mpb-steering

/interface bridge port

add bridge=bridge ingress-filtering=no interface=ether2 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether1 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether3 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether4 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether5 internal-path-cost=10 path-cost=10

/ip firewall connection tracking

set enabled=no udp-timeout=10s

/ipv6 settings

set disable-ipv6=yes max-neighbor-entries=8192

/interface detect-internet

set detect-interface-list=all

/interface list member

add interface=ether1 list=WAN

add interface=ether2 list=LAN

add interface=ether3 list=LAN

add interface=ether4 list=LAN

add interface=ether5 list=LAN

add interface=wifi1 list=LAN

add interface=wifi2 list=LAN

/interface ovpn-server server

add auth=sha1,md5 mac-address=FE:4C:EF:30:33:EE name=ovpn-server1

/interface wifi cap

set certificate=none discovery-interfaces=bridge slaves-datapath=mpb-net slaves-static=no

/interface wifi capsman

set ca-certificate=auto certificate=auto enabled=yes interfaces=bridge package-path="" require-peer-certificate=no upgrade-policy=none

/interface wifi provisioning

add action=create-dynamic-enabled disabled=no master-configuration="mpb-net 2G" supported-bands=2ghz-n

add action=create-dynamic-enabled disabled=no master-configuration="mpb-net 5G" supported-bands=5ghz-n

/ip address

add address=192.168.1.2/24 interface=ether2 network=192.168.1.0

/ip dns

set servers=192.168.1.1

/ip firewall filter

add action=accept chain=input disabled=yes in-interface=bridge protocol=udp src-port=5246,5247

add action=accept chain=input disabled=yes dst-port=5246,5247 in-interface=bridge protocol=udp

/ip ipsec profile

set [ find default=yes ] dpd-interval=2m dpd-maximum-failures=5

/ip route

add disabled=no dst-address=0.0.0.0/0 gateway=192.168.1.1

/routing bfd configuration

add disabled=no

/system clock

set time-zone-name=Europe/Berlin

/system identity

set name=ac3

/system routerboard settings

set auto-upgrade=yes

Any ideas, hints or known issues regarding this?

Thanks!

-70 might be too weak of a signal to establish at N speeds for a watch?
Setting it to G might just force it to use a lower modulation, which is less likely to get interrupted.

Does the same happen if the watch is closer?

The “old” wireless driver are pretty amazing for configuration but also awful for maintaining so the wifi-qcom driver is the driver directly from Qualcomm with all the good and bad.

Yes, also happens if I sit directly in front of the hap or the cap. As you can see in the screenshot, the watch download ~5.1MIB and then the transfer rates drop to zero more or less immediately until the connection is lost.

Edit: TX bps is the one that drops to zero, so it seems that the device is not sending anymore data, right?

I also tried to disable all roaming related configs in combination with using the N standard, but the problem stays the same with this config:



# 2025-12-14 21:43:33 by RouterOS 7.20.6

# software id = YC5S-YUYC

#

# model = RBD53iG-5HacD2HnD

# serial number = 

/interface bridge

add name=bridge port-cost-mode=short

/interface list

add name=WAN

add name=LAN

/interface lte apn

set [ find default=yes ] ip-type=ipv4 use-network-apn=no

/interface wifi channel

add band=2ghz-n disabled=no name="mpb-net 2GHz" reselect-interval=23h30m..23h59m

add band=5ghz-ac disabled=no name="mpb-net 5GHz" reselect-interval=23h30m..23h59m skip-dfs-channels=all

/interface wifi datapath

add bridge=bridge disabled=no name=mpb-net

/interface wifi security

add authentication-types=wpa2-psk connect-priority=0/1 disabled=no encryption=ccmp ft=yes ft-over-ds=yes name="mpb-net WPA2"

add authentication-types=wpa2-psk disabled=no encryption=ccmp name="mpb-net WPA2 wRoaming"

/interface wifi configuration

add channel="mpb-net 2GHz" country=Germany datapath=mpb-net disabled=no manager=local mode=ap name="mpb-net 2G" security="mpb-net WPA2 wRoaming" ssid=mpb-net

/interface wifi steering

add 2g-probe-delay=yes disabled=no name=mpb-steering neighbor-group=dynamic-mpb-net-a860b91a rrm=yes wnm=yes

/interface wifi configuration

add channel="mpb-net 5GHz" country=Germany datapath=mpb-net disabled=no manager=local mode=ap name="mpb-net 5G" security="mpb-net WPA2" ssid=mpb-net steering=mpb-steering

/interface bridge port

add bridge=bridge ingress-filtering=no interface=ether2 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether1 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether3 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether4 internal-path-cost=10 path-cost=10

add bridge=bridge ingress-filtering=no interface=ether5 internal-path-cost=10 path-cost=10

/ip firewall connection tracking

set enabled=no udp-timeout=10s

/ipv6 settings

set disable-ipv6=yes max-neighbor-entries=8192

/interface detect-internet

set detect-interface-list=all

/interface list member

add interface=ether1 list=WAN

add interface=ether2 list=LAN

add interface=ether3 list=LAN

add interface=ether4 list=LAN

add interface=ether5 list=LAN

add interface=wifi1 list=LAN

add interface=wifi2 list=LAN

/interface wifi cap

set certificate=none discovery-interfaces=bridge slaves-datapath=mpb-net slaves-static=no

/interface wifi capsman

set ca-certificate=auto certificate=auto enabled=yes interfaces=bridge package-path="" require-peer-certificate=no upgrade-policy=none

/interface wifi provisioning

add action=create-dynamic-enabled disabled=no master-configuration="mpb-net 2G" supported-bands=2ghz-n

add action=create-dynamic-enabled disabled=no master-configuration="mpb-net 5G" supported-bands=5ghz-n

/ip address

add address=192.168.1.2/24 interface=ether2 network=192.168.1.0

/ip dns

set servers=192.168.1.1

/ip firewall filter

add action=accept chain=input disabled=yes in-interface=bridge protocol=udp src-port=5246,5247

add action=accept chain=input disabled=yes dst-port=5246,5247 in-interface=bridge protocol=udp

/ip ipsec profile

set [ find default=yes ] dpd-interval=2m dpd-maximum-failures=5

/ip route

add disabled=no dst-address=0.0.0.0/0 gateway=192.168.1.1

/routing bfd configuration

add disabled=no

/system clock

set time-zone-name=Europe/Berlin

/system identity

set name=ac3

/system routerboard settings

set auto-upgrade=yes

What's your cap?

Is the cap connected via cable or as a “repeater”?

TX is as seen from this device. So your hap ac3s transmitting.

It’s an cAP ac, directily connected to the ac3 via cable and providing PoE to the cAP ac.

Without checking the config too much can you kick your steering policy from the 2.4ghz?

Also please disable detect Internet.

Also does the device receive an IP and have Internet access?

I only have one troublesome Tuya plug that just doesn't like it when it can't resolve DNS.

And the Google Nest speakers that have to connect to a specific Google URL that was in my DNS blocklist.

Maybe run a packet sniffer so you can see what that 5MB of data is (to a file and then you can check with Wireshark)

The steering and all roaming related stuff was already kicked from the 2.4GHz config in the latest config post - without success :frowning:

The device gets and IP and transfers some data, I can see it when syncing a Spotify list - the first song usually gets transfered.

Can you give me some additional hints how to record the transfered packages to examine with Wireshark afterwards?

Thank you for your support effort, really appreciated!

You can use the Packet sniffer like this, for example.

Just set the filename, interface and mac address.
We’d be interested in the last few packets that are transferred if theres anything unusual.

Maybe it’s some DNS error or a lot of retransmits (which indicates a bad connection)