Connect with us

Wake Up Real Time Clock

Discussion in 'General Electronics Discussion' started by sirch, May 8, 2013.

Scroll to continue with content
  1. sirch


    Dec 6, 2012
    I am looking to design an AVR based circuit* that needs to run for a long time, ideally months, from batteries (with possibly solar trickle charge). From some research it looks like it is possible to put the AVR into a fairly deep sleep where it runs on uA however I need it to wake up periodically.

    Given that waking up the AVR is achieved by an interrupt is there a real time clock chip or circuit that can do this from whilst using minimal current? I've done a lot of googling but can't seem to find anything.

    *the circuit is a tipping bucket rain gauge that will be left in a remote location and hopefully only serviced once every few months. Obviously the tipping bucket can be used to wake up the AVR on first tip. But I would also like it to wake up say every hour to read the temperature and possibly also once a day to send data back via GPRS
  2. BobK


    Jan 5, 2010
    Don't know about AVR, but PICs have an internal watchdog timer that can wake it up from sleep. They also have a super low power wakeup using an external capactor that discharges slowly then wakes it up after it reaches some voltage limit. Check the AVR datasheets for something like these.

  3. gorgon


    Jun 6, 2011
  4. (*steve*)

    (*steve*) ¡sǝpodᴉʇuɐ ǝɥʇ ɹɐǝɥd Moderator

    Jan 21, 2010
    For the general concepts, you need to read up on how to run your microcontroller of choice at the lowest possible power.

    Once you've done the obvious things (turning off outputs which drive things, lowering the clock rate, etc.) you start to get into more exotic areas like looking at the quiescent current of external components (voltage regulators especially) and turning off interrupts and/or the watchdog timer and especially the brownout detection.

    There is an excellent (but now somewhat dated) explanation of how to achieve long battery life in a chapter of "The Art of Electronics" (when is the next version coming out???).

    You might find that you can completely power down everything except the RTC if the RTC can deliver an interrupt which can be used to power up the uC.

    An example might be the DS3234 which can issue an interrupt when an alarm condition is met. Unfortunately, this device has a minimum current of 120uA even in standby, so it may consume more power than you'd like.

    The ISL12057 looks interesting. It has similar capabilities but has supply currents in the nA range (mind you, it seems to require a 1.8V power supply too...) It can trigger timed interrupts (It says every second or every minute, but I assume the delay can be set to other values)

    As I suggested previously, the interrupt need not actually generate an interrupt. You could use this to apply power to the uC. The uC then interrogates the RTC, does what is required, and turns off its own power.

    If you do this, you probably don't want to use an arduino because that's going to pause for a while on power-up to see if it's going to be programmed...)

    You can program without a bootloader though.

    Here are some pages with useful information:
  5. sirch


    Dec 6, 2012
    Thanks for the replies, really helpful.

    I have to say that I had just not looked at SPI/I2C devices because I had assumed - incorrectly - that they would only interact over the bus. Lesson learned.

    Things in the uA range quiescent current will be fine. A 4AH battery at average 1mA load will give 166 days in theory, which is more than twice what I am looking for.
Ask a Question
Want to reply to this thread or ask your own question?
You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.
Electronics Point Logo
Continue to site
Quote of the day