Z Nope

I was excited to start setting up the Z-Wave bridge. That excitement has dimmed. I’m got the device in the mail, whipped out the installation instructions, plugged it into my Pi and…

The first step was to run a curl command to a http site and pipe it to sudo bash. Eeek.

I mean I know people joke that the “S” in IoT is for “Security” but this wasn’t funny.

I’d never ever do such a thing on a device and trust that device again. I proceeded against my better judgement to see how far the rabbit hole went. (I’ve since disconnected the Pi from the Ethernet and will reflash it soon.)

The next red flag was that although installing the bridge plugin went smoothly, the iOS Home app warned me that the bridge was not certified. Strike two.

I was about to try adding a Z-Wave device to the bridge when I just stopped. I was not going to trust this with access to my home’s devices.

Maybe I can write a bridge for this Pi peripheral myself and now I am curious about what Apple requires for certification:)

Till next time…

A Photogenic Z-Wave Bridge

We’re moving away from Z-Wave tech and investing more deeply in Apple HomeKit. Part of that will include using a Raspberry Pi to act as a Z-Wave bridge until we (eventually) replace the Z-Wave devices with devices supported by HomeKit natively.

And because it would be boring just to plugin in a headless Raspberry Pi, I decided to have it do double duty as a digital picture frame using a neat little touchscreen by EVICIV.

This article covered most of the setup needed to use feh and xscreensaver, although I did need to do one tweak, probably because I am running a relatively new version of Raspbian (Raspbian GNU/Linux 10 (buster)) that was released after the article. Instead of finding the autostart file in ~/.config, it was in /etc/xdg/lxsession/LXDE-pi

Here’s what it looks like:

Yeah, I should put some real photos in there, not memes 🙂

Cardboards and Plastics

The family and I headed up to our “local” comic book store, Everett Comics, to pick up the latest issues waiting for us in our subscription box. Because of the pandemic, this involves parking and calling inside the store and asking them to bring them out for curbside delivery.

They don’t have a mobile card reader yet (that’s something I can help them with soon) so there is a bit of give and take and back and forth and waiting as they shuttle payment in and out of the store, but that’s another post for another day.

What was remarkable about this trip is that — after we checked what comics were in that day and they were about to ring up the total — I asked them to be sure to include “cardboards and plastics” … quickly earning a chuckle from our adult daughter. “It’s bags and boards, Dad,” she interjected with a tinge of embarrassment.

It reminded me of something a former co-worker once said about the importance of learning the correct terms to use for a domain, as part of establishing your credibility. It’s not “a database,” it’s “Azure Cloud Storage.” For iOS Swift programming, they aren’t “class members” – they are “properties.” For embedded development, it isn’t “bit banging” but “direct register manipulation” – although the paucity of results for a quick Google of that mouthful of a phrase makes me wonder if my professor last quarter had their own “cardboards and plastics” moment. 🙂

.NET 5 + Blink an LED

Microsoft announced the release of .NET 5 today… and included an example with the quintessential “blink an LED” that is the Hello World of the embedded IoT space. Can’t wait to try it on one of my development boards.

https://devblogs.microsoft.com/dotnet/announcing-net-5-0/

https://github.com/dotnet/iot/blob/master/samples/led-blink/Program.cs

STM32CubeIDE FreeRTOS Include Paths

This was odd. I’m noting here so 1) I don’t forget and 2) in case anyone else runs into this. My STM32CubeIDE 1.4.0 based project was building fine, I used the STM32CubeMX editor to unlink PC13 from the user button since it was limiting my RTC configuration.

On saving and re-generating, a bunch of my FreeRTOS includes stopped being found by the compiler. Scrutinzing the diff of my .cproject file showed all of the paths had been removed from the configuration.

I added them all back in and the project resumed building normally.

It is possible this is because I’ve switched to Windows based development for this project, or it is possibly related to the STM32CubeIDE 1.4.2 update, but I am not certain.

Edit: And, this is odd, on a subsequent “save” and “re-generate” the relative include paths that had been deleted were restored.

Faster WordPress via .NET with PeachPie

I heard about the PeachPie project recently on the Channel 9 podcast (one of my favorite podcasts) – it allows you to compile PHP and WordPress (and plugins) into .NET. As expected, there is a performance boost and also as expected, you don’t have to worry about arbitrary PHP running on your site – AND you end up being able to select and build the exact versions of WordPress and the plugins you’d like kinda like package.json does for modern Javascript apps.

I haven’t tried it yet, but the idea of a performance and security boost and, oh yeah, the ability to write plugins in .NET is enticing for projects like this blog. I’ll add this to my list 🙂

Photo by J David Eisenberg from FreeImages

The Engineer/Manager Pendulum

I am so happy I tapped on Episode 27 of the POPCAST this morning. And so glad Dan interviewed Charity and especially the focus of the podcast: her post about the “Engineer/Manager Pendulum

I quote:

The best frontline eng managers in the world are the ones that are never more than 2-3 years removed from hands-on work, full time down in the trenches. The best individual contributors are the ones who have done time in management.

and

And the best technical leaders in the world are often the ones who do both. Back and forth.  Like a pendulum.

and

That’s one of the only ways you can achieve the temporary glory of a hybrid manager+tech lead. This is an unstable combination, because your engineering skills and context-sharpness are decaying the longer you do it.

I have been on my latest hybrid manager + tech lead gig for a few months shy of two years now – it’s not the first time for me by any stretch. It was incredibly validating to hear this swinging back and forth that I do as NORMAL.

The article concludes correctly:

It isn’t a promotion, so you don’t have any status to give up. Do it as long as it makes you happy, and the people around you happy. Then stop. Go back to building things. Wait til you get that itch again. Then do it all over again. ❤

Photo credit