Spectrographic Auroral Indicator – A Northern Lights Warning Device using arduino
3/16/2011 EDIT: The Wing Kp Predicted Geomagnetic Activity Index model is now deployed and operational. Costello is now considered non-operational and will be discontinued on 23 Mar 2011. Comments and questions are welcomed at [email protected]
The Wing Kp Predicted Geomagnetic Activity Index model is known to perform well for large geomagnetic storms and includes both a 1 hour and a 4 hour advance prediction of activity. Wing Kp 7-day model output is available in ascii data list format at http://www.swpc.noaa.gov/wingkp/wingkp_list.txt and via Anonymous FTP at ftp://ftp.swpc.noaa.gov/pub/lists/wingkp
Build a visual indicator of the Northern Lights using the Arduino. Know when to go outside and look up, no matter where you live!
For years I have struggled to find a good way of alerting me to Northern Lights activity. I have tried email alerts and real-time monitoring software. Nothing worked well and I would regularly miss good displays.
Enter the Costello Geomagnetic Activity Index. Simply put, this is a prediction of auroral activity. It is pretty reliable and gives about an hour’s notice of northern lights activity. The problem is, of course, you have to keep checking the web page to catch any jump in the Index.
What we will build is a visual representation (an LED display) of the current level of auroral activity. The build consists of three main parts: a PHP Web scraping script, a Processing script, and an Arduino script. The LED lights green for low activity, blue for moderate, red for high activity and white for GET OUTSIDE NOW! I have mounted this in an old clock face so it is always visible in my living room. Essentially this is a poor man’s Ambient Orb costing under $40 to build compared to the Ambient Orb’s $150 + S/H + $6.95/mo for custom monitoring.
Right off the bat I wish to thank Tod E. Kurt for his Spooky Arduino projects and his help getting me through my own stupidity. It is his scripts this project is based on and I strongly recommend checking out his blog for great Arduino projects.
Step 1: The PHP script
This is my first project using the Arduino outside of the usual “hello world” scripts. I’ve had to learn the Arduino software, the Processing software, Apache configuration and a bit of PHP to pull this off. There are most likely more elegant ways of doing this, but it works.
The first of the scripts is the PHP Web scraper. The Costello Index is calculated and fed to a FTP server text file(there is http output as well, but the FTP info is more recent.) We need to pull only the most recent Predicted Index from the text file. The PHP script parses out the needed information, converts the Index number into a hexadecimal representation of color in the form #RRGGBB and then writes that to a text file to your server.
Step 2: Set up the server – the easy way
Unless you have a web host with PHP enabled, follow this awesome Instructable to set up an Apache server in just a few minutes.
How to install a web development environment on localhost
I tried several free web hosting sites that were supposed to be PHP enabled. I never did find one that fit my needs and most were just exercises in frustration. This Instructables showed me how to install Apache, MySQL, and PHP in just a few minutes. This turned out to be far easier than I had expected.
Place your PHP script in the appropriate folder. You will need to forward the appropriate ports if you use a router. If you have a dynamic IP address check out DynDNS to easily keep your server reachable.
for more detail: Spectrographic Auroral Indicator – A Northern Lights Warning Device