Blitzortung: Crowd-sourced global lightning detection

Lightning is one of nature’s most fascinating phenomena. In less than a millisecond, a kilometers-long plasma channel sinks an unimaginable electrical current from a cloud to the ground, unleashing vast amounts of energy in a very short period of time. Nearby observers will see a brilliant flash of light and hear (and feel!) a shockwave of thunder from the superheating of the air surrounding the bolt. However, did you know that the effects of lightning are also detectable as radio signals across thousands of kilometers?

A group of researchers led by Prof. Dr. Egon Wanke of Düsseldorf, Germany, started the Blitzortung project a few years ago. Blitzortung is a worldwide, non-commercial, crowd-sourced Time-of-Arrival (TOA) lightning detection and location network. Around the world, hundreds of stations listen for the tell-tale electromagnetic signature of a lightning stroke in the VLF range (roughly 3 to 30 kHz). When a stroke is detected, each station records the characteristics of the signal and a precise GPS timestamp, and then transmits this information to a central server.

When a probable lightning stroke is detected by multiple stations, the server uses the timestamps and the speed of light to locate the lightning strike. If station A detected the stroke at time tA, and station B detected the stroke at time tB, then the lightning stroke had to occur somewhere along a hyperbolic curve, as a time difference of 100 microseconds corresponds to a distance difference of 30 kilometers. Compute curves for at least three pairs of stations and they will hopefully all meet at exactly one point. This is the essence of Time-of-Arrival location finding.

Prior to this summer, the nearest station was about 400 km from Rochester, outside of Philadelphia. This station was still able to detect a significant number of lightning strokes from Rochester and beyond! That’s because lightning produces an extremely strong, extremely low-frequency electromagnetic pulse which bounces between the ground and the ionosphere for thousands of kilometers, like an atmospheric waveguide. However, two Rochester-area stations went live in late summer, providing additional coverage for storms in the Northeastern US.

One of those stations is in Interlock Rochester’s space in the Hungerford building. It consists of a custom-built magnetic loop antenna, a Blitzortung amplifier board, and a Blitzortung controller board. As of this writing, it has been active for two weeks and has detected 30,282 lightning strokes, the longest of which was 4,350 km away! This is despite our antenna being located inside of an industrial building on the outskirts of downtown.

(Props to W2NED and the rest of the crew who built the other station, located in Naples, New York.)

Total costs were approximately:

  • Blitzortung PCB and parts (amplifier, controller): €120
  • Antenna parts from Lowes: $20 (??)
  • STM32F4DISCOVERY ARM board from Mouser: $15

Future improvements include 3D-printing an enclosure for the amplifier (and perhaps the controller) and finding a better location to hang the antenna. While we’re approaching the winter months and won’t see much lightning until the spring, we’ve still got thundersnow to look forward to!

For more information on the Blitzortung project, visit their web site at You can see statistics for our station at the Lightning Maps site. Also, you can see the real-time map of lightning strikes at!

The Blitzortung amplifier board (left) and controller board (right) fully constructed, awaiting unit testing and integration.

A magnetic loop antenna hangs in the workshop during initial tune-up. This antenna is directly connected to the amplifier, and is tuned to receive crisp impulse signals around 10 kHz.

The controller board is installed in the server room, with power and amplifier connection on the top, GPS antenna cable on the top right, ground on the bottom right, and Ethernet on the bottom. The Blitzortung controller itself is located behind the STM32F4DISCOVERY board.

from on September 23rd, 2014Comments0 Comments

Congresswoman Louise Slaughter visits the Space.

Congresswoman Louis Slaughter visit to Interlock centered around the idea that a small group of people can make an impact and rediscover the future. I may be embellishing a little but I do think there was a sense that even if we did not always agree that the conversation is always worth having. The 3D printers were a big hit as they usually are and Skip was on hand to demonstrate a few of his “little” projects.

Here Skip shows how the 3D printed prosthetic hand works to the Congressman. The hands are being made for e-NABLE an organization networking volunteers using 3D printers to make and give hands to children.

from on July 1st, 2014Comments0 Comments

Raspberry Pi IP audio announcement: ippivox



So, you can ssh into your Raspberry Pi, even if you don’t have any HDMI-capable display equipment at hand.  The trick, though, is knowing what IP address gets assigned to the Pi so that you know what to feed into your ssh client.

Earlier, these pages addressed this problem using VNC to provide a remote Raspberry Pi display (eg, from your laptop).  It’s a good approach, well documented.

Alternately, with a little bit of prep work, perhaps using the above technique to get everything set up to start, you can program your Pi to announce its IP address via audio using text-to-speech.


Much cheaper output than a HDMI-capable monitor

The essence of this trick is to install a text-to-speech program, create a small script to extract the IP address, to pass that address to the text-to-speech program, and then finally to configure the initialization scripts to run the readout script shortly after booting.

I’m working with a rev B Raspberry Pi running Raspbian, but the approach should be generalizable to any distro for which a TTS package is available.

First, set up the Raspberry Pi with keyboard, mouse, wired networking, and video, either HDMI or analog.  If you use analog, you may need to increase the font size considerably even to be able to read the screen.  Open a terminal and install festival:

sudo apt-get install festival

Next, if you haven’t already done so, create a bin directory in your home directory to hold this and other small local scripts and programs:

mkdir ~/bin

Then, open your favorite editor to create a small script file containing the following:

/usr/bin/amixer cset numid=3 1
/sbin/ifconfig | /bin/grep -A3 eth0 | /bin/grep inet | \
/usr/bin/tr ':' ' ' | /usr/bin/cut -d\ -f 13 | \
/usr/bin/festival --tts

Be careful if you try to copy-and-paste that that a) you get the single-quotes carried over into the right place and b) that you don’t have any space or tab or other otherwise hard-to-see non-newline whitespace characters at the end of the lines with backslashes. If either error crops up, edit to fix.

(NB: ifconfig is a bit old school. Interlock HAM and rally enthusiast HoopyCat points out that to be fully kids-these-days compliant, one should use the ip command.)

Save the file as /home/pi/bin/ and give it execute permissions with chmod a+x /home/pi/bin/

You can now test it by typing


into your terminal with a speaker or earphones plugged in. If you are connected to a network (and if not, how did you get festival downloaded?) you should hear the IPv4 address read off. If not, run ifconfig to check to make sure you do have IPv4 address (“inet”) assigned, and that it is assigned to eth0. If it’s assigned to something other than eth0, modify the script above to suit.

Finally, to make this work at boot time, open the file


in an editor and add at the very bottom this one line


Save, reboot, and listen for the IP address to be read to you.

If it works, then you can dispense with attaching a video output device when it comes time to hack on the Pi in favor of just logging in from a machine elsewhere on the same network using ssh.

I find it useful to play a short alert announcement before the IP address is read. I also use a second TTS program, flite, both to give me a second shot at hearing the IP and also in hopes that I’ll be better able to understand at least one of them.

My more lengthy approach to this is documented in the following github gist:

Thanks go Matt via the Raspberry Pi blog for this tip on configuring the audio.

from on June 24th, 2014Comments2 Comments