How to turn off LoRa in the RAK4631

Please include the following information, in order for us to help you as effectively as possible.

  • What product do you wish to discuss? RAK4631

  • What firmware are you using? Arduino BSP

  • What firmware version? Can it be obtained with AT+VER=?

  • Computer OS? Windows

  • What Computer OS version? Windows 11

Good morning,

I would like to turn off the LoRa Radio in the RAK4631 and I will turn it on only when it is necessary. How could I do it?

Do we have any kind of low power wan best practice guide for the RAK4631?

Regards,

Claudio

Are you using RUI3 or the Arduino BSP? Your initial post suggests Arduino, but want to be sure.

For both RUI3 and Arduino using the SX126x-Arduino library, the LoRa transceiver will be automatically in low power mode unless

  • LoRaWAN class C is used (RX always on)
  • LoRa P2P RX is enabled

It will be woken up when required, e.g. you force P2P RX, or you do initiate sending a payload.

In RUI3 the sleep/low power mode is complete controlled by the framework. In the SX126x-Arduino library you can force the transceiver into low power mode with the Radio.Sleep() function.

For “best practices” in RUI3, I have written some examples in the RUI3 Best Practices.

For Arduino, you can have a look into Low-Power-PIO

1 Like

Hi,

I am using Arduino BSP.

As you can see in the screenshot below, I am using your LoRa library in the last version: beegee-tokyo/SX126x-Arduino @ ^2.0.26. Where are the low power settings for LoRa Radio in the library? I would like to study to understand what we have as options, ok?

I was thinking, in some cases, using the “Wire.end()”(where make sense) to reduce the power consumption for the sensors and storage: RAK1904, RAK1906, RAK12500, RAK15007, RAK5801. What do you think about it?

Regards,

Cláudio

The SX1262 has a few modes

  • RX
  • TX
  • CAD
  • RX Duty Cycle
  • Standby
  • Sleep

Only the last two are for lowering the power.

When using LoRaWAN, it is better not to tinker around with the commands that select standby and sleep, because the status is controlled by the LoRaWAN stack.

When using LoRa P2P, you can actively control the status. Sleep is the lowest current consumption, Standby is higher, TX is the highest. Best info about the status is in the SX1262 datasheet.
The library has commands Radio.Standby(), Radio.Sleep() to force these status.

CAD and RX Duty Cycle can reduce the power consumption in scenarios where you need to have RX active all the time. They are not that easy to use, best information about them can be found in Semtechs documents SX1261-2_RxDutyCycle_V1.0.pdf and SX126X CAD performance evaluation V2_1.pdf (not sure if the versions of the documents are the latest)

Wire.end() can help to reduce power consumption, but the saving is not very high.