MorseMicro HaLow RX Working at 2MHz, TX at 32MHz - Why?

Hello everyone,

I am using a fgh100M-H module with OpenWrt. While checking the association list (iwinfo wlan0 assoclist), I noticed an unusual behavior:

" by the way my client Morse firmware version 1.13.1, morselib version 2.6.4-esp32, Morse chip ID 0x306 "

:pushpin: RX is operating at 2MHz, while TX is at 32MHz
:pushpin: RX Speed: 0.6 MBit/s, MCS 0, 2MHz
:pushpin: TX Speed: 32.5 MBit/s, MCS 7, 8MHz

System Details:

  • Device: RASPBERRY PI
  • Firmware: mm6108.bin
  • BCF File: bcf_mf16858_fgh100mh_v6.3.0.bin
  • Country Code: US
  • Channel: 902-928 MHz (HaLow Band)

Question:

:small_blue_diamond: Why is RX operating at 2MHz while TX is at 32MHz?
:small_blue_diamond: Is there a way to manually set RX and TX bandwidth to match?
:small_blue_diamond: Is this expected behavior for HaLow, or is something misconfigured?

Any insights or suggestions would be greatly appreciated! :rocket:

Thank you!

If you’re not sending much data, this is expected behaviour. Try sending data across the link in the appropriate direction and the MCS rate/bandwidth reported by iwinfo should increase.

Hi umutc,

Could you post the exact output you get from iwinfo wlan0 assoclist?

The chip only supports 1MHz, 2MHz, 4MHz and 8MHz modes, so when it shows 32MHz mode there is something wrong. Can you confirm it’s not 32Mbps (which would be 8MHz MCS7)?

Note that it might be normal for the Rx to show 2MHz MCS0 if there is no traffic, as it would just be receiving the AP beacons which are sent in 2MHz MCS0 (so that all stations - even those far away- can hear them). Please try running an iperf test in both directions on your station, this will likely result in your Rx speed going up to 8MHz MCS7 (32Mbps).

Cheers,

Michael

1 Like

YES 32mbps sorry :frowning:
If I constantly send data from the client side, both rx and tx see 32mbps, everything is normal so far, but if I run the iperf server on the esp32 side and try to send data to that port through the raspberry pi, I cannot always reach the client, it behaves as if it is not on the network.