Hi,
I have an arduino pro mini consuming 12ma constant if on and about 30ma with the addition of the NRF24L01.
once the circuit is initiated the consumption goes to about 50-60ma..(leds comes on and off)
I am looking for a way to drop this software wise for remote battery life most importantly .
and whats the smallest battery I could use, recheargeable to last about 5-6 hours of intermittent use.
this is used to turn leds on for turn signal so it is used not very very often.
am I right to assume that it will last me powered on for ~10.41 hours ?
Unlikely. You should divide manufacturer's battery capacity claims by a factor of 2 to be safe.
The battery life can be anything you want it to be. It depends almost entirely on how often and long your processor is awake, and for how often/long you are transmitting data. Make that intermittent, and a battery could last for years.
For a solar powered Arduino/NRF24 project see this page.
jremington:
Unlikely. You should divide manufacturer's battery capacity claims by a factor of 2 to be safe.
The battery life can be anything you want it to be. It depends almost entirely on how often and long your processor is awake, and for how often/long you are transmitting data. Make that intermittent, and a battery could last for years.
For a solar powered Arduino/NRF24 project see this page.
so what you are saying is if I need a 700mah for my circuit I should go for a 1500 or 2000 to last within calculation timeframe?
void ReceiveLoop()
{
//delay(5);
if (radio.available())
{
radio.powerUp();
while (radio.available())
{
radio.read( &inputs, sizeof(inputs) );
Serial.println ("available");
}
}
else
{
Serial.println("No radio available");
radio.powerDown();
}
}
so I tried this for test to put the nrf24 to sleep - but I noticed if I don't put a min delay of 5 it always goes to the else part
the other thing is I am not able to powerup again or sense that the TX unit is plugged again.
You check radio.available() and then you call radio.powerUp().
Do you expect to receive in powerDown mode?
when you reset the TX arduino it takes x ms to trigger the radio module so it makes sense that it sees it not available very fast and jumps to execute the ELSE that part until further notice ,
what I want is when I reset the tx side and air data connection is available to know to power back the rx somehow ..this is my issue.
Whandall:
You have to power up the chip to receive anything.
The code (and your explanation) are pretty senseles.
Somewhere in your code the chip is powered up,
or you would never enter the if part.
Then it's pretty strange to power it up again.
Reading all available messages into the same buffer
will lead to interesting/unexpected behaviour.
But hey, you do not have to believe me.
actually the only way to powerup is by resetting the nrf chip - can it be done by code to reset power to it ?
just like pressing the reset on the arduino board ?
destiny2008:
actually the only way to powerup is by resetting the nrf chip
Rubbish.
What do you think that the functions radio.powerUp() radio.powerDown() do?
I press the reset button on my Arduinos very rarely,
mostly to restart a 'run once' testscript.
Without using sleep I would not powerDown my NRF at all,
and even then, I would prefer to be woken up by a packet reception,
so it would not make sense to shut the receiver down.
The NRFs need quite some time from power up to standby, so I try to avoid that.
jremington:
You might want to spend some time with the NRF24L01 documentation.