Thunderbirds

Two US Air Force Thunderbirds fly in formation at the 2016 Luke AFB Airshow.

April 25, 2016
Canon EOS 60D, Shutter: 1/1250, f28/5, ISO: 125

Monitoring an APC UPS with a Raspberry Pi

If you’re looking to monitor an APC USP (many of the latest models have a USB port for monitoring) this is the best walk-through I’ve found:

http://www.anites.com/2013/09/monitoring-ups.html

Thanks to Kenneth Burgener for his great write up.

Being able to query the UPS or perform actions based on Power Off/Power On state is fantastic.

$ apcaccess 
CABLE    : USB Cable
DRIVER   : USB UPS Driver
UPSMODE  : Stand Alone
STARTTIME: 2016-03-09 09:10:19 -0700  
MODEL    : Back-UPS ES 550G 
STATUS   : ONLINE 
LINEV    : 122.0 Volts
LOADPCT  : 6.0 Percent
BCHARGE  : 100.0 Percent
TIMELEFT : 107.5 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME  : 0 Seconds
SENSE    : Medium
LOTRANS  : 92.0 Volts
HITRANS  : 139.0 Volts
ALARMDEL : 30 Seconds
BATTV    : 13.5 Volts
LASTXFER : Automatic or explicit self test
NUMXFERS : 2
XONBATT  : 2016-04-04 06:36:26 -0700  
TONBATT  : 0 Seconds
CUMONBATT: 16 Seconds
XOFFBATT : 2016-04-04 06:36:34 -0700  
LASTSTEST: 2016-04-04 06:36:26 -0700  
STATFLAG : 0x05000008
SERIALNO : 4B1414P00197  
BATTDATE : 2014-03-31
NOMINV   : 120 Volts
NOMBATTV : 12.0 Volts
END APC  : 2016-04-10 09:13:05 -0700

Continue Reading →

Cox Gigablast Install

Around November 2015 I got a letter in the mail from Cox Communications, my ISP. “Gigablast is coming soon!” it said, along with a warning that service might be interrupted from time to time over the next few weeks as they install infrastructure.

Gigablast is Cox’s Fiber To The Home (FTTH) gigabit internet offering.

Needless to say, I was excited. I was already on their highest-tier plan (300Mbps down, 30Mbps up), but faster always seems better. Why? Because why not?

I was also very interested in the rollout because I wasn’t familiar with much of the technology of optical networks. This was a chance to observe up-close how it all works. And since a lot of the technology was going underground, there would be a limited window of opportunity to observe it, ever.

With that in mind I did my best to take photos, talk to workers, and document as much of the process as I could. I’ve documented the process here in roughly chronological order, and I’ve done my best to gather the details necessary to get a good grip on how the Cox Fiber network is physically setup in neighborhoods with Gigablast.

Continue Reading →

Colorado River At Hoover Dam

The colorado river flows out of the hydroelectric plant at Hoover Dam.

January 11, 2012
iPhone 4S, Shutter: 1/863, f12/5, ISO: 64

The Best Parts from Apple's Motion To Vacate

This afternoon Apple posted a motion in response to the order brought by the court on behalf of the FBI:

APPLE INC’S MOTION TO VACATE ORDER COMPELLING APPLE INC. TO ASSIST AGENTS IN SEARCH, AND OPPOSITION TO GOVERNMENT’S MOTION TO COMPEL ASSISTANCE

You can read the entire document if you’re interested.

What I find brilliant about this particular motion is that it’s clearly written in a manner meant to be quoted from. Some sections almost read as a collection of sound bites more than a legal argument. That said, make no mistake, this is a thorough dressing-down of the FBI’s request.

Below you’ll find my favorite quotes from the document.

In fact, no court has ever authorized what the government now seeks, no law supports such unlimited and sweeping use of the judicial process, and the Constitution forbids it.

In short, the government wants to compel Apple to create a crippled and insecure product.

Finally, given the government’s boundless interpretation of the All Writs Act, it is hard to conceive of any limits on the orders the government could obtain in the future. For example, if Apple can be forced to write code in this case to bypass security features and create new accessibility, what is to stop the government from demanding that Apple write code to turn on the microphone in aid of government surveillance, activate the video camera, surreptitiously record conversations, or turn on location services to track the phone’s user? Nothing.

Continue Reading →

Photo Posts

I’ve wanted to add photography to my site for a long time, but never had a good way to add photo posts. It was always a chore to copy the file, resize it into multiple sizes, find the filenames and copy them where they needed to go, then create the post and add the image tags, link it all up, and finally push the update.

So I finally wrote a script to do it all for me.

Continue Reading →

Sunset Behind The White Tanks

The sun sets beyond the White Tanks, in central Arizona.

February 22, 2016
Canon EOS 60D, Shutter: 1/80, f13/1, ISO: 100

Early Morning Cholla

Cholla cactus in the early morning in the Sonoran desert.

