For creating an WiFi-enabled, Arduino-powered 8x5 LED matrix that displays Nagios status information.
Go to file
2011-12-11 04:38:07 -07:00
ArduinoNagiosDisplay.pde Initial commit 2011-12-11 03:59:58 -07:00
nag.php Added readme 2011-12-11 04:14:44 -07:00
README.txt Readme twitter and overview 2011-12-11 04:38:07 -07:00
ShiftOutExampleBreadboard.gif Added readme 2011-12-11 04:14:44 -07:00
ShiftOutExampleSchematic.gif Added readme 2011-12-11 04:14:44 -07:00

Arduino Nagios Display
by Will Bradley, www.zyphon.com/arduino-nagios, twitter @willbradley

For creating an WiFi-enabled, Arduino-powered 8x5 LED matrix that displays Nagios status information.
Intentionally kept hackable, with lots of commented-out sections and debugging information available, because everyone's environment is slightly different.

Included in distribution:
- ArduinoNagiosDisplay.pde, based on Arduino SimpleClient and shiftOutCode Hello World examples
- nag.php, based on GPL-licensed code by Jason Antman
- ShiftOutExample images, copyright Arduino

To assemble the hardware, I recommend an Arduino Diamondback, which is essentially an Arduino + WiShield.
Look at the included ShiftOutExample images which are taken from the Shift Out Arduino tutorial at http://arduino.cc/en/Tutorial/ShiftOut
The only difference is that the Diamondback/WiShield uses pins 14, 11, and 12 so I'm using pins 5,7, and 8 instead.

To get the microcontroller software working, look at the ArduinoNagiosDisplay.pde comments.

Also, put the nag.php script on your Nagios server outside of any authentication requirements. I put it at /var/www/nag.php . See the comment in the file and modify settings as needed.

Overview: Nagios keeps its status info in a status.dat file somewhere, which nag.php parses and outputs in a simplified way. ArduinoNagiosDisplay.pde gets loaded onto a WiFi-equipped Arduino, connects to nag.php, parses that simple data, and lights up LEDs corresponding to each server. You'll need to edit some settings in both files to make them work, but if you're halfway familiar with your Nagios installation, Arduino programming (especially the ShiftOut and SimpleClient examples), and networking (what's a subnet mask?) you should be fine. I'd love to see other people use this code and ask questions, too.