Have you ever wanted to send a quick message to your HAM radio buddies over the air but then realized you forgot your radio at home? [Troy] created Oinker to remedy this problem. Oinker is a Perl script that turns emails into audio.
The script monitors an email account for new messages and then uses the Festival text-to-speech engine to transform the text into audio. [Troy] runs Oinker on a Raspberry Pi, with the Pi’s audio output plugged directly into an inexpensive ham radio. The radio is then manually tuned to the desired transmit frequency. Whenever Oinker see’s a new email, that message is converted into speech and then output to the transmitter.
The script automatically appends your HAM radio call sign to the end of every message to ensure you stay within FCC regulations. Now whenever [Troy] runs into some bad traffic on the road, he can send a quick SMS to his email address and warn his HAM radio buddies to stay clear of the area.
Here’s a hack to help you increase your reading speed. Gritz is an open source text file reader, which reduces the need to look around the screen. Words pop up one at a time, but at a configurable pace.
[Peter Feuerer] got the idea for Gritz from Spritz, a commercial product for speed reading. The creators of Spritz took three years to develop their software, and recently released a demo. They claim people can read at 1000 WPM using this technology. Spritz is taking applications for access to their APIs, which will allow developers to integrate the software into their own applications. However, a fully open source version with no restrictions would be even better.
Using Gritz, [Peter] claims to have read a book with a 75% improvement in his reading speed. He admits it’s not perfect, and there’s still much development to do. Gritz is written in Perl, uses Gtk2 for its GUI, and comes with instructions for running on Linux, OS X, and Windows. It’s released under the GPL, so you can clone the Github repo and start playing around with accelerated reading.
A few weeks ago in Finland [Oona] discovered a radio data stream centered around 76KHz in a FM broadcast and she recently managed to decode it. This 16,000bps stream uses level-controlled minimum-shift keying (L-MSK) which detection can be quite tricky to implement. She therefore decoded the stream by treating the received signal as non-coherent binary FSK, which as a side effect increased the bit error probability. [Oona] then understood that the stream she was getting was the data broadcast by Helsinky buses to the nearby bus stop timetable displays. She even got lucky when she observed a display stuck in the middle of its bootup sequence, displaying a version string. This revealed that the system is called IBus and made by the Swedish company Axentia. However their website didn’t provide the specs for their proprietary protocol. After many hours of sniffing and coding, [Oona] successfully implemented the five layer protocol stack in Perl and can now read the arrival times of the nearby buses from her apartment.
A friend of [Michael]’s said his company was getting rid of some old lab equipment and asked him if he wanted a very large and very old digital storage oscilloscope. A ‘hell yes’ and we’re sure a few beers later, [Michael] found an old Gould 200 MHz four-channel scope on his bench. Even 20 years after its production it’s still a capable tool, but the serial ports on the back got [Michael] wondering – would it be possible to plot the screen of the scope on his computer?
The scope has three ports on the back – GPIB, miscellaneous I/O, and RS423. The latter of those ports is similar enough to RS232 that a USB to Serial converter just might work, and with the help of a null modem cable and a terminal, [Michael] was able to connect to this ancient scope.
In the manual, [Michael] found a the serial commands for this scope. The most useful of these is a command that prints out the contents of the scope’s trace memory as a series of 1-byte integers. With a short bit of PERL programming, [Michael] can create a PDF plot of whatever is on the scope’s screen. It’s formatted perfectly for Gnuplot, MATLAB, or even Excel.
Awesome work, and especially useful given these old scopes are slowly making their way to a technological boneyard somewhere.
Writing a paper in LaTeX will always result in beautiful output, but if you’d like to put that document up on the web you’re limited to two reasonable options: serve the document as a .PDF (with the horrors involves, although Chrome makes things much more palatable), or relying on third-party browser plugins like TeX The World. Now that [Todd Lehman] has finally cooked up a perl script to embed LaTeX in HTML documents, there’s no reason to type e^i*pi + 1 = 0 anymore.
For those not in the know, LaTeX is a document typesetting language that produces beautiful output, usually in PDF form. Unfortunately, when [Tim Berners-Lee] was inventing HTML, he decided to roll his own markup language instead of simply stealing it from [Don Knuth]. Since then, LaTeX aficionados have had to make do with putting TeX snippets into web pages as images or relying on the [; \LaTeX ;] generated from the TeX The World browser extension.
[Todd Lehman]’s perl script generates the PDF of his LaTeX file and pulls out all the weird font and math symbols into PNG files. These PNG files are carefully embedded into the HTML file generated from the normal text pulled from the LaTeX file. It’s a ton of work to get these document systems working correctly, but at least there’s a reasonable way to put good-looking LaTeX on the web now.
If you’re going to freeze your butt off smoking in the middle of winter you might was well have company while you’re out there. [Zach’s] company wanted to crunch some data about smoking breaks and worker productivity. Instead of just meeting the bland data collection needs he decided to add functionality.
He took time to explain the different parts of the system. Above you can see the web interface that lets you know which of your coworkers are smoking right now. It also lets you click to check in and out from your breaks. After this was up and running he found that often the smokers forgot to ‘clock out’ before a break. As a backup system he build a physical interface on the way out of the office. Each smoker has their own button with a corresponding LED. If the light’s on you’re having a break and when it’s off you’re working. This controller is Arduino based and uses a Perl script to monitor the input and sync both that physical display and the web interface. [Zach] posted a few pictures if you want to take a look at the rest of the system.