6
\$\begingroup\$

I need a circuit to act as a watchdog to a micro (which is not powered (instead of in a sleep mode)most of the time).

it needs to be low power (< ~4uA) and non-programmable. So no I2C RTCs or MCUs.

I've looked at RC timers combined with a comparator but extremely large resistors and caps become too expensive for the timeout required (25hours).

I've also looked at using shift registers to divide out an astable multivibrator to the correct time, but ICs (counter/dividers/flip-flops) i've been able to find draw too much current - ~8uA alone.

\$\endgroup\$
8
  • 1
    \$\begingroup\$ Doesn't the micro have an integrated watchdog? Most of them do.. \$\endgroup\$
    – m.Alin
    Feb 10, 2013 at 19:39
  • 1
    \$\begingroup\$ ... and some μCs have watchdogs which can run while the μC sleeps. What model/family of μC have you got? \$\endgroup\$ Feb 10, 2013 at 20:09
  • 1
    \$\begingroup\$ You could consider an MCU which can have programming disabled after being initially programmed. Some MCUs can only be programmed after such lock-out, by using a high voltage programmer, i.e. out of circuit. Alternatively, pre-ROM-programmed MCUs are an option if your volumes justify it. \$\endgroup\$ Feb 10, 2013 at 20:32
  • 1
    \$\begingroup\$ You don't want to power the micro, but many micros with internal watchdog will take less current when sleeping with only the watchdog on than you are willing to spend on a external circuit. This makes no sense. \$\endgroup\$ Feb 10, 2013 at 23:08
  • 1
    \$\begingroup\$ If you are willing to add additional circuity, there's no reason not to consider an MCU solution with the cost of the programming factored into the price, when you compare against other options. \$\endgroup\$ Feb 11, 2013 at 3:07

2 Answers 2

5
\$\begingroup\$

If the current draw specification can be extended to 5 μA from the specified 4, the CSS555C micropower timer, a distant cousin of the classic 555 timer, can be used for the purpose.

The CSS555C is a hybrid device, with analog timing circuitry including integrated timing capacitor, a 6-decade counter/divider, and an on-board EEPROM to store the counter settings. The decade divider allows the CSS555C to provide a single delay of the order of days.

The diagram below illustrates this extended timer operation:

Extended delay timer using CSS555C

Specifically, note the "C" at the end of the part number: This indicates the variant with an internal capacitor integrated on the chip, thus reducing current consumption further.

Incorporating this part into the design would meet the specified design parameters, of not modifying the existing microcontroller portion, and not using a separate microcontroller. The part can be powered from 1.2 Volts to 5.5 Volts DC.

\$\endgroup\$
1
  • 1
    \$\begingroup\$ Thanks for an actual answer that considers the constraints! This looks like a good solution. \$\endgroup\$
    – Mark B
    Feb 11, 2013 at 19:27
2
\$\begingroup\$

4 µA is not "low power" for a watchdog. That's pretty bad actually compared to a lot of built-in watchdogs of modern microcontrollers. Back when built-in watchdogs took a few µA, I made a external one that used only a few 100 nA. This is not hard.

However, lots of current microcontrollers have watchdogs built in that take less then 4 µA and can wake the micro from sleep. On the longer settings, the extra cost of waking up occasionally to bump a counter is so small on average that you can make any length wakeup period in firmware.

Some PICs have a "ultra low power watchdog" peripheral, which takes well under 1 µA. I expect a number of micros from other manufacturers do to.

\$\endgroup\$
5
  • 2
    \$\begingroup\$ "I made a external one that used only a few 100 nA. This is not hard." - Can you give details of this circuit? Could it be adapted to a timeout of 25hours? \$\endgroup\$
    – Mark B
    Feb 10, 2013 at 21:51
  • \$\begingroup\$ Having a shorter timeout, waking more frequently, is not a option for this design. \$\endgroup\$
    – Mark B
    Feb 10, 2013 at 21:55
  • 1
    \$\begingroup\$ @user: The external watchdog I did was ten years ago and used a few transistors and high-value resistors and capacitor. I don't remember the details. No, 25 hours is way too long for analog. Why can't you wake up more frequently and count to get a longer time? This is how it's usually done. It seems you are pre-supposing a solution. Step back 2 levels and explain what you are really trying to accomplish. A long external watchdog may not be the best way to solve the true problem. \$\endgroup\$ Feb 10, 2013 at 23:06
  • \$\begingroup\$ Thanks, I think maybe I seem to have pre-supposed a solution because I'm not communicating the limitations well enough. The boot time for this MCU (which is actually an embedded modem) is several seconds before the user application can run, I cannot use the MCU to count short wakes because the device is battery powered and waking the modem will ruin battery life. \$\endgroup\$
    – Mark B
    Feb 10, 2013 at 23:22
  • 2
    \$\begingroup\$ @user18848 - so don't wake up all the way to running the end application. Just run the few instructions to count until the real wakeup and go back to sleep. You are drastically overconstraining yourself, or else you have a "difficult customer who knows how it needs to be done" business problem rather than a technical problem. Or throw in an additional MCU in a SOT-23 for half a buck to handle it. \$\endgroup\$ Feb 11, 2013 at 3:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.