Interesting. I’m not sure what the division of responsibility between hardware, the driver, and the OS/userspace client stack is for AP transitions.
Your log shows a transition triggered by low signal level. Presumably on the Mediatek the same doesn’t happen, even after a longer wait time? I have noticed that the Mediatek card seems to take longer to scan, maybe (especially?) on 5GHz, so that could be playing into how long it takes it to “find” the better alternative. Of course if that’s “never” then it’s no good and potentially a Mediatek firmware or driver issue.
My intended use case is slightly different. I have a single wireless router where both the 2.4GHz and 5GHz access points live, and signal strength is ok throughout the fairly small area I’m interested in. I just want to skew the client’s preference very heavily towards the 5GHz AP while still being able to fall back to 2.4GHz quickly in the rare occasions where 5GHz drops temporarily (radar detection).
That’s where I assume (from what I’m reading out there) that iwd could make a difference by being more “proactive” and tunable in its band preference.
(more edit: I’m aware of band steering as an option on the AP, but I’d rather try solving this on the client first)
(more more edit: My Pixel 7 phone does the “right thing” and chooses the much faster 5GHz AP when it becomes available on the same SSID, even though both 5GHz and 2,4GHz have at least “good” RSSI)