Tapatalk

Getting 3.3 mA when sleeping instead of 4 microAmps

Getting 3.3 mA when sleeping instead of 4 microAmps

18

PostApr 04, 2018#1

I am testing for low power application, I have a simple set up of serial connection with FTDI cable and whisper node and a multi meter connected in serial connection.

When running a sample code as below which just puts the whisper node to sleep, the measured current I am getting is 3.4 mA, ideally this should be around 4 microAmps as per other user test cases.

Any idea why this could be happening ?  Will appreciate any pointers.

*i have not removed the small red light on the FTDI connector, which is always glowing

Regards

**************
#include <LowPower.h>
void setup() {
}

void loop() {
  // put your main code here, to run repeatedly:
LowPower.powerDown(SLEEP_1S, ADC_OFF,BOD_OFF); 

}

1885
1885

PostApr 04, 2018#2

You need to also put the Radio into sleep mode.

Have a look on the Low Power example from the Talk2 Library for reference.

Finally, once measuring the current you need to disconnect the FTDI and power if from, let's say, 2xAA batteries. Otherwise, the FTDI used the LDO and it's very likely some current leakage to the serial connection will happen.

18

PostApr 04, 2018#3

Thank you Talk2, 

I found this example, https://platformio.org/lib/show/697/Tal ... riodic.ino

I am putting the radio  to sleep as well as Flash, the power is now down to 2.96 mA. I am not using any battery power in conjunction with USB serial connection.
I am using alligator cable to connect multimeter leads to the pins for measurement, not sure what else could be reason for the current readings.

*******
void setup() {
  
  // Radio - Initialize the radio and put it to sleep to save energy
myRadio.init();
myRadio.sleep();

  // Flash - We're not using, so just power it down to save energy
myFlash.init(T2_WPN_FLASH_SPI_CS);
myFlash.powerDown();
}

void loop() {
  // put your main code here, to run repeatedly:
  
LowPower.powerDown(SLEEP_8S, ADC_OFF,BOD_OFF); 

}

**********

1885
1885

PostApr 04, 2018#4

Try measuring the current connecting only GND and VBAT (3V) or GND and VIN (5V), without anything else connected.

If you could share a picture or schematic it might assist.

18

PostApr 04, 2018#5

Yes, that was it, I connected only the GND and VIN, now i am getting 18 microAmps.

The 4 microAmp to my 18 microAmp is the difference attributable to the measurement accuracy of the oscilloscope Vs the multi meter I am using ?

Regards

1885
1885

PostApr 04, 2018#6

Those are much closer figures. Now, by reading the VIN current you're measuring the LDO Quiesente current + the sleeping current for the MCU, Radio and Flash memory. You might wish to read the VBAT pin at the same condition when powering by 3V.

Now to get a precise measurement it's important to verify the accuracy of equipment utilized. One way of doing that is by, for example, measuring the current from a 5V passing through a 1M Resistor to Ground. According to the ohms law, you'll read something close to 5uA.

Additionally, you mentioned oscilloscope, normally the noise floor on oscilloscopes are quite high compared to an amperemeter which might cause problems reading very low voltage levels. Remember that every time you measure the current, a small voltage drop will occur because of the shunt resistor. As this cannot be eliminated, sometimes it's important to also measure the voltage after the amperemeter to make sure it still close to what you expect.

18

PostApr 04, 2018#7

When measured with VBAT I got somewhere 7 and 8 microAmps. I also checked the accuracy of amperemeter, it is as accurate as it is designed. I passed known Voltage to 1M resistor and the current was corresponding, except the amperemeter can only show to the accuracy of 1 MicroAmps and decimals of the microAmps is not shown.

Thank you and Regards

PostApr 12, 2018#8

Hello Talk2,

Please see the attached schematic, I am getting 44 microAmps in the top measurement connection scheme while getting 7-8 microAmps in the bottom.

Although my sensor works, the RF does not work in the bottom schema and the ampere measurements in the bottom one appear wrong. Can you tell me what is the difference in these connection diagrams for ampere measurement.  Also any idea why I am getting 44 microAmps, when connected through Battery and I am getting 18 microAmps for VIN, connected throught FTDI connector, just the VCC is connected to VIN and ground is connected to amperemeter.

Appreciate your help.
IMG_20180412_100620.jpg (1.36MiB)

1885
1885

PostApr 12, 2018#9

Hi nashdwaj,

Could you pls share the test code you are running? Also, apart from battery and ampmeter do you have anything else connected to the board?

18

PostApr 12, 2018#10

Hi Talk2 test code as below, 

*******

#include <T2WhisperNode.h>
#include <LowPower.h>

/* You need to configure the Whisper Node Version */
//#define T2_WPN_BOARD T2_WPN_VER_RF69
#define T2_WPN_BOARD T2_WPN_VER_LORA

#if T2_WPN_BOARD == T2_WPN_VER_RF69
#include <RH_RF69.h>
RH_RF69 myRadio;
#elif T2_WPN_BOARD == T2_WPN_VER_LORA
#include <RH_RF95.h>
RH_RF95 myRadio;
#endif

T2Flash myFlash;

void setup() {
  
  // Radio - Initialize the radio and put it to sleep to save energy
myRadio.init();
myRadio.sleep();

  // Flash - We're not using, so just power it down to save energy
myFlash.init(T2_WPN_FLASH_SPI_CS);
myFlash.powerDown();
}

void loop() {
  // put your main code here, to run repeatedly:

  
LowPower.powerDown(SLEEP_8S, ADC_OFF,BOD_OFF); 

}


**********

Nothing else is connected other than what is seen in the diagram. I have made the connections using alligator clips in some instances.

Read more posts (4 remaining)