Your ideas, projects, opinions - podcasted.

New episodes Monday through Friday.

Correspondent

Epicanis

Host ID: 182

"Epicanis" has been this correspondent's pseudonym on the internet for enough years to make him feel old and to make it an established enough identity to not want to change it now.

A self-described Penguinista with a long career as a compu-janitor/systems administrator, Epicanis is broad-spectrum,
multi-purpose "Swiss-Army Nerd", with a B.S. in Microbiology, an A.S. in Chemistry, a quarter-century of continuous
I.T. experience and a desire to escape the economic roach-motel of rural northern Maine, so if you're looking to hire,
let him know.

Sorry this is such a short episode. I don't know what came over me, I was just listening to Mr.X talking about doing something with Python in Hacker Public Radio episode 2340, and for some reason I just felt a compulsion to record some kind of episode myself. It was so strange. I'm way behind on my Hacker Public Radio contribution duties anyway, so here's a quick, geeky tutorial about a thing I did with a Raspberry Pi just to try it.

The temperature sensor I'm using is one of the many "1-wire" protocol devices supported by established kernel drivers, hence the reference to loading the modules for it:

sudo modprobe w1-gpio
sudo modprobe w1-therm

The part about adding "dtoverlay=w1-gpio" to /boot/config.txt and then rebooting is also necessary, otherwise the modules load but no devices show up in /sys/bus/w1/devices/ .

Part of the fun was coming up with a way of extracting the temperature reading in useful form without having to write a bunch of unnecessary python code. Not that there's anything wrong with python, but I get the impression that some people think everything "RaspberryPi" has to be written in python. An example of this that amused me is the piFM project, which cleverly abuses the first-generation Raspberry Pi spread-spectrum circuitry to turn it into a surprisingly powerful FM radio transmitter. This project had two ways to run it - the actual compiled C program that takes input audio and makes FM radio come out...and a python "module" that was literally just a system call that...ran the C program that takes the audio and makes FM radio come out.

Examples of reading the temperature data that I ran into tended to also be short python scripts, so I took it as a challenge to do without, resulting in the fun-to-recite command in the episode, which on my system is:

To be completely proper, one probably should validate that output to make sure the CRC matches so you know for sure that the read of the temperature data was correct, but I've had Zabbix checking my living-room temperature once every minute for a couple of days now and seen no odd readings or failures, so I'm not going to bother making anything more complicated than my hypnotic one-liner, unless I ever try to use the same kind of setup to monitor something more important, like a tank of expensive fish or a bioreactor full of beer.

If you want some more detailed connection instructions for the DS18B20 temperature sensor and the Raspberry Pi, here is one of the many online pages with the whole process:

This half-hour-long episode describes the complete process for turning an old, limited thin-client terminal (an HP T5740) - and incidentally just about any other kind of hardware - into a simple automatic media-playing kiosk-style device, running VLC on a hand-made minimalist Arch Linux installation. I've tried to describe the procedure I came up with in enough detail that anyone with a little bit of Linux experience can hopefully follow and potentially replicate the whole thing, but not so much detail that it gets horrifically tedious. Some of the extra details I glossed over in the audio are here in the show notes if you want them.

