Take This Command and Shove It…

While he may have been channeling his inner Nashville self, those are the exact words KJ4VU used to describe his tool to facilitate use of the Elgato Streak Deck in your ham shack. Telling attendees at last Saturday’s Cycle 25 Tribe Zoom meeting about his macro.exe software tool, George KJ6VU aptly described the engineering design of his latest tool for the Stream Deck. The reference was to sending a command out of the serial port, in case you were wondering.

macro.exe allows the user to send serial control commands to radios and other station accessories in
multiple data formats, baud rates, destination addresses and com ports. Commands are triggered by
invoking the program and sending a set of parameters on the command line. A command can be simple
individual command like set my radio to CW mode or it can trigger a sequence of commands called
macros.

OK. So how’s this different than the famous Hello, World! thing in most programming languages? Actually, it may be a big deal.

One of the steps along the way to organizing the Stream Deck’s built-in functions to automate amateur radio software is to engage the existing software that controls rig devices on the PC. He’s building out some of the CAT commands for Icom and Yaesu radios initially as shown on his blog page.

The structure of the macro.exe program is to take conventionally stated options to the program as illustrated below, as taken from the PDF guide by George.


When the mac program is invoked, the parameters on the command line are parsed and executed.


Command line options include:
-t Define data format type
-p Com port number
-b Baud rate
-d Device address
-m Macro name
-c Command string to be sent
-w Wait for x seconds


In most cases, not all parameters are used. Some parameters have default values if they are left off and
default values are loaded from the macro.env configuration file.


Most experienced computer users will follow this flow and control lingo easily. There’s a lot more here for stacking multiple commands to, say, set up a given rig for CW operation with one button and so forth.

Those who like turning knobs, winnowing down through stacked menus (Yaesu lovers: I’m talking to you, lol!), and generally playing Mr. Fixit while operating their radios won’t be interested in automating mundane tasks so they can focus on direct operation fun. That’s ok. There is a big tent in amateur radio. But for those who do want to automate things (like making sure your amp is on the right band when that DX entity pops up on your monitor and you’re too excited to notice), you might follow George’s blog at the Ham Radio Workbench website.

From there, you too can just take this command and shove it...out of the serial port!