hAP AX^3 wireless performance journey

I have been using MikroTik devices for relatively long time. It all started with ISP provided routers that became deliberately annoyed with every new firmware upgrade (open firewall, locked DNS, primitive monitoring capabilities). MikroTik brought us to old good times where you have an access to entire configuration and no default setting is forced upon. First impression was “this is totally not a consumer electronic type device and I don’t need that level of complexity” I end up with what most of people on the forum have “I will never look back”. I definitely stick with MikroTik now, really matured and sophisticated software plus cost-efficient hardware.

I currently have 3 devices: cAP ac, RB4011/wifi, hAP AX^3. First device was great start and now being used for lab purposes. Second device was really big step forward but poor wireless performance I have ever experienced, 2.4Ghz chip is out-dated while 5Ghz to be really good needed wifi2 drivers at expense of losing 2.4Ghz interface. Unfortunatelly I still have some devices that need 2.4Ghz so it wasn’t good time to go to “wifi-qcom-ac” just yet. Last year a neighbour installed repeater with full power antenna, behind that wall my router was placed and this repeater made our 2.4Ghz coverage useless, regardless of scanning network and shuffling between 1/6/11 channels that repeater was smarter and faster to switch channels and using entire bandwidth of that frequency. I needed better 2.4GHz chip so I upgraded to hAP AX^3. As many know that feeling: what a modern device and powerhouse it is, but what this wireless connectivity it comes with, why wireless connectivity is still a bottleneck? It didn’t feel good but it was beginning of great journey. Let me share how I fixed pretty much all connection losses by unconventional way: upgrading antenna and making thermal upgrades to avoid wireless chips overheating and throttling, at least this is what it felt like the main two problems were.

The starting point of any experiment is to set real-time monitoring, capture results before/after, the following project was found and installed on Raspberry Pi: https://github.com/akpw/mktxp-stack. To extend SD card lifetime and utilize 8GB of RAM “tmpfs” was chosen to store all metrics and logs. And storage for “prometheus” with “grafana” was configured to use tmpfs. It looks solid and helps to monitor overheating, and underlying hardware resources used:
mikrotik1.png
.

Then I was prepared to test different antenna I purchased and experiment with thermal upgrades. Everything was set, multiple devices were connected to one interface (5Ghz) via access list to avoid jumping between 2.4Ghz and 5Ghz. All I needed to see if connection lose happens it doesn’t try to pick different interface all of a sudden. Monitoring system polls data every 5 seconds and gives near real-time view on what’s going on with the wireless signal between router and multiple clients:
mikrotik2.png
I realised that running one-off speed tests wasn’t sophisticated enough, this is where RB4011 came to rescue. Luckily it wasn’t my main router anymore so I didn’t need 2.4Ghz interface on it. I went to upgrade its drivers to “wifi-qcom-ac” to be able to utilize full potential of 5Ghz chip. CPE mode didn’t work until I upgraded it to 7.19beta8 because it only does 802.11ac, while main router can do 802.11ax. Once upgrade was done, RB401 connected to AX^3 with 400Mbit/s and everything was well prepared to see what new antenna and thermal pads with paste can do for the router. Then boring part began, it took several evenings to disassemble the router, inspect suboptimal placement of thermal pads, lack of thermal paste in critical places and lack of good air ventilation. I had to redo it multiple times but it was worth it. Initially CPU sensor showed only narrow range between +47C and 52C regardless of amount of load, I was under impression that radiator wasn’t well attached and CPU temperature sensor took temperature from radiator while some chips weren’t attached and overheating. Maybe theory maybe fact, I won’t know. First experiment was to reduce number of thermal pads and paste, then CPU temperature went up to +72C under bandwidth load, I was very happy to see and continued working on thermal upgrade until it reached steady temperature without load and gradually increasing temperature under bandwidth test load, now CPU sensor showed me the truth:
mikrotik4.png
Then it was good time to experiment with new antennas I purchased beforehand, it took me some time talking to support about compatiblity. I needed higher quality antennas with magnet base to attach them in better position, rather than position router allowed me. Monitoring system I setup told me what best antenna position is. I chose the following antenna “Alfa Network ARS-WiFi6E-M2” which greatly fit my 10-inch rack from deskpi:
mikrotik5.png
Another important part was to make sure antennas are well connected with the sockets. These sockets are flimsy and “hand tight” recommendation wasn’t good enough. I used pliers to make sure there’s adequate torque. According to MikroTik there’s no software way to measure how well antennas are connected so I had to be creative and use guitar headphone amplifier to measure radio interference. Touching both antenna cables with guitar headphone amplifier showed me good interference when in close proximity to each of these cables individually. When I plugged everything back together I used smartphone next to antenna and then next to the router, moved antenna and measured connection signal along the way.

Only then I was confident antennas are attached correctly. The result is steady 300Mbit/s during Bandwidth between two MikroTik routers placed 15 meters apart, no connection losses and pretty good wireless reliability. Monitoring system I set in place should give me enough confidence that wireless performance is being monitored. If anytihng breaks hopefully I will be able to see what it is.

Disclaimer: I shared it for demonstrational purpose only. If you repeat these steps, it will void warranty for you and you will take full responsibility when anything goes wrong.

2 Likes