Monday 23 September 2024

HDMI Clearout

I recently purchased a 4x4 HDMI extender Matrix to distribute video signals around the house. (blog post to follow0. This consolidates a number of discrete devises I'd previously used and tested for this task. In retiring some of them, I took inventory of all the HDMI switches, splitters and distributors I have, and it turned out to be quite a collection, some of which were languishing totally unused.

I've listed a lot of them for sale on a reputable local classifieds site if anyone is interested. (likely best suit people in EU as otherwise import duties will apply).



Friday 20 September 2024

Updates to announcing Reolink doorbells on Alexa

A while back, I wrote a post on how I build a Node-Red flow to allow me ask specific echo devices to announce visitors pressing my ReoLink doorbell. This worked great, but there were a couple of shortcomings; 
 
  • The list of registered devices would last only as long as Node-Red was active. If I needed to restart the Node-Red docker for any reason, I would also need to re-register announcement devices. 

  • The ONVIF node the flow relies on is a little flaky, and will occasionally just disappear from Node Red. 

I've added functionality to store the list of devices in a text file, so it persists between Node-Red restarts. I also added some notes on how to recover from the self-destructing ONVIF nodes, bring this all up to v1.1.1.


The device list saving is managed automatically as part of the voice registration process, but there's also a manual trigger that can be used in testing. If you use this, you might need to adjust the save and read file locations, particularly if you're not running Node-Red in a docker, like me.

The full flow is pasted below;

Wednesday 7 August 2024

VirtualHere on piCorePlayer

This is niche...

I'm in the middle of building a DIY music streamer based around piCorePlayer on a Raspberry Pi with a HiFiBerry Digi+ Pro HAT. This will live in my main AV rack and output to my AV Processor.

I selected PiCorePlayer as I already run a Logitech Media Server (LMS) and have a few squeezebox devices, so that OS is a good fit for me.

I also have an Elgato StreamDeck that I purchased some time ago that I'd like to use in my Home Cinema. This device has a bunch of customisable buttons that I intend to configure with shortcuts for lighting, av system power etc. 

The issue I have is that the StreamDeck needs to be plugged in to a PC via USB for configuration and operation. I don't have a PC nearby, and would ideally like to manage it from a Virtual Windows machine, but that runs on my Unraid server in a different building.

It would be great to be able to use the Pi in my DIY streamer to somehow relay the StreamDeck to my VM.

I came across some VirtualHere software that appeared to do just that. This runs a 'server' on a computer that you can plug USB devices into, and a 'client; on a remote machine. The client can connect to the USB devices as if they were local. 

There is a linux/arm server for PIs available, and a Windows client. The problem is how to install it on PiCorePlayer, which is based on Tiny Core Linux (TCL), and while it supports extensions and the like, is fairly locked down, and ultimately runs in RAM with no persistent storage out of the box.

It took a while, but I finally came up with a somewhat bodged solution.....

Tuesday 11 June 2024

Migrating Deprecated Unifi Docker on unRaid

I've been using LinuxServer's Unifi-Controller docker for a long time to manage my unifi devices. However, this has been deprecated and to keep up with new releases, there is a requirement to install a Mongo database docker and a newer Unifi docker. This sounded like a bit of a faff but I thought I'd give it a try before succumbing to a physical controller device. The process did not go well, and I couldn't seem to get the systems to work together.

However, in searching around for solutions, I saw there was a new 'all in one' option, the Unifi-Controller-Reborn docker from PeteAsking. (find it in the Apps tab). I gave it a whirl and was able to get my old setup running in a shiny new Docker. Along the way were a few learnings that I thought I'd log here for posterity.