#Powershell Magic Back once again with the Powershell 🥓 flavour
#Been a while 🐊
So I know it has been sometime since my last blog. I do apologise to my fellow readers, just been busy with life, and wanting to keep life as peaceful as possible. As it seems even doing the right thing can be the wrong thing to do. Or certainly has felt like that a lot lately.

However I have done a small MC session on PowerShell which if Microsoft want to sponser me to get this into the top 10 in the charts, lets make it happen. Spreading the coding vibes here:
#Puppies have all gone
Also had the dilemma of trying to find the puppies homes to go to. Like honestly I thought as they were 100% pure Shar-Pei pups they would sell in an instant, but that was not the case. I know my mrs spent over 200 just on advertising them. Thankfully they have all gone to really good homes which makes me very happy. As it had also cost me a load in vet bills for the pups as I had mentioned in my previous blogs.
So I sold 6 puppies in total and 5 of the 6 puppies went to previous Shar-Pei owners which I thought was quite mad, maybe that is why I had such a tough time trying to find them nice new homes, due to the breed being quite specific. Like if you look on the internet Shar-Pei dogs do not seem to get the credit I think they deserve and negativity about them not being a good dog for first time dog-buyers. Just mad how where I live everyone seems to have a Cockapoo dog, which to me is just a mut breed and the majority of those seem to be really vicious little muts, but the owners are always so unapologetic, but sure if the tables were turned as in my Shar-Pei was being aggressive it would all kick off. Thankfully this is never the case as all my 4 dogs are really chilled.
#Behringer CZ-1 Mini

So I been getting really into making my own music on portable synths I have been purchasing for about the best part of a year. Recently I saw that the Behringer CZ-1 mini had been released and well the sound it produced on the youtube videos I had watched was enough for me to impulse buy this synth.
It had pretty much just been released less than a month ago, and a lot of resellers were not getting stock until February 2026. When I saw a reseller had them in stock I just had to buy one.
So I knew for the price I was paying this was going to be a very basic model, however I did assume that it could do a little more than what it can actually do. Like even the mini calculator Pocket Operators I have bought had the ability to chain patterns together, and although I can make music, I am not good enough to play it live. This is what I felt the Behringer CZ-1 mini was more geared towards, as well you can only store a 16 part pattern, and there is no pattern chaining of the music you make.
So although the sounds on this device are amazing, and you can also load new sysex patch sounds into it, giving you the possibilites of 1000s of different sounds, although limited to 16 at a time. It seemed to lack basic things I expected it would have done.
This then gave me the idea as it is powered by USB then surely as midi-ox could communicate with this device then there must have been someway to do this using PowerShell. I then embarked on a journey to make this a reality. Although sadly I never accomplished the main goal which was to pre-program a pattern chaning sequence I stumbled on something just as good.
True there was nothing on the PowerShell gallery but searching deeper into making this happen led me to https://www.nuget.org/ which contained several MIDI dll packages. This is what makes a binary module in PowerShell.
A PowerShell binary module is an assembly (.dll) that contains cmdlet classes. These modules can be created using C# and provide significant performance benefits, especially for tasks that involve complex operations like JSON processing or working with hashtables.
I ended up using these 3 different DLLs to make functions to allow me to make more use of the Behringer CZ-1 mini:
- NAudio.Core.dll
- NAudio.Midi.dll
- DryWetMIDI.dll
I did create a youtube video to show this in action, and here is the script I used, which holds two main functions. The first function allows me to send a midi file to be read and played by the behringer at the BPM, also allowing you to delay the start time of the of when the midi start to play, and the amount of beats per bar. The second function allows me to automatically change the sound selected on the Behringer CZ-1 mini.
The code outside of these functions is literally calling the functions, specifying the sound to play to each midi file I want played, then at the end cleanup the midi devices.
Still not feeling the lacking of abilities of the CZ-1 mini makes it easy enough to use in the sets I make. Here is a recent video of some nice retro sythwave sounds, I hope you enjoy 🎵

