Setting Up A Raspberry Pi Zero W

I got a Raspberry Pi Zero W as a Christmas gift and I have spent yesterday and today getting it set up, which for the most part means installing the operating system.

First off, now that I have one in hand, I am really surprised by the size of the Pi Zero, it is 2.5 inches long by 1.25 inches tall. For some reason I thought the Pi Zero was larger.


The kit that I received comes with everything you need to get going. It includes the Pi Zero W board, a case with three different tops, a mini HDMI to full HDMI dongle, a micro USB to USB A dongle, a micro SD card, and power supply.

The micro SD card is the primary storage device for the Raspberry Pi and one of the first things that you need to do is configure it with an operating system. The card is pre-configured for a New Out Of Box (NOOB) experience, meaning that it comes configured to guide you through installing a variety of different operating systems.

Raspbian is a customized distribution of Debian tailored for the Raspberry Pi, and is what is recommended for new users. There are other OS images configured to set up a Raspberry Pi as a media server, for example, while Raspbian is configured to function like a standard Linux desktop.

I am not really a new user, I first bought a Raspberry Pi 2 a couple of years ago, and therefore I knew that the version of Raspbian that came with the Pi Zero is based on Debian “Jessie” that is not the most current version, that is based on Debian “Stretch” and available for download from

It has taken me several attempts but I have finally got Debian “Stretch” installed and current on my Pi Zero.

First, I did the default install, but when so fast through the menus that I failed to configure the Pi Zero to connect to my WiFi network, consequently the installed failed in its attempts to obtain the latest version of files resulting in being half complete.

The good thing about Raspberry Pi is that it is intended for experimentation and failures, which leads to learning, and the Raspberry Pi was developed first and foremost as a learning tool. To start over all I need to do is press the Shift key while starting up to put the Pi in Recovery mode from which I can start the install process over.

This time, I paid more attention and configured NOOB to connect to my WiFi network, and that resulted in seeing more options, including one for installing Debian Stretch, which was labeled as Recommended, and so that is what I selected.

Alas, the computer gods were not being cooperative and while downloading the install files my home network lost connection to the Internet. After fixing the Internet connection I attempted to restart the installation, but ended up in the end with kernel panics and other errors that lead me to believe I had another bad installation. Strike 2.

Next, I thought I would revert back to the Jessie version of Raspbian that is on the SD card and then do a dist-upgrade. I seemed to make more progress, succeeding in getting Jessie installed but then the attempt to do the dist-upgrade was taking too long and I grew impatient and cancelled it.

At this point I decided to download the version of Raspbian Stretch to my MacBook and flash it on to the storage card using I noted earlier that the kit that I got came with a case, and I installed the Pi Zero into that case that has cutouts for the HDMI, USB, and power ports, but oddly it does not have a cutout for the SD card. To remove the SD card you have to remove the Pi Zero from the case, which at least is easy to do by gently pushing the board up from the bottom via an exposed slot.

The recommendation I would make to others is to get the Pi Zero all configured before installing it in the case, just to make life a little easier if you end up having to remove the SD card several times.

After downloading the OS image, flashing it with Etcher, inserting it in the Pi Zero and booting it up, I ended up at the Pixel desktop in which I could then customize how I want the Pi Zero to boot. In my case I changed the default password, configured it for access via SSH, and set it to boot to the command line rather than the full desktop.

After rebooting so that the SSH settings could take affect, I was ready for the final pass at upgrading (apt-get upgrade) which I did, but ended up with another kernel panic when it attempted to upgrade openssh. Another reboot later, I did another apt-get upgrade and was instructed to run dpkg –configure -a to finish the upgrade that was interrupted and finally ended up with a complete install.

For the moment I am not sure exactly how I will be using the Pi Zero, but there are many projects available on the Internet. I have a Pi 2 and Pi 3 running nearly full time in my home office.

My Pi 2, which is mounted to a seven inch display, is serving as a desk clock that displays my diary for the next three days, the local weather and four day forecast, and CNN newsfeed over pictures that rotate every couple of minutes. The display power cord is connected to a smart plug controlled by a motion sensor that turns it and a light off when there is no movement near my desk for ten minutes.

The Pi 3 is running an in-house instance of River5, which I use to follow my RSS subscriptions. I also use it to test a variety of Nodejs apps, and I have even experimented with running Mac OS 7 in emulation.

Posted in Experiences | Tagged | Leave a comment

Time For A New Smartphone

