TV Category Introduction & Pluto TV – Free TV!

For those that know me, you know that I’ve operated my own media centers for years based on Kodi. Kodi is a nice platform, but they have always been lacking in standard channel support like Hulu or Netflix. Plus the upkeep of dedicated Linux boxes for the immediate family has chewed into too much of my time.

So, I’ve recently changed to using Emby for my local media to replace the Kodi functionality, using Mi Boxes (AndroidTV) on the primary TVs and cheap refurbished Roku’s on the smaller TVs in the house along with the Emby channel.  The upkeep demands are minimized and now I have channel options I did not before.

I figured I’d start a TV category here to share interesting things I’ve found that others may enjoy.  It might be an interesting YouTube channel, or a channel/app I found for my Roku and/or AndroidTV box.

To start with, Pluto TV! I’m a cord-cutter and don’t miss cable TV and it’s cost one little bit. Pluto TV gives you a number of interesting channels for free, and it is totally legitimate. They have a scrolling guide that presents their 100+ channels nicely.

There are a number that are my particular favorites, from the movie channels that span various genres, old TV shows, to even a dedicated Mystery Science Theater 3000 channel – you can definitely find something of interest!

While you do have to watch the occasional commercial (hey, they have to pay the bills somehow!) that is a small thing to put up with for quality streaming channels to your device.

It streams perfectly with my Android TV and Roku and it available for many Smart TVs and never your regular computer.  Be sure to create an account to sign in so their viewer membership goes up! The more viewers, the more attractive they become to sponsors, which will make more channels available. Gee, it’s like the way TV worked in the 80s!

Posted in General Happenings, TV | Leave a comment

I Know Your Job Better Than You!

Gripes is back! It’s been years since I posted one, but it’s time.

Without further ado:

I’ve been privileged to work with a group of talented people over the decades, some I count as geniuses in their field. They helped me and my area of responsibility greatly and taught me a lot. Even the disagreements were productive because they often came from logical discussion and “walking the walk,” not just “talking the talk.”

Then, there are the other ones. Fortunately, I’ve known very few. The ones I do know grind my gears and exhibit these common traits:

  • Think they know how to manage your area better than you do, despite literally zero experience in the field.
  • Offer “suggestions” coming from a point-of-view of “I’m the smartest person in the room”, yet their suggestions show a complete lack of understanding of minute-to-minute and even day-to-day operations of the task/area they seem to think they are the ultimate expert on.
  • Their purported knowledge is little more than textbook knowledge or reading buzzwords and does not equate to real-world experience at all.
  • They continually blame older processes or things they don’t understand/find value in for woes across all areas.
  • Suggestions/blame noted above are often couched in vague terms with no specifics that further enforce complete lack of knowledge on the topic.
  • They have a preconceived bias/preference towards a brand or service and are unwilling to change. (Preference is fine, inability to use and adapt to that which you need to support as part of your job is not. A technology professional should be like The Borg from Star Trek. They adapt, constantly. They assimilate better tech and ways of doing things.)
  • Typically, while very good at telling you what you should be doing, their own area of responsibility is a disorganized mess. Seriously, those who live in glass houses should not throw stones.

I’m always looking for ways to improve my area’s processes and resources. Suggestions coming from a knowledgeable point of view or a thought-out “better way” and presented logically are godsends to me and I’ve acted on most every single one.

Ignorant comments, trying to push responsibility away from where it should be (yours), or inability to use the tools at your disposal are what really grind my gears.

Posted in Gripes | Leave a comment

Happy Holidays!

We’ve got our Christmas pictures up for this year if anyone wants to take a peek!

They are available in the menu up top or by clicking here.

Posted in Family, General Happenings | 1 Comment

Photo Album Updates

It’s been a busy first half of summer and I’m just getting around to updating some photos.

On June 24th we celebrated my mother’s 90th birthday and we recently returned from our Maine Vacation.

Enjoy the photos from both events!

Posted in Family, General Happenings | Leave a comment

Change or Repair an IP Address Change on macOS Server

Recently at work, due to a network switch going up and down, our production macOS Server that distributes Profiles to several hundred Macs had it’s Open Directory Master think that is had a self-assigned IP address. While other services remained with their standard host address, Open Directory was decidedly broken.

I’m not sure how this happened, possibly because the switch we restarted an untold number of times in the span of an hour, but there was no way to use the GUI to repair this. Even going into the and changing the servers hostname and then back again in an attempt to fool it, which I read could also realign IP addresses, failed.

It also appears even if the GUI correctly changes and “resolves” a changed IP, Open Directory will often not be updated.

