[HH] Internet connectivity watchdog timer

Tom Metro tmetro+hhacking at gmail.com
Fri Oct 21 12:37:30 EDT 2011


Here's the challenge: I have available an ASUS RT-N16 router running
Tomato USB firmware attached to a fixed wireless receiver, and I'd like
to have a watchdog timer that resets both when there is a loss of
Internet connectivity.

I have access to the semiconductors available at the Canadian version of
Radio Shack:

http://www.thesource.ca/estore/category.aspx?language=en-CA&catalog=Online&category=Semi+Conductors%2fIC%27s

which is sadly limited to a 555 timer, an NPN transistor, PNP
transistor, and a 5 V regulator. All at nicely inflated prices. (i.e.
the 555 costs $5 instead of $0.20.)

One solution is to tap off an LED on the RT-N16, which I believe can be
software controlled. (Preferably using a phototransistor mounted to the
exterior of the router, but it doesn't look like I can get my hands on
one of those.) The router has USB ports, so a USB-to-parallel or serial
adapter is another possibility, if I can get my hands on one at a
reasonable price (looks like the same vendor has them for $35 and $50
respectively), and I can figure out how to toggle outputs on it via a
script.

A script running on the router can perform any desired connectivity
checks, then pulse the LED (or I/O line), and loop. This way a crashed
router or loss of connectivity will trip the watchdog.

The external 555 circuit then would be setup as a resettable timer,
similar to this watchdog circuit:
http://www.delabs-circuits.com/cirdir/digital/555/del00013.html

I'd like to have it drive a solid state relay, but it looks like this
mechanical relay:
http://www.thesource.ca/estore/category.aspx?language=en-CA&catalog=Online&category=Relays

is all that is available. I'd use the normally closed contacts to power
the devices being reset, so if the watchdog fails, it'll be less likely
to perpetually disrupt power.

Might need another 555 to control the power reset duration (which might
need to be 30 seconds or so) and/or a 2nd relay to power cycle the fixed
wireless receiver before the router.

Any thoughts on how to simplify any of this?

Theoretically, the router hardware includes a watchdog timer, and if it
can be proven to be reliable, and controlled by my software instead of
Tomato (if it even uses it), then most of this could be turned into
software, and I'd just attach a transistor driver to the LED output to
control a relay (and maybe a 555 delay to a 2nd relay). But there are
several "ifs" there that I may not have time to resolve.

Some searching turns up that Tripp Lite has some UPS models with
built-in watchdog timers and USB connectivity. Here's the page where
they describe the software used to support that:
http://www.tripplite.com/en/products/model.cfm?txtModelID=2590

That might be the ideal option, if I can source one here, and can
reverse engineer the software (or, if already supported on Linux, port
it to the router).

 -Tom



More information about the Hardwarehacking mailing list