RAK3172-E and transmit power, RUI 5.0.0+

Hello,

I am using several dozen RAK3172 modules in my devices. Over time, I started suspecting that their transmit power is lower compared to two other devices I have: the RAK WisNode TrackIt and the SenseCAP Weather Station.

From the same location, with identical settings, the devices using the RAK3172 consistently achieve about 4–6 dB lower RSSI (Helium network).

A few days ago, I connected an RF analyzer (Anritsu) to a RAK3172 module to check its output power. Before the measurement, I used an RF generator to produce a 16 dBm signal, and the RF analyzer showed 14.9 dBm, which is fine considering some cable and connector losses.

However, with the RAK3172 module connected and transmitting, I measured around 11 dBm, which is about 4 dB lower than expected. The RAK module was, of course, set to the maximum possible transmit power (AT+TXP=0).

Is this normal? Has anyone else experienced something similar? A 4 dB difference can significantly impact range.

The RAK modules I use are running RUI versions 4.1.0 to 4.2.0. In the changelog for RUI 5.0.0, I noticed the following entry:

RUI-1101: [Power Consumption] Low transmit power when EU868 TXP=0 (16dBm)

Could this be related?

My follow-up question is about using RUI 5.0.0+ on the RAK3172. Despite multiple attempts, and even with successful compilation in Arduino IDE, or just simple generic FW flash via STM32Cube Programmer, I could not communicate with the modem via the serial link. Even a simple custom firmware that just blinks an LED did not work. After downgrading to RUI 4.2.0 / 4.2.1, everything behaves normally again.

The transmit power problem should be fixed with RUI3 V4.2.0 according to the changelog => RUI_4.2.0_294, LoRaWAN Tx current is lower then RUI_4.1.1

RUI3 5.x.x is not officially released. It will support FUOTA.
Using RUI3 V5.0.0 requires a different bootloader. Flashing a RUI3 V5.x.x firmware on a device with V4.x.x bootloader does not work.

If you want to try RUI3 V5.x.x, you need to flash the device first with STM32CubeProgrammer or Jlink with the new bootloader. Then you can use the RUI3 V5.x.x BSP for custom applications.
You can find the required file RUI_5.0.2_RAK3172-E_fuota_final.hex in our Github repo.

WARNING
RUI3 V5.x.x is still under testing and we cannot help much if you experience any problems with it.

1 Like

Hi,

After some additional measurements, I can confirm that since RUI3 v4.1.1, the output power has increased by ~2.5 dB compared to the v4.1.0.

If interested, here are my results (including ~1 dB of cable+connector losses, measured with an Anritsu S332E SiteMaster



)

  • 13.5 dBm (txp=0)
  • 12 dBm (txp=1)
  • 10 dBm (txp=2)
  • 8.5 dBm (txp=3)
  • 6.5 dBm (txp=4)
  • 4.5 dBm (txp=5)
  • 2.5 dBm (txp=6)
  • 0.5 dBm (txp=7)

So the real max. power at txp=0 is around 14.5 dBm. That should be OK, right ?

Regarding RUI3 v5.0.0+ i was able to successfully communicate with module when i uploaded

RUI_5.0.2_RAK3172-E_fuota_final.hex

but not when uploaded

RUI_5.0.2_RAK3172-E_final.hex

i am not sure what the difference is (fuota capability ?), but previously (in my first post) i had tried .hex files without “fuota” without success. So, i will continue to test RUI_5.0.2_RAK3172-E_fuota_final.hex…

Thank you.