Controls - jamesridgway/devdeck GitHub Wiki
DevDeck comes with a number of controls built-in.
Clock Control
Displays the current date and time.
The clock control does not have any settings.
Example usage:
decks:
- serial_number: "ABC123456789"
name: 'devdeck.decks.single_page_deck_controller.SinglePageDeckController'
settings:
controls:
- name: 'devdeck.controls.clock_control.ClockControl'
key: 0
Command Control
A command control allows you to execute any command of your choosing.
Setting | Description |
---|---|
command |
The command to run |
icon |
The path to an image file to use as the key icon |
Example usage:
decks:
- serial_number: "ABC123456789"
name: 'devdeck.decks.single_page_deck_controller.SinglePageDeckController'
settings:
controls:
- name: 'devdeck.controls.command_control.CommandControl'
key: 0
settings:
command:
- vlc
- --qt-minimal-view
- --no-audio
- rtsp://192.168.1.1:1234/xS75BaMICeNPP4j8LkavStExMGeNpdxj
icon: '/home/james/.devdeck/cctv/cctv-front.png'
In the above example a CommandControl
is added as the first key on the deck, when pressed it will launch VLC with the relevant rtsp feed.
Mic Mute Control
The Mic Mute control allows you to toggle the mute status of your microphone.
Please note that this control requires PulseAudio.
Setting | Description |
---|---|
microphone |
Description of the input interface |
Example usage:
decks:
- serial_number: "ABC123456789"
name: 'devdeck.decks.single_page_deck_controller.SinglePageDeckController'
settings:
controls:
- name: 'devdeck.controls.mic_mute_control.MicMuteControl'
key: 0
settings:
microphone: Scarlett Solo USB Digital Stereo (IEC958)
pacmd
can be used to list the description of the input interfaces:
pacmd list-sources | grep "device.description ="
Name List Control
The Name List control allows you to cycle through a set of initials. This can be useful for work activities such as stand-ups and other ceremonies.
Setting | Description |
---|---|
names |
A list of full names |
Example usage:
decks:
- serial_number: "ABC123456789"
name: 'devdeck.decks.single_page_deck_controller.SinglePageDeckController'
settings:
controls:
- name: 'devdeck.controls.name_list_control.NameListControl'
key: 0
settings:
names:
- Adam Smith
- Jane Doe
Timer Control
A basic stopwatch timer, that when pressed will cycle through start, stop or reset the time.
The timer updates each second with the elapsed time in HH:MM:SS
Example usage:
decks:
- serial_number: "ABC123456789"
name: 'devdeck.decks.single_page_deck_controller.SinglePageDeckController'
settings:
controls:
- name: 'devdeck.controls.timer_control.TimerControl'
key: 0
Volume Level Control
Set an output audio interface to a specific volume level.
Please note that this control requires PulseAudio.
Setting | Description |
---|---|
output |
Description of the output interface |
Level |
Volume level (0-100) |
pacmd
can be used to list output interfaces:
pacmd list-sinks | grep "device.description ="
Example usage:
decks:
- serial_number: "ABC123456789"
name: 'devdeck.decks.single_page_deck_controller.SinglePageDeckController'
settings:
controls:
- name: 'devdeck.controls.volume_level_control.VolumeLevelControl'
key: 0
settings:
output: Built-in Audio Analogue Stereo
level: 80
The above example will provide a control that will set the volume level to 80% on the given output interface
Volume Mute Control
Toggles the mute state of an output audio interface.
Please note that this control requires PulseAudio.
Setting | Description |
---|---|
output |
Description of the output interface |
pacmd
can be used to list output interfaces:
pacmd list-sinks | grep "device.description ="
Example usage:
decks:
- serial_number: "ABC123456789"
name: 'devdeck.decks.single_page_deck_controller.SinglePageDeckController'
settings:
controls:
- name: 'devdeck.controls.volume_mute_control.VolumeMuteControl'
key: 0
settings:
output: Built-in Audio Analogue Stereo