Blogging

Relax, Have a Homebrew! Monday, October 16, 2017

Off-topic alert!

Over the past few months, I've been enjoying brewing beer at home with a Pico Pro. No doubt purists scoff a bit at the automation involved during the mash and boil, but it's a relatively small part of the beer making process...and doing a true, temperature-controlled step mash without investing in an expensive setup (not to mention the space it would take up) is a huge win.

It's been a lot of fun.

The biggest challenges, and the place where a lot of brewers fall down, are in sanitizing and controlling fermentation: keeping things at the right temperature, consistently, so the yeast can work its magic efficiently without producing off flavors.

I can't help with sanitizing (you just have to do a better job!) but I can help with fermentation!

To that end, there's a great device called a TILT Hydrometer. The TILT drops into your fermentation vessel (which, in the case of a Pico Pro, is a small, 1.75L corny keg), and transmits both temperature and specific gravity via Bluetooth 4/BTLE. It's pretty cool, and by using TiltPi, along with a Raspberry Pi Zero-W to receive the bluetooth data and log it to a Google Sheet, it does all this automatically. You just peek at the sheet every so often to see how things are doing.

That all works great, but reviewing the data I realized I was having trouble controlling the temperature precisely using an external thermometer. Given the open source nature of TiltPi, and that fact that it was built with Node-RED, I thought, hey—I could use the temperature being transmitted by the TILT as a current measurement, and then use IFTTT and a few WeMo switches to exactly control both heating and cooling!

So, over a few hours in between doing SuperDuper! stuff, I learned Node-RED, figured out how TiltPi worked, added automatic temperature control, and found/fixed some TiltPi bugs at the same time. It works great!

I've provided the TILT people with my modifications to TiltPi, and hope they'll be integrating it into the official TiltPi release. Until then, here's how you can use it:

  • Set up TiltPi according to TILT's normal instructions.
  • Download and unzip this text file and open it in your favorite editor.
  • Open the TiltPi Node-RED editor. This should be here: http://tiltpi.local:1880.
  • Copy the contents of the text file to the clipboard.
  • Using the "hamburger" menu, select Import > Clipboard. Paste the copied contents into the box, and choose to import into a "New Flow". It'll be called "Main".
  • Switch to the old flow tab and delete it.
  • Click Deploy.

That's all the hard stuff. Next

  • Set up your IFTTT Webhooks service so you get a key.
  • Copy that key to the clipboard.
  • Open TiltPi's normal interface at the URL it sent you when it started up (usually http://tiltpi.local:1880/ui/#/0).
  • Using TiltPi's hamburger menu (so many hamburgers!), select "Logging".
  • Paste your key into the IFTTT key* field.

Then, set up your various color TILTs normally. You'll see a Target Temperature slider - that's configurable on a per-TILT basis and defaults to 70F: reasonably appropriate for ale fermentation.

The next step is to set up the heat and cool steps in IFTTT. (I assume you've already got your WeMo switches configured and WeMo is connected to your IFTTT account.)

  • Create a New Applet in IFTTT.
  • For the "This" clause, add a Webhooks service.
  • For the event name, use TILT-COLOR-temp-low, TILT-COLOR-temp-high, or TILT-COLOR-temp-just-right. depending on what you want to do.
  • For "That", add the appropriate WeMo switch action.

For example, let's say that I want to control a heater for a BLUE tilt. I'd add three Webhook applets:

If BLUE-temp-low then Blue WeMo Heater Switch on
If BLUE-temp-high then Blue WeMo Heater Switch off
If BLUE-temp-just-right then Blue WeMo Heater Switch off

If you want to both heat and cool, you'd add three more events (since you unfortunately can't add extra actions to an existing event):

If BLUE-temp-low then Blue WeMo Cooler Switch off
If BLUE-temp-high then Blue WeMo Cooler Switch on
If BLUE-temp-just-right then Blue WeMo Cooler Switch off

More events can be added for more TILTs, each with its own target temperature and WeMo switch(es).

If you don't have a cooling device, and it's warm where you put your keg, do what I do: put the keg in an insulated cooler bag (I have an old version of this bag) along with an ice pack. That way, when the heater goes off, the ice pack will act as a cooler.

I hope that helps some of you make better beer. Enjoy!

Note: this post was updated on 10/22 with a new version of the flow that works better with multiple TILTs, now that I have more than one.

Clicking away Friday, April 27, 2007

My friend Jonas Salling has started blogging again, and that's always a good thing.

He's got some recent posts up there as he tests the WiFi support for Clicker, and the results may surprise you!

Jonas is one of the hardest working developers out there, and he never settles for less than absolute excellence when releasing new stuff.

The long-in-development Clicker 3.5 is no exception, and it looks like it's getting really close to release. That's good news for all the fans of Clicker, since a great product is getting a lot better. And I'm sure he has many cool things in store moving forward as well.

