I’m trying to create a project where I take the keys from an APC Mini MkII and translate them to keystrokes (for an external app that only accepts keystrokes), but I am having quite a difficult time since I don’t have much experience with BMT Pro.
I’ve got the base from this topic, thanks to Steve C. I tried to adapt it to what I need (keystrokes being L(0-8 being the button/fader column)(0-9 being the button/fader row)(velocity)X) but I can’t seem to get it going fully well.
Here’s the project file, I don’t know if it’s any helpful:
I’m having trouble understanding what you are trying to do.
Are you trying to use buttons to set row and column but not send any key sequence? Then use sliders to send out a key sequence based on the last row and column sent.
For instance, if you push column 2 row 2 what do you want to send for a key sequence? Or do you just want to capture the key sequence for the next column 2 slider move?
Then if you move the slider on column 2 after that, what key sequence do you want to send?
Steve Caldwell
Bome Customer Care
Also available for paid consulting services: bome@sniz.biz
Sorry for the confusion, what it’s meant to do is, for example, if I press down column 2 row 2, the sequence I want to send is L11127X. The same goes for when I stop pressing it, where it should send L11000X.
If you catch a glimpse at the sequence, L and X mark the start/end of the sequence, then the first number is for the column (0-7 for the matrix buttons and then 8 for the side buttons), the second number is the row number (again, 0-7 for the matrix button, 8 for the ones above the faders and 9 for the faders themselves) and lastly, the last 3 digits are for the velocity, which will be 127 and 0 for the buttons, but if I want to integrate faders into the mix then I can have it there.
But although if having the faders messes up with the project, I’m willing to disable them for it since they aren’t really needed.
In fact, I’ve changed my mind, let the sequence be L111X and L110X for example, removing the extra digits so it’s just a pressed/released situation.
Thank you and hopefully that cleared things up a bit.
I changed the length from 9 to 4. LCRV
I removed the End X translator
Where L is begin C=Column R=Row and V=Value
I disabled the CC to digits translator
I added a perform ‘Focus’ rule to new translator 1.1 and 1.2 and added translator 1.3. You may need to change the outgoing message of 1.3 to the app that you want to send your keystrokes to.
You will need to add your own column row calculations for the side and bottom buttons.
It’s better now, but I’m noticing a little bug where if I rapidly tap for example col 1 row 1, it’s most likely to type LL000 or L0L000, or something like that.
Is there any way to, say for example, have one keystroke that does LCRVX without having to make one or two translators per each button? Or making sure the sequence runs before jumping onto the next one.
Hmm, that’s strange. I’ve tried it on two computers (running latest macOS and Windows 11) focusing on Discord as an example, and it does the same thing I commented about. Are there any changes in the settings that could maybe be producing that bug?
Try this, I added one more rule that disallows key press or release if the timer is mid sequence. The thing is is that you may miss the note off if the note-on is in progress or visa versa. I haven’t set up a queing sytem. Of course, pressing keystrokes this fast might overrun the applications ability to keep up anyway so slow down.