/xkeys-atem-remote

Configurable remote control for Blackmagic Design ATEM switchers using XKeys

Primary LanguageJavaScript

xkeys-atem-remote

A way to remote control Blackmagic Design ATEM switchers using XKeys USB keypads. It is configurable to your needs and designed to play nice with other applications (e.g. vMix) accessing the XKeys at the same time.

Should run on any platform supported by node-hid (tested on macOS and Windows 10).

Demo


ATEM Software Control shown for demonstration purposes only. The script talks directly to the switcher and does not require the ATEM software to be running.

Features

Currently supports:

  • Source selection
  • Cut and Auto transitions
  • T-bar transitions (for XKE-124 T-bar)
  • Transition mode selection
  • Wipe pattern selection
  • FTB
  • XKeys backlight intensity control

Additional functions are pretty trivial to implement, these are just the ones I happened to need so far.

Note that M/Es are not currently supported (every command is sent to M/E 0 and in state updates from the switcher the M/E is ignored).

LED backlight

Where applicable, button backlights are used as indicators similar to a regular switcher control panel.

When the connection to the ATEM is lost, all source keys will start flashing. The connection is automatically re-established in the background.

Usage

Installation

  • Install node.js and yarn
  • Run yarn install
  • Edit config.json5 to your liking

Running

  • Run node index.js

Acknowledgements

Based on the atem and xkeys node modules.

Custom ATEM packets implemented using the SKAARHOJ protocol documentation.