Module heartbeat monitor with 6 inputs
This module was part of the rack box project — which was terminated when I moved out of my first apartment.
Detects and alerts if any of the monitored modules goes silent; meaning their heartbeat stops. Uses an AVR ATtiny2313 microcontroller.
Details
When my rack box project started filling up with modules, I needed (or rather wanted) a way of monitoring that they were running and doing what they were suppose to. I tried monitoring the fuses (1) (2), but that just wasn't practical. I needed a way to know that the modules were not only powered, but running. This module does just that.
I originally designed all of my devices with a run light, an LED that blinked when the firmware was running. This LED was in essence a heartbeat, and by making sure that the heartbeat didn't stop I would know that the module was working fine.
If more than 10 seconds passed, without receiving a heartbeat this monitor unit would go into alarm state. The blue LED would flash, and the green LED corresponding to the failed module would stay solid.
All alarms had to be manually reset, even if the heartbeat came back. The reason for this was so that I would see it if a module had been dead for some time, but came back by itself. This would still indicate a problem with that module. If a heartbeat was not detected at all after a reset, that input was marked as inactive and would not produce any alarms.
During normal operation the green LEDs flashed every time a heartbeat was received on that input, so it was quite the light show :)
I/O
Inputs
- Module 1 heartbeat
- Module 2 heartbeat
- Module 3 heartbeat
- Module 4 heartbeat
- Module 5 heartbeat
- Module 6 heartbeat
- Reset
Outputs
- Module 1 failure LED
- Module 2 failure LED
- Module 3 failure LED
- Module 4 failure LED
- Module 5 failure LED
- Module 6 failure LED
- Module error alarm
- Lifelight
D-Sub 9-pin
- 5V
- 0v
- Module 1 heartbeat input
- Module 2 heartbeat input
- Module 3 heartbeat input
- Module 4 heartbeat input
- Module 5 heartbeat input
- Module 6 heartbeat input
- Reset alarm input
- Module error alarm output
Source code

https://github.com/thomasjsn/AVR-Module-heartbeat-monitor
Gallery
Installed in the Rack box