Setting Up X-Keys: A Control Surface Companion

Setting Up X-Keys: A Control Surface Companion

June 23, 2015

In this video, contributor Josh Petok shows how to setup the X-Keys XK-24. It's a perfect companion to many colorist control surfaces.


X-Keys In Action: Programmable Buttons For Quicker Grading

This Insight is from Mixing Light contributor Josh Petok. You can find Josh on the web at or on Twitter @joshpetok

Is your post-production software missing a keyboard shortcut or control surface shortcut for common actions?

For instance, in DaVinci Resolve, wouldn’t you love a one-button push that would:

  • Switch you from the Edit tab to the Color tab
  • Switch to the ‘Curves’ interface (even if your Blur interface is active)
  • And then switch to the ‘Hue vs Sat’ curve?

How much time would that save you over the course of a job? A month? Your career? Mixing Light Contributor Josh Petok decided the savings would be significant. He decided to check out X-Keys, from P.I. Engineering—a bit of hardware designed to do just what we described here.

Specifically, Josh wanted to save Stills to Resolve’s Memories without touching the keyboard

The problem: Team DaVinci Resolve hasn’t mapped ‘saving’ and ‘loading’ Stills to the Memories (in the Gallery) to any of the 3rd-party control surfaces. And since those mappings are not user-definable, Josh had to use the keyboard shortcuts if he wanted to use Memories for one-click copying of color grades.

Then Josh heard about X-Keys and decided to try them out.

X-Keys XK-24 programmable button pad
The X-Keys programmable button pad


X-Keys is USB-enabled programmable buttons

You can program an X-Keys button to do anything from changing the color of its backlight, to performing a keyboard shortcut, to executing a pre-determined series of mouse moves, clicks and button actions. P.I. Engineering makes several models of the X-Keys and the model Josh is using in this Insight is the XK-24.

As you probably guessed, the hardware by itself does nothing. You need software to program an X-Key.

P.I. Engineering includes 3rd party software for programming an X-Key device

If you’re on a PC then you’ll be using MacroWorks 3.1 for X-Keys. If you’re on a Mac then you’ll be using X-Keys ControllerMate.

In this Insight Josh will talk about:

  • Why he decided he needed to supplement his control surface when working in DaVinci Resolve
  • On overview of the physical X-Keys hardware
  • A detailed look at X-Keys ControllerMate for OS X

Josh will walk you through using the ControllerMate software to set its initial state. You’ll learn:

  • How to do simple programming, like executing a single keyboard shortcut
  • How to do advanced programming, like moving the mouse and executing mouse clicks

Team Mixing Light has known about X-Keys for a while but Josh got us to finally move on it

Both Robbie and Patrick have ordered an XK-24 to sit alongside our Tangent Elements. We’ll let you know how it works out for us, as well.

Are you using X-Keys or other programmable solution?

Let’s talk about it in the comments!


Homepage Forums Setting Up X-Keys: A Control Surface Companion

Page 1 of 2
  • I nerded out for like 6 hours on ControllerMate and build a pretty cool control surface on a $30 drum pad. ControllerMate also gives you the ability to move the scroll a specified amount so if you position the cursor over the primaries you can set it up to do fine and course adjustments. I hope resolve supports using the arrow keys to increment input values eventually. Unfortunately once you build it it only works for that screen size so its not easily shared.

  • Patrick Inhofer

    That’s cool – using it for fine control of mouse presses. Nice.

    RE: Screen sizes – Yeah, I was thinking that I’d have to do two versions of all my commands – one for the screen size when I’m grading with clients and one for the 1920×1080 screen size when recording trainings. But for most users, I’d think it’s not that big a deal.

    Of course, in apps like FCPx where you can resize the UI as a window, you’d probably be best learning to love working the App at full screen, so those X/Y coordinates are always consistent.

  • RobbieCarman

    I just got mine from good ole Amazon today! Eager to try it out. Josh shows the basics of the mouse clicks thing, but the fine adjustment a .1 here or a .1 there sounds cool.

  • Perfect timing!!! Was just gonna set my xkey up when I had some time. Many thanks, Josh! Will be learning the included PC app, Macroworks, which is actually developed by the xkey team. Please share your configs, as it would be really cool to see how others are using it. I’m currently planning on using it for printer points (as I can print colored stickers) and tracking functions (which are buried deep in a Wave).

  • Josh Petok

    Very cool! You may remember this DIY control surface that was featured in the Tao Sunday newsletter.

    He also had some very clever ways of using ControllerMate to map the pots.

  • Josh Petok

    Nice! My pleasure, Jason.

  • You can set ControllerMate screen coordinates to refer to any corner of the screen, not just the origin(upper left). This could help because I believe the primaries panel and the curves panel are always the same distance from the bottom left of the screen regardless of resolution. You can also set it to refer to any corner of the current window.

    (I made that walnut DIY control surface you featured in the newsletter, BTW)

  • Verne Mattson

    Nice insight! I have Keyboard Maestro, and it’s mapping function is similar to X Keys. The problem with mapping keyboard macros is that with a program like Davinci, there are already so many keyboard shortcuts, all of the easily remembered ones are taken! So you end up with archaic modifiers. So this keypad looks great!

    I like working on the Elements panel, but my personal Avid Artist panel does have dedicated buttons for memories, which is very nice. It’s something that’s sorely missing (IMHO) on the Elements, but the X Key keypad looks like a nice solution for that missing feature.

  • Margus Voll

    That is just lovely tutorial!

  • rda

    I use a Novation Launchpad (80 buttons!), programmed with ControllerMate, alongside my Eclipse. My favorite button is the back-it-off-by-half button. It switches to the Key tab, enters “.5” in the output key value and hits return. One tip when using macros is that you can have ControllerMate choose a tab then leave the cursor over a control that can be modified with the scroll wheel. So many possibilities.

  • Josh Petok

    A “split the difference” button is a brilliant idea. Thanks for sharing it!

  • Bill Mpampouras

    Really interesting video, I am a user of X-Keys as well in my NLE. You should upload the video on YouTube as well, there is not much stuff online about ControllerMate etc.

  • Patrick Inhofer

    Agreed. It’s also the perfect one-button push solution to ‘Turning Off’ a node in a Layer… which will allow you to see a bypass of your Layer without deleting the darn thing. Love it.

  • RAMI


    thanks for the information
    I have a question, is it possible to make multi pages and switch between the pages
    for exp.
    I set in page one in

    B#1 page one/ page two (switcher)
    B#2 node on/off
    B#3 add layer
    B#4 etc….up to B#24

    and i set in page two :

    B#1page one/ page two (switcher)
    B#2 memory 1
    B#3 memory 2
    B#4 etc…up to B#24

    So Is it possible to do that? and if yes could you please make a video and explain how to do it ?
    excuse my bad English 🙂
    thanks again

  • Josh Petok

    Luckily, there is a built in example for exactly what you want to do. If you have Controllermate open, navigate to “help -> Import Example” and choose item #5. It will set it all up for you. Hope this helps!

Page 1 of 2

Log in to reply.

1,000+ Tutorials to Explore

Get full access to our entire library of over 1,100+ color tutorials for an entire week!

Start Your Test Drive!