I then discovered the changeip command line utility. I quick look at the man page and it seems like it would do the trick.

The format is: [old ip] [new ip] [old hostname] [new hostname]

If you are only changing the IP address of your server, just don’t enter any hostnames.

A reboot later and I was back in business.

Note: you will getting errors running this if you don’t have all services enabled, and that’s okay!

A handy trinket to keep on hand for sure, and it looks like you can use it to also change the hostname of your server as well, but that would probably break all your Profile Managed devices when they try to resolve. So, use this with care!

Posted in macOS Server, Tech Trinkets, Work | Leave a comment

Alexa, IFTTT, DropBox, and x10 Automation

This past Christmas we received an Amazon Echo as a gift. The Echo  is the smaller version of the full Alexa, just without the large speaker

If you’ve seen some of my posts here, I’ve been using x10 modules for a long time. Being on the thrifty-side, and not wanting to re-invest in a completely different home automation system, I set about getting the two to work together. In fact, you should probably read the above post first to see how I have x10 working with my server if you’re looking to do the below with macOS.

So, how do you bridge a modern voice control system like Alexa with home automation gear that was invented in 1975, but still sold today? Scripting, DropBox and a service called If This Then That (IFTTT).

I could write an entire blog post about IFTTT alone, but the short version is IFTTT can take input from one type of service or product and then do something with that input to a different service. For us, we’re going to take a voice command to Alexa, drop a text file into Dropbox that will trigger an event on our Server that hosts the x10 CM17A “Firecracker” interface to tell our modules what to do.  It sounds complicated, but it really isn’t and works like a charm!


Most everyone knows what Dropbox is, it’s an online cloud service that lets you synchronize files with your computer. We’re going to make a directory in our Dropbox to be used exclusively by this process. I simply called mine x10.


  1. Login to IFTTT and choose New Applet.
  2. Click +this and choose Amazon Alexa and then choose Say a Specific Phrase.
  3. I’m going to create one to power on our printer, which is downstairs and we often print to it from upstairs. This will save us a trip. So, I enter: printer on and click Create Trigger.
  4. Click +that, choose Dropbox and then choose Create a Text File.
  5. Erase the pre-filled File Name and just call it printeron, Content can be anything but must have something, so I just use x10, and for the Dropbox Folder Path just use your custom folder from above, in my case x10/
  6. Finally, click Create Action and then Finish. When you’re done, it should look like the image on the right.

If you wanted a companion Applet to turn the printer off, just repeat the above process with the trigger phrase printer off.


All of the following referenced scripts are over at my GitHub repository. I’ll put them below for reference, but you might want to use the ones from GitHub as I’ll be updating those on a regular basis after this post goes live.

The first script is an x10 pre-handler I wrote because x10 modules can sometimes be stubborn and is what is called by my main script. It also does some custom notifications for the other x10 timed events I use:

You could just skip it and replace the calls to it in the below script with direct heyu commands too.

Now we need a launchd entry on my macOS Server to watch for changes and trigger the script to turn modules on or off. You could easily mimic this with cron on Linux if that is your OS flavor.

Next, my IFTTT script ( which is what the above launchd item triggers:

Putting it all together…

Our chain of events are as follows:

  1. I say “Alexa, trigger printer on”.
  2. Alexa hears this and sends IFTTT the command to create a txt file in my Dropbox at the path /x10/printeron.txt
  3. Using the lanuchd service, my server is monitoring that Dropbox directory on my server for changes. It sees a change and runs my script.
  4. The script looks for files named a particular way and executes the x10 command if a matching one is found. In this case, it finds printeron.txt which tells it to send the command to turn module a3 on. It then removes the text file so it isn’t present the next time I send a command.

Closing thoughts:

  • You would think there might be a delay with all of this happening. To my delight, there isn’t much. The time of a spoken command to x10 module event is on average +/- 3 seconds. Heavy network traffic into your LAN might add a few seconds, but so far my command success rate has been 100% after two months.
  • At some point I plan to re-work this so that only one command will be needed eg: “trigger printer”. This will require some logic so that the script remembers the last state of the device (on or off). Unlike the newer automation boxes, there is no two-way communication with x10, and thus no way to retrieve the current state of the module.
  • You’re not limited to Dropbox. This could be easily changed with your choice of services: Google Drive, OneDrive, or something else so long as IFTTT supports the service.
  • This is just a working framework for macOS/Linux, you could also do this on Windows using a x10 program and Task Scheduler as a substitute to launchd’s “watch folder” process.


Posted in macOS, macOS Server, Tech Trinkets | Leave a comment