Skip to content
Snippets Groups Projects
Commit 348d70e7 authored by Christian Elberfeld's avatar Christian Elberfeld
Browse files

Zigbee Adapter for Homeassistant

parent 2e939492
No related branches found
No related tags found
No related merge requests found
......@@ -122,6 +122,10 @@ eq3max:
- { name: "E-Werkstatt-Mitte", id: "MEQ1814738" }
# - { name: "HeizungKlo", id: "OEQ0663079" }
# SLZB-06 Zigbee Adapter
slzb06:
host: 192.168.0.16
# Globale OAuth Server Settings
oauth_global:
authorize_url: https://uffd.warpzone.ms/oauth2/authorize
......
......@@ -69,6 +69,7 @@ alert:
- { name: "tasmoadmin-app-1" }
- { name: "traefik-app-1" }
- { name: "watchtower-app-1" }
- { name: "zigbee2mqtt-app-1" }
disks:
- { mountpoint: "/", warn: "5 GB", crit: "1 GB" }
- { mountpoint: "/srv", warn: "5 GB", crit: "1 GB" }
......
---
- name: "create folder struct for {{ basedir }}"
file:
path: "{{ item }}"
state: "directory"
with_items:
- "{{ basedir }}"
- "{{ basedir }}/data/"
- name: "copy config files for {{ basedir }}"
template:
src: "{{ item }}"
dest: "{{ basedir }}/{{ item }}"
with_items:
- docker-compose.yml
- data/configuration.yaml
register: config_files
- name: "stop {{ servicename }} docker"
community.docker.docker_compose_v2:
project_src: "{{ basedir }}"
state: absent
when: config_files.changed
- name: "start {{ servicename }} docker"
community.docker.docker_compose_v2:
project_src: "{{ basedir }}"
state: present
# Home Assistant integration (MQTT discovery)
homeassistant: true
# allow new devices to join
permit_join: true
# MQTT settings
mqtt:
# MQTT base topic for zigbee2mqtt MQTT messages
base_topic: zigbee2mqtt
# MQTT server URL
server: mqtt://{{ int_ip4 }}
# MQTT server authentication, uncomment if required:
# user: my_user
# password: my_password
# SLZB-06 Zigbee coordinator settings
serial:
# Location of SLZB-06M
port: tcp://{{ slzb06.host }}:6638
baudrate: 115200
rtscts: false
adapter: ember
# Web Frontend
# https://www.zigbee2mqtt.io/guide/configuration/frontend.html
frontend:
# Optional, default 8080
port: 8080
# Logging
# https://www.zigbee2mqtt.io/guide/configuration/logging.html
advanced:
log_level: info
log_namespaced_levels:
z2m:mqtt: warning
services:
# Zigbee USB Stick must be Mounted as /dev/ttyNabuCasaSkyConnect
# see https://gist.github.com/crundberg/a77b22de856e92a7e14c81f40e7a74bd?permalink_comment_id=4524937
app:
image: koenkk/zigbee2mqtt:latest
restart: always
volumes:
- "{{ basedir }}/data:/app/data"
- /run/udev:/run/udev:ro
environment:
- TZ=Europe/Berlin
labels:
- traefik.enable=true
- traefik.http.routers.{{ servicename }}.rule=Host(`{{ domain }}`)
- traefik.http.routers.{{ servicename }}.entrypoints=websecure
- traefik.http.services.{{ servicename }}.loadbalancer.server.port=8080
networks:
- default
- web
networks:
web:
external: true
......@@ -235,6 +235,13 @@
basedir: /srv/fridgeserver,
domain: "fridgeserver.warpzone.lan"
}
- {
role: intern/docker_zigbee2mqtt, tags: [ zigbee2mqtt, docker_services ],
servicename: zigbee2mqtt,
basedir: /srv/zigbee2mqtt,
domain: "zigbee2mqtt.warpzone.lan"
}
- hosts: webserver
remote_user: root
......
......@@ -81,3 +81,11 @@ object Host "eq3max-cube" {
groups = [ "network" ]
}
object Host "slzb-06-zigbee" {
import "generic-host"
address = "{{ slzb06.host }}"
groups = [ "network" ]
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment