Skip to content

basnijholt/home-assistant-streamdeck-yaml-addon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

This add-on allows you to control your Home Assistant instance via a Stream Deck, making it easier than ever to manage your smart home devices and scenes ๐Ÿ . The add-on is highly customizable and configured using YAML files. It runs on the same machine as Home Assistant and supports Linux-based supervised Home Assistant installations. Check out the home-assistant-streamdeck-yaml application for more details.

Open this add-on in your Home Assistant instance.

Features โญ

  • Easy to use ๐Ÿ˜„
  • Highly customizable ๐Ÿ”ง
  • Runs on the same machine as Home Assistant ๐Ÿ 
  • Supports Linux-based supervised Home Assistant installations ๐Ÿง
  • YAML configuration ๐Ÿ“
  • Template support for advanced customization ๐Ÿ”ฅ
  • Automatically syncs state of entity_id to turn display on/off ๐Ÿ’ค
streamdeck-addon-gh.mp4

Installation ๐Ÿ“ฆ

To install the add-on, follow these steps:

  1. Click the Home Assistant "My ADD-ON" button below to open the add-on on your Home Assistant instance.

    Open this add-on in your Home Assistant instance.

  2. Install the home-assistant-streamdeck-yaml add-on.

or

  1. Go to Supervisor -> Add-on store -> Add new repository by URL and fill in https://github.com/basnijholt/home-assistant-streamdeck-yaml-addon.
  2. Install the home-assistant-streamdeck-yaml add-on.

Add-on Configuration โš™๏ธ

There are two ways to configure the add-on:

Option 1: Using individual configuration parameters

Depending on your setup, the required configuration parameters may vary:

Connecting to Home Assistant on the same machine as the add-on:

streamdeck_config: /config/streamdeck.yaml

Connecting to Home Assistant on a different machine:

streamdeck_config: /config/streamdeck.yaml
websocket_protocol: wss
hass_host: 192.168.1.2
hass_token: YOUR_LONG_LIVED_ACCESS_TOKEN

The configuration file includes the following parameters:

  • ๐Ÿ“„ streamdeck_config: The path to your Stream Deck configuration YAML file.
  • ๐Ÿ”’ websocket_protocol: The WebSocket protocol to use (ws for unsecured, wss for secured).
  • ๐Ÿ  hass_host (optional): The IP address of your Home Assistant instance. If not provided, the add-on will automatically use the IP address of the host running the add-on.
  • ๐Ÿ”‘ hass_token (optional): The long-lived access token for your Home Assistant instance. If not provided, the add-on will automatically use the Supervisor API token.

Option 2: Using a .env file for configuration

An example add-on configuration using a .env file is shown below:

streamdeck_dotenv: /config/streamdeck.env

The configuration file includes the following parameter:

  • streamdeck_dotenv: The path to your .env file containing the necessary configuration values (e.g., HASS_HOST, HASS_TOKEN, STREAMDECK_CONFIG, and WEBSOCKET_PROTOCOL).

โš ๏ธ Note that when specifying an .env file, you must include all of the configuration parameters in the .env file, and all the other configuration parameters are ignored. Refer to the .env file example for more details.

Stream Deck Configuration ๐ŸŽฎ

Create a configuration.yaml file for your Stream Deck buttons following the example configuration from the home-assistant-streamdeck-yaml repository.

Usage ๐Ÿ•น๏ธ

Once you have installed and configured the add-on, it will automatically run and display your configured buttons on your Stream Deck.

Support and Issues ๐Ÿ†˜

If you have any issues or need support, please create an issue on the GitHub repository.

License ๐Ÿ“ƒ

This project is licensed under the MIT License - see the LICENSE file for details.