The Voice Kit is *not* a Google Home in kit form

Reading Time: 3 minutes

(Update: Please visit the AIY SubReddit!)
Yesterday morning around this time, I read the announcement of the new kits from Google and got pretty excited. The Google Voice Kit got an upgrade and now includes a Raspberry Pi WH model along with all the other hardware you need to put this together. They also released something called a Vision Kit that does some pretty cool image processing. (No doubt I will get one of those as well, but for now, there are things I want to try with the Voice Kit first.)

The hardware build was pretty simple, but there are places where you need to have the instructions, such as assembling the speaker’s wire harness. Do yourself a favor and follow the instructions. The cardboard case, in particular, should be done in a certain manner, as to not have it look like garbage when you have completed it.

So, I got the thing all together and booted it. The green LED on the Pi flashed and everything looked good. I ran the Android app and pushed the buttons as directed and… Nothing. I rechecked all of the connections and rebooted and again, nothing. The next step was to get a monitor and keyboard hooked up to it to see what was going on with it. The thing is, it has a Mini HDMI connector and Micro USB, unlike the other Raspberry Pi’s I’ve used. That means you need some special connectors and micro USB OTG cable and some way to get both a keyboard and mouse connected to the one micro USB, all which I fortunately happened to have and was somehow miraculously able to find.

I rebooted the device and it went to a black console screen with small Raspberry and a flashing cursor. It didn’t display the familiar rainbow square that my other Pi’s do and there was no scrolling of boot messages. I figured that the card’s image had probably gotten corrupted, either in transit, or by something I did after assembling it. (I probably powered it down at a bad point.) The thing is, there’s no way of knowing without a monitor connected.
I found the help section on the AIY website that has a link to the disk image, a modified Raspbian image. I downloaded that and flashed it to the card and rebooted with the monitor, mouse and keyboard connected.

This time, it worked and it displayed a Raspbian desktop. I pushed the big white arcade button on top, expecting to hear a familiar Google Home chime or a voice or something, but, again, it did nothing. Back to the instructions.

At this point, I had the hardware correctly assembled and configured and the software running and connected to my WiFi. It is time to start enabling the Google end of things, something which requires using the command line, either via SSH or on the Pi directly, using Raspbian’s console. Don’t worry if you’re not familiar with the command line–the instructions are clear and written with a beginner in mind. The section “Get Credentials” will probably be new and unfamiliar territory, if you are not a developer, familiar with API’s and all of that. Again, the instructions are clear and straightforward, though complex. Read them carefully.

When that’s all done, find Step 90, “Move to the demos folder” and type the commands as instructed to run the demonstration program. Running the demo, you really will want to keep an SSH session open, so that you can see what’s happening. Without it, there is simply too little feedback to be of use.

Is it a fully-fledged Google Home at this point? No. It doesn’t have any “Hey Google” listening capability. It can’t play or stream music yet. It does’t do *anything* if you just boot it up with a factory configuration.

Am I disappointed? Not at all. What this thing does give you is potential–it’s as hackable as any Raspberry Pi, with some cool new hardware. It’s got Python and some custom libraries that will let you do things that you could never do with a Google Home, such as experiment with its GPIO pins, or perhaps make it the interface for a completely different piece of hardware: “Google, preheat the oven to 425 degrees and then bake for an hour. Reduce the temperature to 300 degrees and bake for 20 minutes. Send me a text when it’s done.”

I’ll be writing more about what this thing can do, here and on Reddit’s AIY sub, but for now, I’m going to go hack around with it to find out.

jrnl, a Command Line Journal

Reading Time: 1 minute

There are few things more satisfying than using a well-made tool. ‘jrnl‘ is one of them–a simple, well-made program for taking notes and journal entries, so well-written that it feels like a native Unix utility.

Creating an entry is simple:

$ jrnl This is a journal entry. It will be automatically date-stamped
 [10:18:44] [Journal created at /home/jim/journal.txt]
 [Entry added to default journal

It creates a simple text file:

$ cat journal.txt

[10:18:52] 2018-03-09 10:18 This is a journal entry.
It will be automatically date-stamped

If you wanted to create an entry for something in the past or future, it’s simple: (jrnl keeps them sorted by date, too!)

  $ jrnl at April 1, 1918 4:10AM: I was Born
 [10:20:09] [Entry added to default journal]

jrnl doesn’t use a proprietary format,  just a simple text file, so you can edit it and read it with anything.

You’re not limited to raw text, though.  You can export to a variety of formats. Here’s JSON:

$ jrnl --export json                                                                                                                                        [10:54:46] {
 "entries": [
 "title": "I was Born",
 "date": "1918-04-01",
 "time": "04:10",
 "body": "\n",
 "starred": false
 "title": "This is a journal entry.",
 "date": "2018-03-09",
 "time": "10:18",
 "body": "It will be automatically date-stamped\n",
 "starred": false
 "tags": {}

Installation is easy, if you have Python and PIP installed and configured:

 pip install jrnl

jrnl- The Command Line Journal

jrnl- The Command Line Journal

jrnl has a natural-language interface so you don’t have to remember cryptic shortcuts when you’re writing down your thoughts.


Hello, Again

Reading Time: 1 minute

Hey there. 
It’s been a while.
How’ve you been?

I’ve been good, I guess. Still in the US, still in PA.

And now after years of hiatus, again taking a stab at blogging.
Back when I started blogging, before anyone even called it that, I used to hand-edit my site in vim or notepad and change the top page as stuff happened.
Later, around 2003 or so, I started using MovableType, then later WordPress and it seemed like blogs were the most important form of communication imaginable. Back then, I could take a picture somewhere on the streets of Tokyo, where I was living, post it to my site , and within a day, a couple thousand people had seen it.
That was cool, but I don’t expect to ever see those kinds of stats again.
(Anyone else remember Daypop‘s top 40? Get on *that* and you’d be up all night trying to keep your server from crashing under the load.)

RSS was new and shiny and did for sites what Facebook and Reddit do now with your content, but without keeping your eyeballs glued to their own ads. Some of you still use RSS readers, I see, while I was setting up this site today and ‘tail -f’ing access logs, I saw a couple of hits from news readers. They inspired me to write this post, actually.

If you look up at the URL of the site, you’ll see I finally got around to moving to HTTPS, using the very excellent Let’s Encrypt. I take it that browsers are going to start calling you out if you don’t encrypt, so I might as well, I guess.

Well, I’m going to get going for now. If you happen to see this, leave a comment below.