RAK4630 + RUI3 P2P: is it normal that sleep current does not fully recover after psend()?

Hi all,

I’m building a battery powered SOS knob for my grandfather and hoped to run it on one CR2 3V battery per year. I’m using a RAK4630 module on a custom PCB and was now testing RUI3 + LoRa P2P low-power behavior.

I have already searched through several forum topics and tried different shutdown approaches, but I still could not get this working as expected.

Main question

After one real api.lora.psend(...) , is it normal that sleep current does not return completely to the original low-current level on RAK4630 + RUI3 + P2P?

Or is there a known way to recover the original deep-sleep current after TX?

What I measured

On my setup:

  • with no LoRa TX, sleep current is about 25 µA
  • LoRa P2P configuration alone does not break this low sleep current
  • but after the first real transmit , sleep current becomes about 400–406 µA and stays there

What I already tested

I created two reduced test sketches and can attach them below.

V4: init / shutdown isolation

This test showed:

  • baseline: ~25 µA
  • configure LoRa only: ~25 µA
  • api.lora.precv(0) only: ~25 µA
  • paths involving Radio.Sleep() ended up around ~400 µA

V5: real transmit isolation

This test showed:

  • configure LoRa only, no send: ~25 µA
  • psend() then sleep immediately: ~400 µA
  • psend() then wait for TX callback: ~400 µA
  • adding settle delays after TX did not help
  • post-TX attempts such as precv(0) and Radio.Sleep() did not recover the original low-current sleep

So my two concrete questions are

  1. Is this expected / normal behavior for RAK4630 + RUI3 P2P after a real transmit?
  2. If not, is there a known solution or exact shutdown sequence that brings sleep current back to the original low-current level?

Thanks in advance

If useful, I can attach the two reduced sketches:

  • sleep_test_V4.ino
  • sleep_test_V5.ino

Sleep_test_V4
https://github.com/kLOkUIS/PolycomEmergencySystem/tree/main/Sleep%20design/sleep_test_V4

Sleep_test_V5
https://github.com/kLOkUIS/PolycomEmergencySystem/tree/main/Sleep%20design/sleep_test_V5