Please give me an example of the simplest Arduino program to test the power supply current of the RAK11720 module.
The module does not have any peripherals. There are only BT and LORA antennas and a serial port for programming.
I have a Power Profiler at my disposal.
According to the specifications, we should get 2.37 μA in sleep mode
Welcome to the forum @zbigcover
But you will not see 2.37uA. This is a theoretical value given by Ambiq for a bare Apollo 3 chip.
With peripherals and the SX1262 LoRa transceiver the consumption will be higher.
I understand. I currently get 748uA for the program:
void setup()
{
delay(5000);
Serial.begin(115200);
api.system.sleep.lora(10000);
}
void loop()
{
api.system.sleep.all(2);
}
What else should I add to reduce the current?
I know the example given. However, I would like to ask for the simplest code to check if my RAK11720 is good. The proposed program code is too complicated and requires additional libraries.
There is no other code available.
And it doesn’t require any additional libraries.
Can someone on the forum check my simple program?
Since the beginning of my tests I have the latest version
LoRaWAN joined or LoRa P2P and RX disabled?
BLE disabled?
RAK11722 WisBlock Core, which will never reach lower consumption like RAK11720 WisDuo module.
In LoRaWAN mode Class A, joined network, BLE disabled. Low Power example with RUI3 V4.2.1
The peaks are from FreeRTOS which is running in the background.
Please send me the output code of your program. I will try to upload it and compare the results.
I have already used this program code and unfortunately I got the result I sent earlier, which is about 300 uA.
I don’t know what I’m doing wrong. That’s why I wanted to upload the compiled file that you got.
It will be the same.
Are you using LoRaWAN or LoRa P2P?
If LoRaWAN, what Class and does the device join a LoRaWAN server?
If P2P, do you switch off RX with AT+PRECV=0?
In general, use AT+LPM=1 to force deepsleep.
RUI3 starts BLE on startup, wait 30 seconds, then BLE will switch off, then measure.
I have tried AT commands before. Ultimately I want to use LoRa P2P. But now I want to get the lowest power consumption because the device is to work on one battery for 3 years. Without meeting this condition I have to choose another hardware solution. That is why at the very beginning I asked for the simplest program to verify the hardware. And then I will add more functionalities and control the power consumption. Please send the file so I can compare it. I can also send the compiled file for comparison.
Even the simplest application needs to activate low power mode and put the LoRa transceiver into sleep mode and make sure BLE is switched off.
AT+LPM=1
AT+NWM=0
AT+PRECV=0
wait for BLE to switch off.
Let’s start from the beginning, i.e. from the simplest application that we will upload to our modules.
Can it look like this?
void setup()
{
Serial.begin(115200);
delay(5000);
Serial.println(“RAKwireless RUI3 Node”);
}
void loop()
{
api.system.sleep.all();
}
Not enough.
void setup()
{
Serial.begin(115200);
delay(5000);
Serial.println("RAKwireless RUI3 Node");
api.lora.nwm.set();
api.lora.precv(0);
api.system.lpm.set(1);
api.ble.advertise.stop();
}
void loop()
{
api.system.sleep.all();
}
Great, thank you. I’ll upload this version of the program tonight and check the power consumption.