Welcome back, Jonas -- looking forward to more posts!

Comfy sweater - marked down! Thursday, March 15, 2007

Some time ago, I switched from MarsEdit to ecto. Mostly, I did this because I liked writing posts with "real" formatting -- that is, using the RTF editing view that ecto offered.

At the time, I was only allowing myself 15 minutes per post, and the HTML I was using in MarsEdit simply got in the way of quickly reading the post for content. Too much translation, the Preview didn't really do it for me... and it didn't look like Brent was going to find much time to work on the program (understandable, given his success with NetNewsWire).

Given that set of issues, I switched. Not all upside (the HTML generated by the RTF translator was rather sub-optimal), but overall it worked for me.

With Daniel Jalkut's recent acquisition of MarsEdit (congratulations, Daniel!), and his flurry of activity improving the core and fixing bugs, I've decided to give it another shot. And to get around the readability problem, I'm giving Markdown a try.

I don't know why I didn't use Markdown before -- probably, I didn't want to learn yet another thing. Maybe I just wasn't aware of it. But I'm glad I've finally found it and taken the time to figure it out. Markdown's pretty easy: natural to read and write once you grasp the basics. JG and Aaron Swartz did a good job with the syntax: it's regular, logical, functional, readable.

And it's supported by Expression Engine, too.

So, three posts later, I'm sticking with it. Hopefully with these few changes I'll be able to find a bit more time to blog!

Happy New Year! Sunday, December 31, 2006

It’s hard to believe another year’s gone by, but dates rarely lie, and there it is - the 31st, soon to flip.

Rather than turn inward and reflect on events here, I’d like to turn outward and thank each and every reader; all those who took the time to send me mail - those who needed support, needed to vent, to compliment or complain; the kind people who provided comfort as we lost our dog Ketzl and who cheered the arrival of Taiko; the editors at Macworld who honored us again; the users who honor us every time they use or recommend a Shirt Pocket product; all friends, old and new.

To all of you: thank you, and a very Happy New Year to you and yours.

Blogrolling in our time… Wednesday, October 05, 2005

Looks like Rich Siegel, of BBEdit fame, has started blogging. And he’s ragging on bad drivers! Go Rich!

(And don’t miss the great Oktoberfest Special they’ve announced over at Bare Bones. $99 is an incredible bargain for the exceptionally well regarded editor… if you’re even remotely thinking about snagging a copy of BBEdit, now’s the time!)

NetNewsWire v2.0 Design Friday, June 03, 2005

Brent Simmons has just blogged a bit about the design of one feature in NetNewsWire 2.0on his blog. If you’ve been enjoying my posts about this, you’ll probably enjoy Brent’s, too!

Brent classifies himself as an Experimenter/Gatherer, which I usually am too, when actually doing the coding. When I’m doing the design, I try to experiment as much as possible on paper and roll in feedback, but get close to final and keep the tweakable elements to a minimum so as not to waste Bruce’s time.

That doesn’t always work out, as my Scheduling posts show…

How “unique”! Wednesday, April 27, 2005

So, what should you expect from this blog?

My plan is to write about a relatively eclectic set of topics. I’ve sketched out my first 30 posts or so, and they seem to be falling into the following broad catagories:

  • News about Shirt Pocket
  • Software design and development
  • Computing from a user’s perspective
  • Occasional stories about small company development, marketing and support
  • Consumer electronics and usability
  • Dogs and Degenerative Myelopathy
  • Gadgets I like
  • Movies & Music
  • The occasional random rant

No huge surprises there. I’m sure other things will creep in now and again, but for now, there you go.
Where I Attempt to Explain Why I’m Doing This. Friday, April 22, 2005

So, I’ve been avoiding blogging. More than that: I’ve been avoiding making eye contact with blogging.

But it keeps jumping up and down, waving its arms frantically, desperately trying to get my attention, insisting that it won’t be so bad.

I’m not so sure.

I mean, I’ve had some sort of online presence for a long time. We even announced our first product, BRIEF, on Usenet way back when. I was on FidoNet, Compuserve, BIX, Usenet, lots of forums—including my own at Shirt Pocket. So why is getting started here so difficult?

I think it’s the “What’s the sound of one blogger yapping?” issue. There’s something about this that feels less like a conversation, and more like a lecture. A post gets written. That post gets read. Sometimes, there’s a comment, trackback, link… but it feels more newspaper than café.

But—maybe that’s because of the way I’ve been using blogs. I’ve been reading, but not writing. I’m the lurker on the forum, the guy alone at the café sipping a coffee, reading the paper and listening—but never joining in.

Well, no longer.

This place is abuzz with ideas, and there seems to be lots of room at the table.

Mind if I join you?

Page 1 of 1 pages