generated from ludeeus/integration_blueprint
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into dependabot/pip/pip-gte-21.0-and-lt-23.4
- Loading branch information
Showing
31 changed files
with
663 additions
and
556 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,47 +1,83 @@ | ||
# Notice | ||
|
||
The component and platforms in this repository are not meant to be used by a | ||
user, but as a "blueprint" that custom component developers can build | ||
upon, to make more awesome stuff. | ||
|
||
HAVE FUN! 😎 | ||
|
||
## Why? | ||
|
||
This is simple, by having custom_components look (README + structure) the same | ||
it is easier for developers to help each other and for users to start using them. | ||
|
||
If you are a developer and you want to add things to this "blueprint" that you think more | ||
developers will have use for, please open a PR to add it :) | ||
|
||
## What? | ||
|
||
This repository contains multiple files, here is a overview: | ||
|
||
File | Purpose | Documentation | ||
-- | -- | -- | ||
`.devcontainer.json` | Used for development/testing with Visual Studio Code. | [Documentation](https://code.visualstudio.com/docs/remote/containers) | ||
`.github/ISSUE_TEMPLATE/*.yml` | Templates for the issue tracker | [Documentation](https://help.github.com/en/github/building-a-strong-community/configuring-issue-templates-for-your-repository) | ||
`.vscode/tasks.json` | Tasks for the devcontainer. | [Documentation](https://code.visualstudio.com/docs/editor/tasks) | ||
`custom_components/integration_blueprint/*` | Integration files, this is where everything happens. | [Documentation](https://developers.home-assistant.io/docs/creating_component_index) | ||
`CONTRIBUTING.md` | Guidelines on how to contribute. | [Documentation](https://help.github.com/en/github/building-a-strong-community/setting-guidelines-for-repository-contributors) | ||
`LICENSE` | The license file for the project. | [Documentation](https://help.github.com/en/github/creating-cloning-and-archiving-repositories/licensing-a-repository) | ||
`README.md` | The file you are reading now, should contain info about the integration, installation and configuration instructions. | [Documentation](https://help.github.com/en/github/writing-on-github/basic-writing-and-formatting-syntax) | ||
`requirements.txt` | Python packages used for development/lint/testing this integration. | [Documentation](https://pip.pypa.io/en/stable/user_guide/#requirements-files) | ||
|
||
## How? | ||
|
||
1. Create a new repository in GitHub, using this repository as a template by clicking the "Use this template" button in the GitHub UI. | ||
1. Open your new repository in Visual Studio Code devcontainer (Preferably with the "`Dev Containers: Clone Repository in Named Container Volume...`" option). | ||
1. Rename all instances of the `integration_blueprint` to `custom_components/<your_integration_domain>` (e.g. `custom_components/awesome_integration`). | ||
1. Rename all instances of the `Integration Blueprint` to `<Your Integration Name>` (e.g. `Awesome Integration`). | ||
1. Run the `scripts/develop` to start HA and test out your new integration. | ||
|
||
## Next steps | ||
|
||
These are some next steps you may want to look into: | ||
- Add tests to your integration, [`pytest-homeassistant-custom-component`](https://github.com/MatthewFlamm/pytest-homeassistant-custom-component) can help you get started. | ||
- Add brand images (logo/icon) to https://github.com/home-assistant/brands. | ||
- Create your first release. | ||
- Share your integration on the [Home Assistant Forum](https://community.home-assistant.io/). | ||
- Submit your integration to the [HACS](https://hacs.xyz/docs/publish/start). | ||
# Behringer Digital Mixer Integration For Home Assistant | ||
|
||
[![GitHub Release][releases-shield]][releases] | ||
[![GitHub Activity][commits-shield]][commits] | ||
[![License][license-shield]](LICENSE) | ||
|
||
[![hacs][hacsbadge]][hacs] | ||
![Project Maintenance][maintenance-shield] | ||
|
||
|
||
This integration allows you to connect a Behringer Digital Mixer to Home Assistant. | ||
|
||
**Mixers Supported** | ||
- X32 | ||
- XR12 | ||
- XR16 | ||
- XR18 | ||
|
||
*Testing has been mostly on the X32* | ||
|
||
For each mixer configured by this integration entities for the following are provided.: | ||
|
||
For each Channel, Bus, DCA, Matrix, and Main Faders | ||
- Name (Read only) | ||
- Mute (SWITCH) (Read/Write) | ||
- Fader (NUMBER) (Read/Write) | ||
- Fader Value - dB (SENSOR) (Read only) | ||
|
||
In addition to these 'fader' related variables, also provided is | ||
- Current scene/snapshot number/index (Read/Write) | ||
|
||
## Data Updates | ||
The data for the mixer is updated in real time, so each time a button is pressed or fader is moved on the mixer, this is updated in Home Assistant immediately. | ||
|
||
|
||
|
||
|
||
## Installation | ||
|
||
**HACS installation (recommended)** | ||
|
||
1. Install HACS. That way you get updates automatically. | ||
1. Add this Github repository as custom repository in HACS settings. | ||
1. Aearch and install "Behringer Mixer" in HACS and click install. | ||
1. Restart Home Assistant, | ||
1. Then you can add a Behringer Mixer integration in the integration page. | ||
|
||
**Manual installation** | ||
|
||
1. Using the tool of choice open the directory (folder) for your HA configuration (where you find `configuration.yaml`). | ||
1. If you do not have a `custom_components` directory (folder) there, you need to create it. | ||
1. In the `custom_components` directory (folder) create a new folder called `ha_berhringer_mixer`. | ||
1. Download _all_ the files from the `custom_components/ha_berhringer_mixer/` directory (folder) in this repository. | ||
1. Place the files you downloaded in the new directory (folder) you created. | ||
1. Restart Home Assistant | ||
1. In the HA UI go to "Configuration" -> "Integrations" click "+" and search for "Behringer Mixer" | ||
|
||
|
||
|
||
## Configuration is done in the UI | ||
|
||
<!----> | ||
|
||
# Caveats | ||
Connection to the mixer is performed via ip address using UDP. If the IP address for the mixer changes, you will need to edit the integration setup. To avoid this, set up a DHCP reservation on your router for your mixer so that it always has the same IP address. | ||
|
||
This information on changes to the mixer is written to the HA history/recorder databases so this may result in lots of state being stored if the mixer changes a lot. You may want to consider excluding these entities from storing history. | ||
|
||
|
||
|
||
|
||
## Contributions are welcome! | ||
|
||
If you want to contribute to this please read the [Contribution guidelines](CONTRIBUTING.md) | ||
|
||
*** | ||
|
||
|
||
[commits]: https://github.com/wrodie/ha_behringer_mixer/commits/main | ||
[hacs]: https://github.com/hacs/integration | ||
[hacsbadge]: https://img.shields.io/badge/HACS-Custom-orange.svg?style=for-the-badge | ||
[releases-shield]: https://img.shields.io/github/release/wrodie/ha_behringer_mixer.svg?style=for-the-badge | ||
[releases]: https://github.com/wrodie/ha_behringer_mixer/releases |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
42 changes: 22 additions & 20 deletions
42
...ponents/integration_blueprint/__init__.py → ...components/ha_behringer_mixer/__init__.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.