While I have successfully been able to configure the keyboard buttons (using software known as QMK), I am yet unable to make this slider (a potentiometer) work to change system volume on macOS. By the keypad vendor's own admission--and I wish I knew this before I bought it--making the potentiometer slider work with macOS System controls of any kind is difficult, presumably due to the closed nature of Apple's ecosystem.
My question to you sleuths is: is there any potential way of making the slider work with macOS, at all, or if simply to modulate system volume? I have attached a screenshot of the keymap file to this if it helps. Any suggestions would be hugely helpful, thanks everyone.
That's definitely a good thought, thank you. I think an initial step is to confirm whether it is sending out MIDI packets at all--I think there may be specialty software that can detect this (or perhaps Keyboard Maestro can?).
If it does send out a MIDI signal (if I've compiled it correctly), my hope is that KM is able to detect it and use it as part of it's MIDI trigger
Keyboard Maestro can work with MIDI triggers. Set the Trigger to This MIDI and you've got a bunch of options to trigger on notes, controllers or packets.
Note that I've never actually used any MIDI triggers, I just know they're available. Keyboard Maestro sets the token %TriggerValue% to the value of what caused the trigger to activate so it might be able to tell you what it captures to decide what the volume level that would mean.
There is an older thread on a similar topic here...
Might get you started on the right track.
Also... If you are working with any kind of MIDI controller, you want to grab a copy of MIDI Monitor from here. snoize: MIDI Monitor. That will let you easily identify the specific CC message and channel that your device is outputting on.
Hi there, this was super helpful, thanks! I've run into a second, smaller issue though: MIDI controller sensitivity. Currently, I have the slider set so that moving it up or down toggles through Safari tabs. However, the speed is a bit too high. Is there an easy way to use KM to bring down the sensitivity a bit? I've tried instituting a delay but that's not quite it. Any guidance would be highly appreciated, thanks!
This is incredibly thoughtful and helpful. Pardon my programming ignorance, but how would I go about adding this delay to the action of, say, switching tabs? (I.e., like hotkey Cmd + Shift + right arrow)
Or, does making MidiDelay global automatically apply this to all macros I've set up for it? Thanks again, so much.
Should be able to add to the top of a macro you have.
I'm assuming you have a macro that runs every time a certain midi event occurs and you're getting a flood of them. So you do something on midi and it triggers one cmd+shift+right arrow, but you're getting so many of them you get a flood of cmd+shif+right arrow.
Adding this to your code before the cmd+shift+right arrow is sent should slow it down a bit. The way it is written it'll ignore 3 of every 4 events the midi device sends.
If this doesn't work you'll need to post your macro or an example that has the same issue.
Sorry to reply so late, I'm assuming you figured this out, but yes making the # bigger the in < test (as in your example < 5) will increase the delay. making it a 5 will cause it to skip 4 of every 5 events that it receives.
To be technically accurate: if the events come in at roughly the same rate than increasing the number of events skipped will increase the delay time, but if the events come in "bursty" (sometimes very quickly and sometimes slowly) the actual amount of time of the delay may not be consistent.