In the fall of 2015 I was using the Moto X as my daily driver that was getting long in the tooth. At the time I bought the Moto X, Motorola was part of Google and the X was the first “Google Phone” after that acquisition, but by the fall of 2015 Google had sold Motorola to Lenovo, reinstating the Nexus line of phones as the the defacto Google phone.

I recall being disappointed when I first learned about the six inch screen of the new Nexus 6P. To this point I avoided the large screen phones such as the Samsung Note mostly because I thought they were too large to carry in my pants pocket. The Nexus 6P made me compromise on my stance on large screen phones for the sake of having a phone with a pure Google experience.

I chose the Google experience and over the following two years grew used to the large screen phone, which I protected with a portfolio case. Unlike the Moto X, the Nexus 6P’s performance has held up for two years, making it one of my longest lived smartphones.

Last year Google introduced the Pixel and Pixel XL smartphones, which are now truly, officially, Google phones, while deciding to drop the Nexus program. I liked Google’s decision to release a 5 inch and 6 inch phone, but I was not thrilled by the higher price.

Nexus phones not only had premium hardware, but they also had prices at or near $500, which I think ought to be the target price for premium smartphones. I find the rationalization for $1000 or near $1000 phones ridiculous as I find it hard to believe the new technology in these phones costs twice the price of what was considered premium phone prices just two years ago.

So, I have been very satisfied with the Nexus 6P and it has been the best phone that I have owned. However, there are now two issues. First, Google has stated the Nexus 6P is near the end of life, meaning that you will not be able to upgrade it to Android P when it is released next year. Second, while Oreo runs well on the Nexus 6P, it is clear that Google is optimizing Android for Pixel. If you want the best Android experience, you need a Pixel.

I decided I would need to buy a new phone in the next six months, the question was, which phone?

Posted in Experiences | Tagged , | Leave a comment

Voice Assistants Make For Real Personal Computing

The premise upon which I launched this site in 2011 is that unlike the common belief at the time that we were in the Post-PC era, I believe that we really are at the beginning of the true personal computing era. Prior to 2011 personal computing meant a computer used by one person as opposed to earlier computers used by many people at the same time. I believe that the advent of smartphones and tablets began to change the definition of personal computing towards something more natural and highly personalized to each of us as individuals.

The example I use is the Star Trek computer. If you aren’t familiar with it, Star Trek began as a science fiction television show in the late ’60s that continued to run in syndication throughout the ’70s, and re-appeared in movies and on TV throughout the ’80s. The computer was integrated with the starship Enterprise, in fact in some ways it was the voice of the Enterprise. While onboard the ship, people interacted with the computer by saying, “computer” and then asking it a question or giving it a command. Off board the ship, people initiated conversation with the computer by pressing the button on their communicator.

Two key aspects of the Star Trek computer stand out. One is that it was always listening on the ship, ready to provide information or complete a task when asked. Second, people interacted with the computer in the same manner, with their voice in natural language, as they do with any other person. These two features define for me what I think of as real personal computing.

During the five years that have passed, several developments have occurred that have brought us closer to the Star Trek vision, chief of which is now called voice assistance. It began back in 2010 with a company called Siri Inc. that created an app that you used by tapping an icon and then speaking a set of commands. Originally, Siri was to be made available for iOS, Android, and Blackberry, but it was acquired by Apple, which integrated it with iOS and introduced it as a unique feature with the launch of the iPhone 4S in 2011.

Google responded to Apple’s Siri when it added Google Now to Android 4.1 in 2012. Google Now also responds to voice commands, but it also monitors your email and calendar (if you use Google’s email, calendar and allow Google Now with access) and produces notifications and “Now Cards” for things like upcoming appointments and trips. For example, if you enter an appointment for 2 PM on your calendar and enter a location of the appointment, Google Now will notify you that it is time to leave for the appointment so that you can arrive on time.

Initially, neither Apple nor Google really billed Siri and Now as voice assistants but rather as add-ons to their products. Siri was an iPhone feature and not available on the iPad and Google Now was an enhancement to Google search. It wasn’t until Amazon revealed the Echo Dot and Alexa in 2014 that voice assistance began to emerge as a product on its own rather than an add-on.


Posted in Opinion | Tagged , | Leave a comment

A Smarter Crib

Over the last couple of years my home has slowly been getting smarter. It started in the fall of 2014 when Amazon provided an offer to Prime subscribers to buy the Echo at a discount. At that time Echo was really just a voice activated speaker for music from Amazon.