February 22, 2016
iPhone 6s, Shutter: 1/1241, f11/5, ISO: 25

Calderwood Butte

Calderwood Butte

February 22, 2016
iPhone 6s, Shutter: 1/657, f11/5, ISO: 25

The Nightmare Scenario

Apple announced today via an open letter to their customers that they would not be complying with a court order to “assist in the enabling of the search of a cellular telephone”. This particular phone was owned by one of the San Bernardino shooters.

Part of Apple’s letter states:

Specifically, the FBI wants us to make a new version of the iPhone operating system, circumventing several important security features, and install it on an iPhone recovered during the investigation. In the wrong hands, this software — which does not exist today — would have the potential to unlock any iPhone in someone’s physical possession.

It would be reasonable at this point to ask the question, “What’s the big deal, Apple?” Especially when Apple says in the previous paragraph, “We have great respect for the professionals at the FBI, and we believe their intentions are good.”

Here’s why this is a Big Deal, and why Apple giving in and creating such a piece of software truly is a Nightmare Scenario:

Continue Reading →

Control A ZWay Server From The Command Line

Who doesn’t want to automate their house via cron?

I have a Razberry module hooked up to a RaspberryPi, along with about a dozen or so Z-Wave devices (switches, sensors, etc.) throughout my house. The ZWay server still has an awful scheduling UI (you have to add an app for each schedule rule you want). Even X-10 had a scheduling UI, in the 90s. (Sadly, I couldn’t find any good pictures of this old interface; perhaps I’m forgetting the proper name of the device.)

Well, cron has been executing the world’s scheduled jobs since 1979. Whenever I can utilize a simple *nix tool to get a job done, I jump at the chance.

The only problem is that there isn’t a basic command line interface to the ZWay server. So, I wrote one.

zway-cli is a simple Ruby gem that gives you basic command line access to your ZWay server. You can query device status, and turn things on and off. It’s super basic, and super simple, which is exactly what I wanted for an application like this.

Things like this make me happy: $ zway kitchen_lights on

If you’re running ZWay and want a simple way to control it via the command line you ought to give it a try.

How to 3D Print a Copy of your House Key

What You’ll Need

Continue Reading →

3D Printing: Arrival

I got my first 3D Printer on January 6, 2016. I ordered a Maker Architect 3D Printer from Monoprice for $299. It turns out that the Maker Architect 3D is basically a Flashforge Creator, with a single extruder and no heated bed. It came with 1kg of white PLA filament.

Continue Reading →

Building a (Siri Controllable) Raspberry Pi Thermostat

When it first came out, I was really enamoured with the nest thermostat. The idea of a remotely-accessible, app-controlled thermostat appealed to the gadgeteer in me, but the price and lack of flexibility (it really wanted to be left alone to learn and do its own thing, as opposed to being controlled by a fixed schedule), plus my propensity to tinker, led me to build my own.

For a long while I had an Arduino-based thermostat running in my house, but I wasn’t very happy with it. Writing code for the Arduino isn’t always very fun (for me), especially when you want it to be web-accessible.

Then came the Raspberry Pi.

Continue Reading →

The Cashflow

In Stephen King’s, The Langoliers, we are introduced to the creatures that consume the past, preventing us from ever returning to it. Merciless devourers, they relentlessly follow us all through time, ingesting history, insatiably pursuing us in an eternal chase.

As the story progresses, the main characters find themselves face to face with these gluttons, and they must do their best to outrun them; winning the race is their only hope.

As a micro-business owner I awake most days with the weight of an awareness on my shoulders; I must to attempt to evade my own kind of Langolier, the ravenous and unquenchable monster of Cashflow.

Continue Reading →

Thwump

Thwump.

The first time you feel it your blood goes cold. The hair on the back of your neck might stand up. Your pulse almost certainly rises quickly, which does nothing to help.

You sit perfectly still. You’re probably holding your breath, but you don’t realize it. Like your rising pulse, this also does nothing to help.

You wait expectantly, but nothing happens.

Continue Reading →

Dallas 18B20 Temp Sensors on an RPi2

I’ve have a handful of Raspberry Pis around, and several of them have Dallas 18B20 temperature sensors connected for data collection. Up to this point I’ve used all of them in 3-wire mode (Vcc, Data, Ground).

I just recieved my first Raspberry Pi 2 yesterday, and went to connect it to a network of 4 sensors to replace an Arduino I was previously using.

I ran into a few snags. Here are my notes:

Continue Reading →

Apple Watch, Two Weeks In

It’s been 2 weeks since my 42mm Apple Watch Sport arrived. (So much for not “getting one immediately”, I know). So far the experience has been mostly great.

At this point I’m dividing my thoughts into three categories: Frustrations, Delights, and Hopes.

Frustrations

Delights

Hopes

Glide

Glide is really interesting. The basic idea is that you fill a dropbox folder full of content, and the service generates a beautiful app for you from the content. The elevator pitch is “Hypercard for iOS”.

