TorrentMeter – A steampunk bandwidth meter
Weeks after showing you TorrentMeter Mk.1 (video) and TorrentMeter Mk.2 Steampunk Edition (video), I finally get to document how it was made.
I got inspired by reading Tom Igoe's article in Make Magazine issue 11, about an antique gauge displaying air quality data from the web. It hit a nerve: friends and I had once built a steam powered teletype. Since we've got fiber optical intertubes at home, I wanted a big brass gauge telling me how big my pipe was. And that's the idea of my TorrentMeter.
TorrentMeter Mk. 1
The TorrentMeter Mk. 1 is a prototype. It's made from a a custom made voltmeter, scale 0-150, 150=5V. Thus it's rather easy to use a PWM output pin of an arduino to drive it. The gauge draws only a few mA, thus damaging the micro controller by dragging too much current out of the output pins was no issue. Unfortunately, neither is a micro controller's pin output necessarily 0V for low nor 5V for high. Thus a simple switching transistor came to help.
Depending on your setup you might want to protect the transistor output from current flowing back from the gauge coil by adding a suppressor diode to the output.
Software
So far a gauge is connected to a micro controller, Arduino that is. That sure is overkill, but it is readily available. Getting the gauge to actually display the desired information? In my case I want to simply have my router post the current incoming bits per second (the torrent) to the Arduino. Check out my repository on github! There is a perl script, grepping the desired information from my Linux router's /proc, and a loop that's started on boot. That loop calls the script periodically and pipes the output to the serial port emulated by the FTDI chip on the Arduino. The Arduino converts it into a pulse width. If that was too fast for you, you might want to read the above mentioned Make Magazine article. For the Arduino software, just combine what you can learn from the Arduino AnalogInSerial and Dimmer examples.
TorrentMeter Mk. 2
I got a 1908 voltmeter in a brass housing, about 20cm (8in) in diameter. It had a resistor made from a wire wick. The gauge's internal resistance without that is now about 67 ohms, eats up 150mA when the handle is at full scale, and wants about 10V. That's too much to be driven directly by a micro controller. A switching amplifier, made from a couple parts, shall help.
Notice the two parts. They have different power sources but common ground. The left side is just a pull-down resistor, a power LED and a switching transistor. Its output is connected to the right part, which is the actual switching amplifier. From a software perspective it works similar to TorrentMeter Mk.1. Yet, my antique gauge had an aperiodic scale. Thus I had to come up with a calibration array that would map input values to the appropriate pulse width.
The Scale
Look at the aperiodic scale that my antique voltmeter came with: Volts as unit, manufacturer logo (Siemens-Halske) and down below it says "aperiodic, DC".
I needed a linear scale from 0 through 100, saying Mbps, thus making it a TorrentMeter. I chose the logo of Dingfabrik as manufacturer logo, since that is where @PylonC and I disassembled the voltmeter when it arrived in the mail. And I needed it to look as old as the original, so I stained it. To do so, I just took a clean baking tray, filled it with black tea and slowly shoved in a sheet of paper sideways. That's rather important to avoid having bubbles under the sheet, thus creating an even stain. I let it sit for a couple of minutes and let it dry in the oven at 50°C (120 F). Ready to be printed on! The scale was drawn with Inkscape, see repository on github for files.
By the time I was done with TorrentMeter Mk. 1 and thinking about how to make the scale of TorrentMeter Mk. 2, @saschaludwig contacted me. We live only about half an hour from each other. He helped me to draft the Mk. 2 scale and I showed him how the TorrentMeter was driven. He was working on his own version: Megabitmeter, a modern gauge with a laser cut and laser edged scale, qualified for series production. And boy, I can't wait for its release!
November 15th, 2010 - 16:20
Super – auch die Fotos!
November 16th, 2010 - 06:25
Das ist echt cool. Ich wunsche, dass ich Internetanschluss mit Glasfaserkabel haben.
November 16th, 2010 - 07:16
That is so awesome! I will feature it in pcbheaven.com today
November 16th, 2010 - 07:26
Sehr cool!
November 17th, 2010 - 05:09
Thanks! I’ve got a 1940′s era voltmeter with similar resistance and current issues. I was wondering how to connect it.
November 21st, 2010 - 23:33
If you put these in a nice wooden old time radio style case, with USB and ethernet interfaces. We will buy them. Talk to Thinkgeek and work something out. Add Nixie tubes.
November 22nd, 2010 - 01:18
Can I buy your Mk.2 meter? I’d love to make it a Christmas gift for my son at college.
Seriously interested.
November 22nd, 2010 - 03:38
Very awesome use of a gauge. I agree with We Will Come about making a version with Nixie tubes. There’s a bunch of old russian stuff floating around for cheap. I’d check the forums at tubeclockdb.com and see if there’s any suitably “retro” enough.
November 22nd, 2010 - 15:25
Put me on your list…I need to buy a few for Christmas presents!!!
Thanks!!!
John
November 24th, 2010 - 20:26
Is there a way to make it “flicker”?:P
November 25th, 2010 - 04:36
I’m so sick of seeing this stupid thing everywhere.
July 7th, 2011 - 19:29
Then stop clicking on links that say anything about “Steampunk”, “bandwidth”, and “Meter”.
Because you’re going to keep seeing it everywhere because it’s a great idea, and the fact that he’s shared the schematics means that we can build our own version too, which is awesome. And awesome stuff gets shared.
November 25th, 2010 - 10:33
This is a awesome idea ! Think I might just hook a couple up outside the door of our server room !
November 26th, 2010 - 22:30
Love your site man keep up the good work
November 28th, 2010 - 10:43
^^ yeh that is so true. I have to agree with you
July 17th, 2011 - 16:35
That rivals some of my retro inventions! Cool.
October 18th, 2011 - 13:16
Then stop clicking on links that say anything about “Steampunk”, “bandwidth”, and “Meter”.
Because you’re going to keep seeing it
August 16th, 2012 - 19:50
Wow man.. Is awesome!! I want one for my office. Can you make me one? Please contact me by mail.
August 17th, 2012 - 02:07
We had many inquiries, thus @pocsascha and me made a kit version: http://megabitmeter.de