Philips Hue

During 2015 Amazon added features to Echo, and most significant being the ability to control Hue lights. Philips had been selling the wireless light bulbs for some time, but the ability to control them by voice was the incentive for me to buy a starter kit including a hub and two white light bulbs.

I installed the light bulbs in lamps in our basement, which is where I had the Echo, set up the hub, and then configured the interface between Alexa and my Hue account. Soon, I was able to say “Alexa, turn on basement lights” and “Alexa dim basement lights by 25%”. My home, or at least my basement, became a little smarter and the Echo became a little more useful.

Over the course of the year I bought one Hue color light and one more white light, put the color light in the basement and placed one white light in the living room and another in the bedroom. I also bought a dimmer switch from Philips to control and dim the bedroom light.

I found a If This Then That applet (back then they were called recipes) to automatically turn on the living and bed room lights at sunset and configured the Hue hub to turn the lights off at specific times each night. Now my house had become smarter.

In the spring of 2016 we had flooding in the finished basement of our home that was caused by the fact that our sump pumps failed during a huge rain storm. After significant repair and remodeling of the basement I set out to find a sensor that I could place in the sump pump to provide an early warning if the pit was filling up.

After some research, I found a moisture sensor from Lowes that had a cord long enough to go down the pit by as much as a couple feet. The sensor connects to a base that has batteries and the wireless radio so that it can communicate with devices on our home network.


Unfortunately, while the Hue hub supports the same protocol, it does not support the moisture sensor so I bought the SmartThings hub. Here in lies one of the not-so-smart things about the current state of the “Internet of Things” that make homes smart, there is incompatibility between products, which mean that you may end up with two or more hubs. Worse, most of these hubs require a wired connection to a network, which means that you will need enough network ports on your home WiFi access point.

You will find on SmartThings’ web site that you can use the SmartThings app to control Hue light bulbs, but to do so you must have the Hue hub/bridge. The SmartThings app talks to its hub, which in turn talks to the Hue hub to send commands to the light bulbs. You can replace the Hue app with the SmartThings app, but not the hub. Echo and Google Home are both capable of controlling SmartThings as well as Hue.

Many more devices are capable of working with the SmartThings hub than Hue. Over time I bought a motion sensor, which I placed in the basement to automatically turn on one of the Hue lights whenever I enter. I have a presence sensor in our car, which sends me a notification when the car enters the range for the sensor to connect to our WiFi network. If the car returns late at night, the SmartThings hub will turn on the living room light.

Fairly inexpensive sensors are available to place on doors and windows, making for an inexpensive home security system. You can buy sirens that will go off if you have “armed” the system and motion is detected on any of these sensors.

Logitech Harmony

A happy consequence of the flood in our basement was the purchase of a new Samsung TV, which also led to the purchase of a Yamaha soundbar, and of course there is also the Comcast HD set top box, all of which have their own remote controls. I bought a Logitech Harmony hub and remote control to consolidate all of the different remotes of our home entertainment system, and the Harmony hub also interfaces with SmartThings.

The interface between Harmony and SmartThings enables me to control the TV and lights with the Harmony remote and Echo and Google Home. For example, I have a movie mode configured on the remote that turns on the TV, starts Netflix, turns on the Hue lights and dims them to 50%. The same function is accessible to Echo, so I can say “Alexa, tell Harmony to turn on movies.” I’ve also been able to configure the Harmony app with the Comcast’s channel listings, which Echo can access and with that I can say “Alexa, turn on ESPN” and the TV turns on, changes channel to ESPN, and then the Hue lights are turned on. If I wanted, I could configure the motion sensor to trigger this action, but my wife thinks that is taking the home automation a step too far. For some reason, she doesn’t want the TV turned on to ESPN whenever she walks in the basement!

As I noted in my article about Google Home, with Chromecast you can use Home to access specific movies or shows on Netflix. To do the same thing with Alexa you need to add a Fire TV stick to your television. If you have Chromecast then it may be worth considering Google Home, but you can get by spending much less money with a Dot and Fire TV stick.

Each of the individual items that I have described are pretty inexpensive. At $179 the Echo is the most expensive, but you can now buy a Dot for $50 and for the same amount as an Echo put a Dot in each floor or major room in your house. In fact, I did add a Dot in the living room and connected it to our Bose Bluetooth speaker to stream music from Spotify. The Dot has access to all of the functions I have configured in Alexa over the last couple of years.

