diff --git a/group_vars/prod b/group_vars/prod
index 7f47694cea61da8830a0d98f0d66a0dc6c94135b..187b24ebc46f3be19e6f3620ed1d4c3071a2ed93 100644
--- a/group_vars/prod
+++ b/group_vars/prod
@@ -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
diff --git a/host_vars/ogg b/host_vars/ogg
index 1520fe2a903bf94946696919698331b49b3496b7..90b4d20f2e4925373352760fd5c326ab569cfab7 100644
--- a/host_vars/ogg
+++ b/host_vars/ogg
@@ -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" }
diff --git a/intern/docker_zigbee2mqtt/tasks/main.yml b/intern/docker_zigbee2mqtt/tasks/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..17ea1582eecfcd9c5739277ff1498c92220e0545
--- /dev/null
+++ b/intern/docker_zigbee2mqtt/tasks/main.yml
@@ -0,0 +1,32 @@
+---
+
+- 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
diff --git a/intern/docker_zigbee2mqtt/templates/data/configuration.yaml b/intern/docker_zigbee2mqtt/templates/data/configuration.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..5a516d9015e946787330e40b593f35f31c3b46a8
--- /dev/null
+++ b/intern/docker_zigbee2mqtt/templates/data/configuration.yaml
@@ -0,0 +1,36 @@
+# 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
diff --git a/intern/docker_zigbee2mqtt/templates/docker-compose.yml b/intern/docker_zigbee2mqtt/templates/docker-compose.yml
new file mode 100644
index 0000000000000000000000000000000000000000..4cd93aaaac8093df0dfcfe6ff3dcd8c798304f08
--- /dev/null
+++ b/intern/docker_zigbee2mqtt/templates/docker-compose.yml
@@ -0,0 +1,26 @@
+
+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
diff --git a/site.yml b/site.yml
index c59279335d15a8cd91943746dff8b0077c7fca31..2ffbeac61ec808411d043f5d8e0dc4ec255206a7 100644
--- a/site.yml
+++ b/site.yml
@@ -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
diff --git a/webserver/docker_icinga/templates/etc/icinga/conf.d/hosts_manual.conf b/webserver/docker_icinga/templates/etc/icinga/conf.d/hosts_manual.conf
index d1f7c2a8deb2ff0018286d160004e2afc6b88b25..c01c783afa8c304604c62a925f94882ed954edf2 100644
--- a/webserver/docker_icinga/templates/etc/icinga/conf.d/hosts_manual.conf
+++ b/webserver/docker_icinga/templates/etc/icinga/conf.d/hosts_manual.conf
@@ -81,3 +81,11 @@ object Host "eq3max-cube" {
 
   groups = [ "network" ]
 }
+
+object Host "slzb-06-zigbee" {
+  import "generic-host"
+
+  address = "{{ slzb06.host }}"
+
+  groups = [ "network" ]
+}