Skip to main content

Device Core Link

The Blue Pill app called dclink-tcp is designed to provide a simple, unified TCP based ASCII interface to any broadcast or AV device supported by SKAARHOJ. It simply translates SKAARHOJs proprietary intermediate device protocol into structured ASCII commands for setting, getting and also subscribing to changes of values. This makes it incredibly easy for integrators to tap into any device, we have already written support for!

For a long time, we have provided the product "TCP Link for ATEM" (formerly known as "ATEM-TCP Link") which is the inspiration for this application. You can even run dclink-tcp in a special "TCP Link for ATEM" mode to support much of the legacy protocol of that product for drop-in replacement situations.


dclink-tcp lets one or more TCP clients connect to it and facilitates a simple, human readable way of setting and getting values from any number of devices of mixed type through the intermediate proprietary protocols SKAARHOJ has developed for Blue Pill.

Command Examples

Set the program video input on ATEM switcher (with device ID 2) on M/E 1 to input 3:

DC:bmd-atem/2/ProgramInputVideoSource/1/ = 3

Set Skin tone mode to "Low" on a panasonic PTZ camera:


Subscribe to any change on a Blackmagic Design video hub:

subscribe DC:bmd-videohub/1/

Above commands are sent from the same TCP connection since it can access all devices found on the devicecore-connector end-point


On your Blue Pill, go to Packages and search it up, install it and start it


Check that devicecore-connector is also installed and running

This could also be on another Blue Pill on which you are hosting the device cores.




Open nc, telnet or Putty to connect to it

Type in "list" + enter to see which device cores and devices are available and whether they are connected.


See parameters with "listio"

Type "listio" + the base IOreference (fx. "DC:bmd-videohub/1/") to see which parameters you can read, write, the value types, which value ranges exists etc.


Type "help" to see commands


Subscribe to changes

It's very useful to subscribe to changes on an individual parameters or everything from a given device core. Try fx. "subscribe DC:bmd-videohub/1/" if you have a device IO reference called "DC:bmd-videohub/1/". This will immediately deliver the values of all parameters and keep sending updates if they change:


To change input on video hub output 12 you would send this string:




Notice! Right now (Jan 2023) we cannot issue licenses yet and we don't even have pricing ready. However, we are giving complementary licenses away for free to early adopters. Just send us your Blue Pill serial number to with a kind message to Kasper about it, tell us a bit what you will be using it for and what your expectations are.

The dclink-tcp application will always give you about 10 minutes of free and unlimited TCP usage after a 20-60 second quarantine period from application (re-)start. After 10 minutes you won't be able to receive or send messages over TCP. Re-starting the dclink-tcp package in the Blue Pill Web UI will reset the period.