RT5350F: Hot & slow WiFi


I'm working on getting OpenWrt v19.07.3 to run on a Belkin Wemo Insight "smart" power plug (F7C029de) which practically identical to the F7C027 for which an image config exists in mainline. When I run the image I compiled, I'm noticing two problems:

  1. The RT5350 SoC gets noticeably hotter (~60C) than with stock firmware (~50C). I've read online that this may be the case when the internal LDO (vs. an external one) is used. Here, however, the hardware stays identical so something in the firmware must influence the power dissipation.
  2. The WiFi is quite sluggish, when transferring files over SSH, I'm getting data rates of only ~160 kB/s. I have no way to assess the transfer rates with stock firmware, but the hardware should be capable of achieving higher rates.

Does anyone have ideas how I can improve on these problems? The WiFi performance is not so critical but the high SoC temperature is a little concerning considering this device will run unattended.

Thank you and best regards,

Try disabling the unused Ethernet ports, I had the exact same effect on Rt5350 some years ago and it turned out the it gets really hot trying to power-up Ethernet ports not in use on a specific board.

I have already disabled them via the device tree:

&ethernet {
        status = "disabled";
&esw {
        status = "disabled";

Disabling the hardware in devicetree only prevents the driver from speaking with it and it's considered non-existent -- if the bootloader enabled all 5 FE switch ports, you will need to enable ethernet and esw in devicetree and set portmap and disablemap. Example from rt5350_hootoo_ht-tm02.dts:

&esw {
        mediatek,portmap = <0x10>;
        mediatek,portdisable = <0x2f>;

In that way, the registers of the switch to disable unused ports will actually get written.

Good point, I hadn't considered the possibility of the bootloader enabling the ports before handing over to the kernel. I tested mediatek,portdisable = <0x1f>; (because I don't need the switch at all) and the power consumption went from 1.13W down to 0.83W, a >25% reduction. I call that a success, thanks! I verified that the bootloader had in fact enabled all 5 ports with a printk statement.

The SoC gets still very hot to the touch, however, I can't make any quantitative comparison measurements now as the ambient temperature has changed significantly since I measured last time.

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.