Hi everyone,
I have found several posts on how to wake up Arduino from sleep using an RTC module.
Usually, it is done to save power when we need to use Arduino for readings or activating a motor for one or few times a day.
I have a similar application which requires to activate a pump twice a day.
Pump and arduino use two different battery.
Now, I'll come to my question,
why do several users prefer activate/disactivate the sleep mode instead of simply turning off and on Arduino?
If I do not need to save anything in the memory, is there any system to use a RTC to close the circuit and power arduino on for a specif amount of time?
Maybe, can I use a RTC to control a relay?
I cannot find any topic about, could you please help me with that?
AntroxEv:
Usually, it is done to save power when we need to use Arduino for readings or activating a motor for one or few times a day.
That would be the reason.
AntroxEv:
I have a similar application which requires to activate a pump twice a day.
Pump and Arduino use two different battery.
You say - "battery". So presumably you wish to save battery power. The Arduino will draw about 30 to 50 mA when idling. You would use a Pro Mini, possibly Nano, not a UNO.
AntroxEv:
why do several users prefer activate/deactivate the sleep mode instead of simply turning off and on Arduino?
Because "turning off and on" is very much non-trivial. You need a number of additional components to do it.
AntroxEv:
If I do not need to save anything in the memory, is there any system to use a RTC to close the circuit and power Arduino on for a specific amount of time?
Yes, you need a relatively complex circuit to do that.
AntroxEv:
Maybe, can I use a RTC to control a relay?
Paul__B:
That would be the reason.
You say - "battery". So presumably you wish to save battery power. The Arduino will draw about 30 to 50 mA when idling. You would use a Pro Mini, possibly Nano, not a UNO.
Because "turning off and on" is very much non-trivial. You need a number of additional components to do it.
Yes, you need a relatively complex circuit to do that.
A RTC and a timer module.
Thanks for your reply
Yes, there are several ways to reduce the consumption from changing to Nano, as you said, to having a bespoke board.
But I do not like to keep a device on if I know I am not going to use it.
I my Arduino was connected to the mains, I would use a cheap timer such as: plug timer
or any plug timer you may find everywhere.
But I need to use an external battery supply, and I wonder if I can find something similar ready to use.
AntroxEv:
But I do not like to keep a device on if I know I am not going to use it.
That's irrational. On a properly designed low power circuit, the board will be drawing micro-, if not nano-, amps. Usually the time it would take to drain the battery at these current levels exceeds the shelf life of the battery.
pert:
That's irrational. On a properly designed low power circuit, the board will be drawing micro-, if not nano-, amps. Usually the time it would take to drain the battery at these current levels exceeds the shelf life of the battery.
Not by using Arduino.
Citing from the link below:
The initial outcome is that, to save power, forget about using a development board.
[\quote]
Yes, I could use a barebone board but I am exploring the solution of the object if possible.
To save power, don't use a hungry regulator or any at all and just remove LED's, they eat power. Even for the small time you want to power the Arduino they will consume more than the Arduino itself.
And "not like to keep a device on" is indeed complete irrational. You DO want it because it's easier (more on that later) and because you DO want it to so something.
And why is it easier? That's mainly because you know all states when you wake, no need for extra hardware and you have no risk of phantom powering it.
All in all it makes it irrational not to just put it to sleep
To make a "bare bones" Arduino, buy a $2 eBay Pro Mini and use a solder pencil to swipe off the regulator and the power LED. For 3V battery operation, start with the 3.3V 8MHz version.
The current draw during power down sleep mode will be around 100 nanoAmps.
jremington:
To make a "bare bones" Arduino, buy a $2 eBay Pro Mini and use a solder pencil to swipe off the regulator and the power LED.
As per another thread, if the clones had retained the power jumper on the board design, it would only be necessary to break that jumper. It was originally part of the design.
Thank you for all the replies.
It is not easy to built a bare bone arduino for a beginner.
But I understand I need to aim to arrive to your solution in the next future.
What I was thinking to make things quicker and easier for me was time switch relays such as
AntroxEv:
It is not easy to built a bare bone Arduino for a beginner.
Nor is it in any way whatsoever sensible. The only reason to "build a bare bones Arduino" is to brag. Most of us here are way "over" that. The cheaply available modules (Pro Mini) are tested and reliable; you just buy them and they work.
Yes, that would do the job perfectly, obviously no Arduino needed at all.
The only question is how much current it would draw - continuously - from your 12 V battery; it would draw somewhat more while the relay is actuated. This critical specification is missing from the listing. But it is not terribly expensive (is it?) so may be worth buying and you can test how much current it does draw - I suspect not much. Then you can figure how big a battery you need, solar charging etc.
AntroxEv:
It is not easy to built a bare bone arduino for a beginner.
If you can't solder then sure. AVR chips only need power, ground, 2 bypass capacitors and a resistor+button for reset to run.
You would want a proto-board to put it on and might spend $5 on parts if you shop poorly.
Assembling the first one could take hours to get right or could take about 30 minutes.
The reason to make any is to learn or to make a custom board.
Or you can buy a Pro Mini and save time and money.
You will need a programmer or FTDI type cable to program non-USB boards.
AntroxEv:
Thank you for all the replies.
It is not easy to built a bare bone arduino for a beginner.
But I understand I need to aim to arrive to your solution in the next future.
What I was thinking to make things quicker and easier for me was time switch relays such as
with a Built-in 1.2V / 40mA rechargeable battery and Operating voltage: 12V DC / AC
Hence, I could connect my battery on one end and arduino on the other.
Or I did not get it how it works?
If your concern is power consumption, youd do not want anything that uses a mechanical relay, the relay will take more power in a few second than an arduino in sleep mode needs in weeks if not months. Also, I have not looked up the specifications for the linked timer, but it appears to be an industrial timer, so low power consumption was probably not a priority, and the battery is likely only used in case of power failure.
Thanks for the several replies.
So it seems it is not so easy to find what I was looking for.
The best solution as mentioned by Paul__B might be the arduino pro mini.
On this post: here I have found the following data:
ATmega328P Pro Mini Version with no power LED, at 5V:
Active Mode 16.9 mA
Dower-Down Sleep with Watchdog Timer enabled 0.0232 mA
(with 3.3V is even lower)
Therefore, if Arduino works twice a day, 5 minutes each time:
Active Mode 2.81mA + 0.56mA= 3.37mA per day
By using a 2.3Ah battery, it should power on Arduino for 683 days.
It seems I've done wrong calculations. Is that possible?
Counterintuitively, running at a slower speed won't always result in less total power consumption. The reason is that, although it's drawing less current, the microcontroller will also need to be awake longer to accomplish a task than it would at a higher clock speed. In the case where you can wake up, get business done, then go back to sleep, it's actually not beneficial to clock down. If you have a situation where the microcontroller is idle and awake for significant amounts of time, that is the case where clocking down pays off.
But what does it need to do when woken? 5 minutes is already pretty long for doing something full time.
thanks, always confusing when using mA and mAh.
My full project will be a temporary irrigation systems with three 12V @ 400mA small water pumps for water and fertilizer to cover holiday absences.
I also wanted to find a way to activate a mechanical switch to turn led on for few hours at the night.
Maybe I do not need 5 minutes, I am still checking if the specs I have (240LH) is correct. Maybe 30 sec will be enough. But 5 minutes is the worst scenario.
mAh is simply mA x hour. And that's exactly what you did to get the values Or actually, mAh/day That's why
2,3Ah / 0.00337Ah/day = 683 days => Ah / (Ah/day) = Ah / (Ah/day) = 1 / (1 / day) = days. Normal math rules apply to the unit as well
But if in the time it's on you will draw 1200mA for a motors, the current of the Arduino is neglect-able. The motors will draw the same as the Arduino the whole day in just 4 minutes.
septillion:
mAh is simply mA x hour. And that's exactly what you did to get the values Or actually, mAh/day That's why
2,3Ah / 0.00337Ah/day = 683 days => Ah / (Ah/day) = Ah / (Ah/day) = 1 / (1 / day) = days. Normal math rules apply to the unit as well
What is confusing me is as below when you write 1200mA instead of 1200mAh. Or when I read Arduino consumption is 40mA and not 40mAh.
septillion:
But if in the time it's on you will draw 1200mA for a motors, the current of the Arduino is neglect-able. The motors will draw the same as the Arduino the whole day in just 4 minutes.
Yes, the expected calculations were made in a similar post I am still using for amending the schematic:
But this will be confirmed at later stage.
By now the real problem was the Arduino Uno consumption but we definitely arrived to a good solution with the Pro Mini. Or a "bare bore" board when I will be more confident.