Spring is here (although my parents up in OH just experienced a late-April snow storm!) which means it’s time to upgrade my Linux server to the new Ubuntu release, 21.04 (Hirsute Hippo). First, the obligatory check-in on my spring sports teams:
the Lightning will be heading back to the playoffs to defend their Stanley Cup title … they’re currently third in the Central division in a tight race for 1st with the Hurricanes and Panthers
the Rays are in 2nd place in the AL East, just behind the Red Sox
the Indians are right in the middle of the AL Central, falling behind the Royals and White Sox
the Cavaliers are near the bottom of the Eastern Conference and unsurprisingly won’t make the playoffs this year
Brady and Gronk will be back with the Bucs in the fall when they start to defend their Super Bowl title
Ok, Linux. Despite the issues I had back in October (mostly due to the deprecation of Python 2), the April updates are usually smoother. After a quick backup, I launched the do-release-upgrade and about 20 minutes and a few configuration file updates later, I was up and running on the latest release with the 5.11 kernel:
I haven’t had an issue free upgrade since Cosmic so I usually find myself Googling for various solutions. This time around, I had a few minor problems:
When logging in, the login banner showed “There were exceptions while processing one or more plugins. See /var/log/landscape/sysinfo.log for more information.” and the sysinfo.log file showed:
2021-04-22 21:03:25,207 ERROR Network plugin raised an exception. Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/landscape/sysinfo/sysinfo.py", line 99, in run result = plugin.run()
File "/usr/lib/python3/dist-packages/landscape/sysinfo/network.py", line 36, in run device_info = self._get_device_info()
File "/usr/lib/python3/dist-packages/landscape/lib/network.py", line 163, in get_active_device_info speed, duplex = get_network_interface_speed(
File "/usr/lib/python3/dist-packages/landscape/lib/network.py", line 249, in get_network_interface_speed res = status_cmd.tostring()
It appears that the array.tostring function was deprecated in Python 3.2 and removed in Python 3.9 (which came with the upgrade) but landscape-sysinfo was still using the function call in the Network plugin. I applied a patch (changing tostring to tobytes) and that resolved the issue.
I couldn’t get vncserver to start:
Session startup via '/home/windracer/.vnc/xstartup' cleanly exited too early (< 3 seconds)!
xrdb: Bad file descriptor
xrdb: Can't open display ':1'
Unable to init server: Could not connect: Connection refused
xfce4-session: Cannot open display: .
In my startx file, I switched from startxfce & to exec startxfce which fixed the startup issue, but I still couldn’t connect to the server remotely. It turned out that tigervnc server was only listening on localhost (127.0.0.1). I found that during the upgrade, my /etc/vnc.conf file had been renamed (and the log said it was a deprecated file). I had to make a copy of /etc/tigervnc/vncserver-config-default to ~/.vnc/vnc.conf then set $localhost="no"; (which is what I had done in my original vnc.conf file) and then I was able to connect with the tightvnc client on my PC.
Nothing major. See you here again in October for 21.10 (Impish Indri)!
2021 Home Security/Home Automation Re-Design [ Part 3 of 3 ]
A lot of my old Pulse automations were based on my ADT alarm sensors: open the door into the garage, turn on the garage lights; alarm armed in Away mode, randomize the indoor lights to make the house look occupied; burglar alarm goes off, turn on all of the lights, inside and out. Now that I’d separated the home security and automation systems into Ring and HomeSeer, I needed a way to integrate them together in order to accomplish the same tasks.
Luckily, both products work with Amazon’s Alexa, so a slick combination of Alexa routines and HomeSeer virtual devices became the glue I needed to hold my new system together!
2021 Home Security/Home Automation Re-Design [ Part 2 of 3 ]
As I posted a few weeks ago, back in January I decided to cancel my ADT Pulse service and replace it with a Ring Alarm security system. It wasn’t a 100% feature-complete replacement though, I still needed something to handle the home automation side of things. While Ring does have some basic integrations with its lights and cameras, I decided that splitting the security and automation systems apart was the smarter and more flexible approach.
After researching (via online reviews and the community forums) solutions like SmartThings, Hubitat, HomeSeer, Alexa (which turned out to be Zigbee-only), and even briefly considering revisiting Home Assistant, I went ahead and pulled the trigger on a HomeSeer HomeTroller Pi hub. I waffled a lot between the Hubitat and HomeSeer, but decided to start with HomeSeer since it seemed to have more broad compatibility with my existing devices (specifically my garage door opener, door locks and light switches).
2021 Home Security/Home Automation Re-Design [ Part 1 of 3 ]
I’ve been an ADT customer for almost 20 years. When we moved to Florida in 2001, our house already had a hard-wired alarm system put in by the previous owners so subscribing to ADT’s monitoring service was one of the first “utilities” we set up (along with the normal electric, water/sewer, and TV/internet). Over the past two decades we’d added more sensors/zones, switched from the old copper landline to cellular connection, and of course the big upgrade to Pulse back in 2011 that started my interest in home automation.
Unfortunately, the past few years have seen constant rate increases for ADT’s already expensive monitoring service, with little updates or new services being added to Pulse to justify the expense (rumor has it they are also pushing customers away from Pulse to Control). Additionally, we’d been experiencing an increase in false alarms being triggered by window sensors (ADT support: maybe the wind shook your window? Me: I live in Florida and have hurricane rated impact windows, the wind is not shaking my windows), always seemingly in the middle of the night and even with fresh batteries in the sensors. Finally, earlier this year ADT experienced a two-week outage of their Alexa skill, during which I made several calls to support speaking with clueless representatives who wanted to send a technician to my house! This was the last straw. I decided I was done wasting my time (and money) with ADT and it was time to look at new options.
As you can tell by the title of this post, I chose the Ring Alarm security system.
Ok, enough sports posts, let’s get back to some tech!
I’ve been distracted from tinkering with my 3D printer lately because for the past two weeks or so I’ve been going through a re-design of my home automation and security setups. After an almost two-week outage of the ADT skill for Alexa (during which I wasted a lot of time on the phone with clueless tech support people who kept trying to walk me through the re-linking process despite the fact it kept failing), plus more false alerts from some of my window sensors and the realization that I was paying ADT a lot of money each month for these hassles, I decided to dump them and move on to something else.
Since ADT was both my security system and home automation hub (through Pulse), this decision necessitated some research and careful planning on how to replace ADT and still be able to use all of the Z-Wave hardware I’ve acquired since 2011 and replicate all of my automations, schedules, alerts, etc. The end result was a combination of Ring Security, HomeSeer, and Amazon Alexa.
I’ve got a lot of cool stuff to write about, so watch this space for three separate posts coming soon about my new setups and experiences with both systems.
Wow. I was hoping for a good game for the 3-point underdog Bucs in Super Bowl LV against the reigning champion Kansas City Chiefs, but I was not expecting a 31-9 blowout. No touchdowns scored by Mahomes and the Chiefs offense … only field goals. The Bucs were dominant in their home stadium, and Kansas City killed themselves with penalties. Tom Brady has his 7th Super Bowl ring and the Bucs have their 2nd Lombardi trophy (both since I’ve lived here in Florida).
And look at this, the Bucs scored 31 points in every playoff game except the divisional round against the Saints where they scored 30:
I know I’ve said this a lot, but what a crazy sports year 2020 has been. The Lightning win the Stanley Cup, the Rays went to the World Series, and now the Bucs have won the Super Bowl. Amazing. Go Bucs!!
The Browns played a fantastic game against the Chiefs yesterday in the NFL playoffs divisional round, but just couldn’t stage the comeback they needed, losing 22-17. So close! But what a fantastic season.
Tom Brady and the Bucs, on the other hand, walked all over Drew Brees and the Saints at the Superdome, eliminating them 30-20. On to Green Bay! I hope Brady hasn’t gotten too used to our warm Florida weather now that he’s heading back to colder climes in January! Bring on the Packers! Go Bucs!
Now that I’m semi-comfortable with the 3D printing process for my Ender 3 Pro (download/create model, slice STL in Cura, save GCode to micro SD card, put micro SD card in printer, print model), I wanted to eliminate the “sneakernet” step of manually shuffling the SD card between my PC and the printer and enable some more monitoring options (eliminating another sneakernet connection: walking back into the office every now and then to check on the printer!).
Enter OctoPrint: “the snappy web interface for your 3D printer that allows you to control and monitor all aspects of your printer and print jobs, right from within any browser on your network. It runs basically everywhere, from a Raspberry Pi to your gaming rig, can be easily extended thanks to a powerful plugin system, and is Free and Open Source Software.” Specifically, I’m using the Raspberry Pi-enabled version, OctoPi.
For Christmas, my wife and daughter surprised me with a 3D printer, the (SainSmart-branded) Creality Ender-3 Pro. It was a well-timed gift since we were stuck at home for the holidays and winter break so I had a whole week to immerse myself in a brand new area of tech, learning about new acronyms (FDM, PTFE, PLA, TPU), terminology, filaments, web sites, and, of course, printing stuff!
2020’s sports season continues to deliver. Both of my teams finished the regular season 11-5 and ended long playoff droughts. It’s been a long time since I got to watch my Bucs and Browns play football past early January but both of them won their wildcard games this past weekend and are advancing to the divisional round this Sunday!
The Browns last played in a playoff game in 2003 (losing to the Steelers) and before that was 1995 where, with head coach Bill Belichick, beat Bill Parcel’s Patriots (but then went on to lose to the Steelers) and last won a playoff game on the road back in 1969. So beating the Steelers two weeks in a row, in Heinz Field, eliminating them from the playoffs, despite all the COVID-19 issues, is sweet revenge (ok sure, no fans or terrible towels). The Browns now have to face the defending Super Bowl Champion Kansas City Chiefs (another old rivalry from the Marty Schottenheimer days).
Tom Brady continued his playoff streak, guiding the Bucs to their first playoff appearance since 2007 and first playoff victory since 2002 (the year they won the Super Bowl). It was hard to believe that with an 11-5 record they had to play a road game against the 7-9 Washington Football Team (wow, the NFC East was terrible this year), but they won and will face Drew Brees and the New Orleans Saints on Sunday.
With Super Bowl LV here in Tampa on February 7, you know I’m pulling for both teams to make it, but let’s not get ahead of ourselves. Both teams have a tough road ahead.