GigaCore Bitfocus Companion Streamdeck module

GigaCore Bitfocus Companion Streamdeck module


Luminex products have an open HTTP API. This API can be used to integrate with other software applications. The GigaCore API is documented here (generation 2) and here (generation 1).
One such application is Bitfocus Companion, a software which enables the Elgato Streamdeck to be used to control a huge range of applications and devices, especially useful for broadcast and live-stream applications. Companion is an open-source software. Starting from version v3.2.0, it has a Luminex GigaCore module. This article will explain how to get started with this module. The Companion documentation explains how to install the application and how to connect your Streamdeck.

If you have any issues with the module or if you would like to request additional functionality, please use the Github 'issues' functionality. Since the module is open-source, we also encourage you to contribute to the code.

The LumiNode module is documented here.

GigaCore module


Once you have Companion installed, you should see a launcher similar to the screenshot below. Use the 'Launch GUI' button to open the configuration interface.

This will open a web page where you can add 'connections'. You will need 1 connection for each GigaCore you would like to connect to.
  1. Use the search functionality to find the GigaCore module
  2. Use the 'Add' button to add the connection

Once the connection is added, it has to be configured so the software can reach the GigaCore. For this, it is important that the PC on which Bitfocus Companion is installed, is connected to the management group of the GigaCore and has an IP address in the same IP range as the GigaCore. You can verify this connectivity by accessing the GigaCore web-interface.

To add a GigaCore:
  1. Give it a label. Especially if you would like to connect to multiple GigaCore's, it is recommended to give the connection a meaningful name so you can differentiate between the different devices. Spaces are not allowed in the label.
  2. IP address: Sometimes, Bitfocus can detect Luminex devices in the network using mDNS. However, this does not always work at this moment. Therefore, there is still the option to manually configure the IP address. In case of Gen2 devices, this can also be the mDNS domain name `{serial_number}.local`.
  3. Generation: When using a GigaCore 10, 12, 14R, 16Xt, 16RFO or 26i, select the 'Gen1' toggle. This will enable the correct API for these devices.
  4. Password: Only provide a password if password authentication is enabled on the GigaCore, otherwise leave this field blank.
  5. Save

Once the software has successfully connected to the device, the 'Status' column should show a green check mark, indicating that the connection has been successfully established. In case of an issue, the logs can be viewed using the '>_' button.

It is now possible to add another connection to a GigaCore or any other device supported by Companion. Once this is done, go to 'Settings' and make sure the Grid size matches the grid size of your Streamdeck. Note that Companion can also be used with other input devices or with the Web emulator. A web emulator can be added in the 'Surfaces' tab.

If everything is configured correctly, the 'Buttons' page should reflect the configured grid layout and you can start configuring your buttons.


The easiest way to add GigaCore actions is using the 'Presets'. The presets are organized in different categories. Once you go into a category, you can hover over the preset to get a short description of the preset.

At this moment, the following presets are available:

  1. Device:
    1. Show device name and active profile. Clicking the button will identify the device.
    2. Button to reboot the device.
    3. Button to reset the device.
  2. Profiles:
    1. Show the active profile name
    2. Recall a specific profile
    3. Save the current settings in a specific profile
  3. Groups:
    1. Set a port to a specific group
    2. Show the group of a port. Clicking the button will increment the group ID
  4. Link state:
    1. A button to toggle the link on a specific port. The background reflects the group color, the text color indicates the link state
  5. PoE (when available):
    1. For each port, a button to toggle PoE. The colors reflect the PoE state.
To use a preset, select it and drag it to the grid.

The button will now appear in the emulator and on the Streamdeck. Clicking on the button will reveal the configuration you just applied.

Edit button configuration

Presets can be a good starting point, but Companion becomes very powerful if you edit the button configuration yourself. To do this, click on the button you would like to modify.

This will reveal the configuration on the right side of the screen. On the top of this section, you can define the layout and design of the button, including importing a PNG image.


On the bottom half, actions can be associated to the button. Multiple actions can be assigned to the same button, these actions can trigger the same or different devices. This can for example be used to configure groups on multiple ports across multiple switches.


When selecting the 'feedbacks' tab, you can customize the design of the button based on values from the switch. For example let the background change depending on the color of a specific group.


Under variables, you can monitor the values from every connection. Variables can be used in the button design, for example as a label.

    • Related Articles

    • LumiNode/LumiCore Bitfocus Companion Streamdeck module

      Introduction Luminex products have an open HTTP API. This API can be used to integrate with other software applications. The LumiNode/LumiCore API is documented here. One such application is Bitfocus Companion, a software which enables the Elgato ...
    • GigaCore API documentation

      In the attached document you can find all the web API commands available for the second generation GigaCore. The API is also available on the device itself by browsing to http://{YOUR_DEVICE_IP}/api/doc This API works for the following devices: ...
    • Gigacore Switches and Avid S6L

      As most of you probably know by now, Gigacore switches can be used to connect the different units in an Avid S6L system. The procedure to configure Gigacore switches is described by Avid in this document : ...
    • GigaCore RJ45 serial Connection on the console port

      RJ45 serial pinout: Pin 4,5: GND Pin 3: RX (Data going to the GigaCore) Pin 6: TX (Data out of the GigaCore) Signal levels are RS232! Serial connection settings: Speed: 115200 Data bits: 8 Stop bits: 1 Parity: None Flow Control: None
    • What are the default credentials of a GigaCore?

      By default, any GigaCore switch will use the following: Login: admin Password: no password, leave the field blank