I’m not sure if Glide will be successful, but I have no doubt that at some point something is going to be developed that allows just about anyone to create a basic mobile app that looks good and Just Works.

Something like Wordpress for mobile.

It’s also clear that the low-end of the custom App Consulting market, which has been dwindling for years through consolidation and evaporation of profit, will finally be dead.

(Of course, when the custom App Consulting market dies, a new market for building all these one-off Wordpress-ish apps will spout up).

Communicating With Apple Watch

I was listening to the lastest episode of the Talk Show with guest Joanna Stern about the Apple Watch. During one section they started talking about tap as a means of communication, and the impact this might or might not have. As John wrote in his review of the watch, it’s not that hard to imagine at least a few scenarios where, for example, sharing a heartbeat would be novel, intimate, and gain even widespread use.

Having thought about this more, I do wonder if perhaps the ability to effectively touch someone from afar will turn out to be a big deal. I think it will.

You can imagine that a native SDK app might even be able to take input from one person and send that to another, enabling a morse-code method of communicating, for example.

There’s a lot more to consider here, but it seems like it’s a bigger deal than I thought it might be at first.

It also makes me wonder just how much more intrusive it will feel to be tapped by some spammy notification in an app.

On Apple Watch

Up to this point I haven’t been sold (personally) on Apple Watch. The main drawbacks as I saw them were:

  1. Price. And it’s a recurring price since you know you’ll have to upgrade every year.
  2. Size. I have small wrists and I don’t like large watches. I don’t even always wear a watch. I don’t want to wear a huge piece of jewelry on my wrist.
  3. Battery. I don’t want to charge something every night, especially when it would otherwise have utility (sleep tracking).
  4. Utility. What in the world is the Apple Watch (or any smart watch) going to do for me that I care about?

However, having listened to quite a few podcasts on the topic and read even more posts, I’m convinced now that (at least at some point) I’m going to want one.

  1. I’ll get over the price. And if the main SDK components remain the same then there isn’t that much computation being done on the watch itself. The year-over-year upgrade may not turn out to be so compelling. And if your band can last more than 2 years, you’d only have to upgrade the watch, not the band.
  2. I’ll get over the size. Everyone will have one. It won’t be so weird.
  3. I’ll get over the battery. Because there will be so much utility. Which leads me to…
  4. Utility. I’m now convinced of enough positive use cases that I think it would really be a helpful device.

A few use cases for Apple Watch:

Since my watch can know that it’s me, and therefore verify that I am, in fact, me, then it can be a presence notifier on my behalf. This leads to some pretty great conclusions:

I’m not currently planning on getting one immediately, but I think I am far more likely to purchase one than I was a few months ago.

The History of English Podcast

I'm still playing catchup, but even after less than 10 episodes in I'm finding that it has firmly drawn my attention to words, explaining how various words came into English, and why even words with similar meanings sounds so different from one another...

Continue Reading →

Handling Motion JPEG Streams on iOS

As with everything else around my house, I like to build software that customizes my view into my home (or in this case, outside my home). To that end I've build an app I call *Argos* that lets me monitor all sorts of sensors on my property.

Continue Reading →

Build Your Own High Top Tables

We recently hosted a backyard party, and we wanted some high top tables for people to be able to mingle around. We looked around online but nothing was as simple as we wanted (we were going to cover them with table clothes so they didn't need to be fancy), and the ones we were able to find at all were pricier than we wanted. So, we did what you do when you want something to exactly match your vision: we built them.

Continue Reading →

Inexpensive Live Streaming For Your Church

Note: This article is from early 2012 and most of the information is now outdated. For an up-to-date look at this issue checkout the updated article I wrote for Sermons.io.

Last winter (2010-2011), from January through March, our church attendance was down nearly 30%. Between a few vacations and an intense RSV and Flu season the congregation was knocked down pretty hard. Knocked down and out (of the service), but not completely out of participation thanks to our live stream.

We’ve been livestreaming video of our service since we started 2.5 years ago. When we planted, I couldn’t find any helpful information about livestreaming that wasn’t aimed at large churches with much larger budgets than we were working with. Looking around recently for some equipment I still couldn’t find a good reference. So, here’s a bit of a history of what we’ve done at Grace Church. Hopefully it can be of help!

Continue Reading →

How To Get Free Topo Maps

I really like a good map. A GPS + Laptop is great, but nothing works like a piece of paper when the batteries go dead or your laptop falls into the lake. Unfortunately, finding high quality topo maps for free is a chore.

Continue Reading →

How My Wallet Destroyed 4 Hard Drives

(And how yours could too)

Continue Reading →

Geodesic Distance Function in PHP

I was working on some code to process some GPS track logs and I wanted to be able to accurately calculate the distance between 2 points in the log.

Continue Reading →

Build Yourself An iPod Shuffle Charger

The iPod Suffle is a really cool piece of hardware. One of the drawbacks, however, is that it has an internal battery that is recharged via USB power when it is plugged into your computer.

Continue Reading →