Earl Gray, Hot!

To be honest, very little of the home automation that I have set up is really necessary, except for the moisture sensor in the sump pump. What I have is based on components that I bought over a couple of years, mostly just to try out. My smart home set up does make my inner geek happy, and that kicked up a notch when Amazon enabled “computer” as a wake word for Echo. It now feels as though I am on Star Trek when I am in the basement, all I need is a replicator!

Posted in Experiences | Leave a comment

Google In Da House

In preparation for a podcast that I will participate in this weekend, I am thinking about my experience with Google Home.

I am early adopter of the Amazon Echo, which I use to control my Hue lights, SmartThings, and Harmony Hub. We have an Echo in my home office (the basement), and a Dot in our living room.

Google Home does not have much that is better than Echo, which isn’t too surprising given Amazon’s year+ lead over Google. Home excels in Internet search, as you would expect, so it is a bit better for finding general information.

Another way that Home is better than Echo is its ability to control Google Chromecast. First, Home automatically finds Chromecast devices on your home network, whereas you need to explicitly set up other home automation devices like Hue and SmartThings.

Once you get Home connected on your network, you can say things like, “Ok Google, show pictures on basement TV” and Home will start a slideshow of your Google Photos on the Chromecast called basement TV. You do need to have the Chromecast running on a TV before seeing the pictures, Home will not turn on your TV unless you have it integrated with other home automation devices.

The speaker built-in to Google Home is slightly better than the one in Echo, but both are pretty good. Neither are as good as the Yamaha soundbar I have connected to my Samsung TV, so I enjoy telling Google to play my favorite music on my Basement TV Chromecast, which of course sends audio to the soundbar.

I have Google Home and Echo connected to my Spotify account. Of course Echo plays music from Amazon Prime as well as any music that you own and associated to your account. Google Home also plays music from Google Play, where I happen to have uploaded all of my personal music that I ripped from CDs over the years.

Home also is integrated with Netflix, so you can say “Hey Google, play Supergirl on basement TV” and it will start streaming via Chromecast to your TV. I can configure Echo to turn on Netflix via the Harmony hub, but I cannot direct it to a specific show, although I can tell Harmony to turn on specific cable TV channels via Harmony.

Alexa, which is the brains behind Echo, has a ton of skills that add add functions, ranging from the silly, like telling jokes, to requesting an Uber. Amazon has a pretty good developer network and seems to be releasing new skills for Alexa every week.

Home has services that add functions, but only a few are currently available. Most services are basically a form of a web search but there are services like Uber, Todoist, and Kayak that provide specific functions.

Echo and Home both work with If This Then That, so you can use them to trigger applets that work with other smart home devices or web services. I am surprised that there is no real integration between Android and Google Home, but you can add it with Tasker and AutoVoice, which are automation tools for Android.

Google Assistant is the brains behind Home in the same way that Alexa is the brains of the Echo and Dot. Assistant is also available on the Google Pixel phones, while Google Now is a similar, but not the same, assistant on all other Android devices.

Google Home ought to be able to recognize Android devices just like it does Chromecast, and likewise Android should know about Home. Here is a an example of where the lack of integration causes a problem.

I have Google Now configured on my Nexus 6 P to wake up whenever I say “Ok Google” even while I have the phone turned off.  When I am in my basement and say “Ok Google” both Home and my phone acknowledge the wake word. The phone should recognize there is a Home nearby and defer to it, just as it does with Android Wear, but it does not.

Even more maddening is the integration with Keep, Google’s notetaking and list making app. Home/Google Assistant creates a item in Keep called Google Assistant shopping list, and you call say “Ok Google, add milk to shopping list” and Home will add milk to that shopping list note.

Say “Ok Google, add bread to shopping list” to your Android phone and it will add bread as an item to another entry in Keep called Shopping List, which means you end up with two shopping list areas in Google Keep, one controlled by Assistant/Home and the other controlled by Google Now. How hard would it be for Assistant to add items to the Shopping List entry that Google Now uses?

Oh, and by the way, Echo also has a shopping list that is of course directly connected to Amazon so Alexa can automatically order stuff on that list, where as the Google’s shopping list is more traditional.

The duplicate shopping list scenario is the type of thing we see with first generation products like Google Home. I expect Google Home to get much better as Google improves Assistant, which I think will ultimately replace the Google Search web page. In the mean time we will have to wait and see whether Google Home will surpass Amazon Echo.

Posted in Experiences | Leave a comment