docs » hs.streamdeck

Configure/control an Elgato Stream Deck

Please note that in order for this module to work, the official Elgato Stream Deck app should not be running

This module would not have been possible without standing on the shoulders of others:

API Overview

API Documentation

Functions

discoveryCallback
Signature hs.streamdeck.discoveryCallback(fn)
Type Function
Description Sets/clears a callback for reacting to device discovery events
Parameters
  • fn - A function that will be called when a Streaming Deck is connected or disconnected. It should take the following arguments:
    • A boolean, true if a device was connected, false if a device was disconnected
    • An hs.streamdeck object, being the device that was connected/disconnected
Returns
  • None
Source extensions/streamdeck/libstreamdeck.m line 51
getDevice
Signature hs.streamdeck.getDevice(num)
Type Function
Description Gets an hs.streamdeck object for the specified device
Parameters
  • num - A number that should be within the bounds of the number of connected devices
Returns
  • An hs.streamdeck object
Source extensions/streamdeck/libstreamdeck.m line 92
init
Signature hs.streamdeck.init(fn)
Type Function
Description Initialises the Stream Deck driver and sets a discovery callback
Parameters
  • fn - A function that will be called when a Streaming Deck is connected or disconnected. It should take the following arguments:
    • A boolean, true if a device was connected, false if a device was disconnected
    • An hs.streamdeck object, being the device that was connected/disconnected
Returns
  • None
Notes
  • This function must be called before any other parts of this module are used
Source extensions/streamdeck/libstreamdeck.m line 25
numDevices
Signature hs.streamdeck.numDevices()
Type Function
Description Gets the number of Stream Deck devices connected
Parameters
  • None
Returns
  • A number containing the number of Stream Deck devices attached to the system
Source extensions/streamdeck/libstreamdeck.m line 75

Methods

buttonCallback
Signature hs.streamdeck:buttonCallback(fn)
Type Method
Description Sets/clears the button callback function for a deck
Parameters
  • fn - A function to be called when a button is pressed/released on the stream deck. It should receive three arguments:
    • The hs.streamdeck userdata object
    • A number containing the button that was pressed/released
    • A boolean indicating whether the button was pressed (true) or released (false)
Returns
  • The hs.streamdeck device
Source extensions/streamdeck/libstreamdeck.m line 109
buttonLayout
Signature hs.streamdeck:buttonLayout()
Type Method
Description Gets the layout of buttons the device has
Parameters
  • None
Returns
  • The number of columns
  • The number of rows
Source extensions/streamdeck/libstreamdeck.m line 215
firmwareVersion
Signature hs.streamdeck:firmwareVersion()
Type Method
Description Gets the firmware version of a deck
Parameters
  • None
Returns
  • A string containing the firmware version of the deck
Source extensions/streamdeck/libstreamdeck.m line 196
reset
Signature hs.streamdeck:reset()
Type Method
Description Resets a deck
Parameters
  • None
Returns
  • The hs.streamdeck object
Source extensions/streamdeck/libstreamdeck.m line 157
serialNumber
Signature hs.streamdeck:serialNumber()
Type Method
Description Gets the serial number of a deck
Parameters
  • None
Returns
  • A string containing the serial number of the deck
Source extensions/streamdeck/libstreamdeck.m line 177
setBrightness
Signature hs.streamdeck:setBrightness(brightness)
Type Method
Description Sets the brightness of a deck
Parameters
  • brightness - A whole number between 0 and 100 indicating the percentage brightness level to set
Returns
  • The hs.streamdeck device
Source extensions/streamdeck/libstreamdeck.m line 136
setButtonColor
Signature hs.streamdeck:setButtonColor(button, color)
Type Method
Description Sets a button on the deck to the specified color
Parameters
  • button - A number (from 1 to 15) describing which button to set the color on
  • color - An hs.drawing.color object
Returns
  • The hs.streamdeck object
Source extensions/streamdeck/libstreamdeck.m line 258
setButtonImage
Signature hs.streamdeck:setButtonImage(button, image)
Type Method
Description Sets the image of a button on the deck
Parameters
  • button - A number (from 1 to 15) describing which button to set the image for
  • image - An hs.image object
Returns
  • The hs.streamdeck object
Source extensions/streamdeck/libstreamdeck.m line 236