This episode will mostly be of interest to people with a little bit of Linux experience, but may hopefully be interesting to a few others. Mac and Windows partisans take note: before you start giggling about how "complicated" it is to set up Linux as you listen to what I describe here, I will reiterate that I chose to do the install "by hand" like this, and I assure you a more typical Linux install is quite a bit simpler (having just spent several months brutally installing Windows systems on innocent computers, getting and ordinary Linux installation finished is not only easier but faster. ("Windows is getting ready to start to prepare to configure updates. Please wait 5 hours and don't turn off your computer...") So there.

I'm also going to try posting an "enhanced" version of this episode in .opus format with chapter markings and so on at my site: http://hpr.dogphilosophy.network Additional information may be found there as well, especially if anyone asks for it.

Some Linuxable Hardware I Mentioned:

Installing linux on old computers, laptops, etc. is such a well-established tradition that I don't see any reason to hunt down specific examples, but I also mentioned:

I actually have also tried the "web browser kiosk" thing with the browser loading up a particular web page on start. It actually works just fine, except that the Windows DHCP server seems to be kind of slow, and if I just let the system start without checking the browser initially just shows an "internet no work" sort of message. I got around this nicely by adding a couple of steps to .xinitrc before starting the web browser. First, I created a graphic to use as an X background that just has text that indicates that it's waiting for the network to come up. Then, I put a loop in .xinitrc that checks for a hostname on the internet to see if it resolves to an IP yet, which would tell me the internet had come up. I didn't want to have to install any specific additional software utilities or, ideally, to have to do any special parsing. It turns out that you can just use "getent ahosts4 google.com" (or other internet hostname) as a test for this - it will return nothing if the name doesn't resolve, so you only need to test if the response is not a blank. I used "sleep 1" to pause one second between tries. Once the resolution returns something, I had xsetbg change the background graphic to a more appropriate default and continue starting the browser, the VNC server, etc.

This is a show concept I came up with half a decade ago, as the show itself explains. The journal article may be found as PubMed ID#19323757 ( http://www.ncbi.nlm.nih.gov/pubmed/19323757 ) if you want to follow along.

Hopefully the updated time references below for the show-note comments are now correct for this version of it. They should be close, anyway.

Also, I'm oddly pleased at how inferior the "old" part of today's episode sounds: it means I've actually gotten a lot better at recording and editing.
(It's quite listenable still, I think, it just doesn't sound as good as the newer stuff.)

07:52 I'm pretty sure that the Hasbro corporation, owners of the "Play-Doh(tm)" trademark, don't actually make microfluidizers - it's just an analogy

10:25 -=Executive Summary=-

11:05 Yes, including you...

11:47 Yes, "Fecal Transplants". Ewwww.

11:53 You're welcome.

12:30 If you're not familiar with this kitchen gadget, a "French Press" is a device for making coffee or tea. It's A glass cylinder with a fine wire-screen plunger. I suspect you could "plunge" the ingredients together repeatedly to get a sloppy substitute for the microfluidizer processing.

07:52 I'm pretty sure that the Hasbro corporation, owners of the "Play-Doh(tm)" trademark, don't actually make microfluidizers - it's just an analogy

10:25 -=Executive Summary=-

11:05 Yes, including you...

11:47 Yes, "Fecal Transplants". Ewwww.

11:53 You're welcome.

12:30 If you're not familiar with this kitchen gadget, a "French Press" is a device for making coffee or tea. It's A glass cylinder with a fine wire-screen plunger. I suspect you could "plunge" the ingredients together repeatedly to get a sloppy substitute for the microfluidizer processing.

Today's episode discusses (and encourages) the use of metadata tags in audio files.
Most of the episode is spent on id3v2.3 (metadata for mp3 files) and vorbiscomments (metadata for opus, ogg vorbis, flac, and speex files), and how to mix them, though metadata in webm/matroska, windows media, and wav files is briefly discussed as well.

This episode's files have also been crafted with substantially more metadata than the ID3v1 set of tags that HPR normally limits itself to, to serve as examples.

Listeners to the opus, ogg (vorbis), or speex versions will also have access to chapter markings if your playback software recognizes standard vorbiscomment chapter metadata. (No chapter markings in the mp3, as support for it is extremely sparse, and I've not
yet even managed to find a tool for making mp3 chapters that actually works - the java utility I mention in the episode crashes on me without starting...)

All metadata conforms to the published standards, so your playback software should at best fully use it all, or at worst simply ignore it. If your player software actually DOES have a real problem with this file, I would very much like to know!

If there's anything wrong with the metadata, blame Epicanis, not HPR (I did the metadata myself).

If you hear or see any errors in this episode, please tell me. I'll issue appropriate corrections in subsequent episodes. If I'm a big enough screwup with this episode, I could even do a small episode on "everything I got wrong in my metadata episode" if I did
badly enough. I don't THINK there should be more than a few minor errors or omissions here, though.

ERRATA: In chapter 18 (at 34:53) there is one small error: oggenc does NOT transfer attached pictures from flac input (though it DOES transfer all vorbiscomment metadata. FLAC stores attached pictures in a separate metadata structure so oggenc misses it.
opusenc - at least in recent beta versions - DOES appear to transfer the attached pictures as well as the vorbiscomments, though. Another reason to upgrade to opus, I suppose...)

In this special episode of TGTM news Deepgeek interviews Icelandic Parliamentarian Birgitta Jónsdóttir. We discuss Ban Ki-moon's recent faux pas in
Iceland's Parliment, Birgitta's hacking, her work in human rights and privacy, and whether or not Wikileaks is living up to it's original mandate.

This is the first of two or maybe three parts on the subject on Ingress,
which was released into invitation-only beta-testing by Google in November of 2012.

Ingress is a
world-spanning location-based game set in a world somewhere between the real one
and a fictional one that is almost exactly like the real one except with space-alien
mind control conspiracies.

This episode is purely about "playing the game". The follow-up episode will be
more about the underlying technology and things you (and Google) might be able to do
with it besides the core gameplay.

There may be a third part if there is enough interest.

A final note - the app version that I mention in the show was upgraded
literally about 5 minutes after I finished editing and started to prepare this
show for upload. (And, yes, I'm using "literally" correctly - I mean I finished
exporting the file from audacity, went to check Google+, and within 300 seconds
someone was mentioning that a new version was out). It does seem to resolve
some of the problems I mentioned, just as I speculated that it might. I'll
follow up on this and any subsequent updates in the followup episode.

Comments and suggestions and demands for more episodes are welcome, nay,
encouraged either on this episode's comments at hackerpublicradio.org
or on my own blog at http://hpr.dogphilosophy.net . Thanks for listening!

It took 14 months longer than intended to get this episode done! To make up
for it, I've unintentionally ended up with enough time of me talking to almost
make up a minimal-useful-sized episode every month while everyone's been
waiting.

Today's episode of "Thoughtkindness" consists of:

Me begging for forgiveness for disappearing for a year.

An update on "bunnies", my linux laptop from Ohava Computers

Over an hour of my attempt to collect and explain why we need
to make media on the internet more "freetarded"

After revealing what ticked me off and made me start on this episode, I
launch into a short technical and historical talk about the handful of audio
and video files that matter on the web today.

(Opus, Ogg Vorbis, WebM, MP3, Flash Video, MP4, and a few others).

Following this, I explain why I think the legally-free media formats are
so important, and much more useful than most people seem to recognize, why
I think we need to be paying more attention to audio than video, and what
needs to happen to make legally-free media ubiquitous.

I conclude by once again begging for attention and foolishly publically
announcing that I want to try to develop some software and invite everyone
to pester me for it as well as for future audio shows. Maybe I won't be
allowed to procrastinate for another year before producing more this time.

Let me know if this is helpful or at least entertaining...

Note: an Opus version of this episode will be available at
http://hpr.dogphilosophy.net for either online listening in
Firefox 15 or later, or downloading for listening in VLC or
other Opus-supporting applications.