Inhaltsverzeichnis

Nodered aufsetzen

Der Faulheit halber nimmt man dasfertige C't Setup.

Nur leider crasht der NodeRed- Container beim Start, darum ersetzt man das C't Image im docker-compose.yml vor dem ersten Start dann doch mit dem Original von NodeRed und setzt die Ports und Network modes wie in einer älteren Version, dann geht's jedenfalls :-)

docker-compose.yml
version: '3.6'

services:
  nodered:
    #image: ghcr.io/ct-open-source/ctnodered:latest
    image: nodered/node-red

    ports:
      - "1880:1880"
    volumes:
      - ./data/nodered:/data
      - /etc/localtime:/etc/localtime
    depends_on:
      - mqtt
    restart: always
#    network_mode: "host"
    environment:
      - TZ=Europe/Berlin
 

  mqtt:
    image: "eclipse-mosquitto"
    ports:
      - "1883:1883"
      - "9001:9001"
    volumes:
      - ./data/mqtt:/mosquitto
      - /etc/localtime:/etc/localtime
    restart: always
    environment:
      - TZ=Europe/Berlin

  zigbee:
    image: koenkk/zigbee2mqtt
    volumes:
      - ./data/zigbee:/app/data
      - /run/udev:/run/udev:ro
      - /etc/localtime:/etc/localtime
    devices:
      - "/dev/ttyACM0:/dev/ttyACM0"
      - "/dev/ttyACM1:/dev/ttyACM1"
    restart: always
    privileged: true
    ports:
      - 1881:1881
    environment:
      - TZ=Europe/Berlin

Wenn man die ersten MQTT- Node einrichtet: Der lokale MQTT Server läuft dann auf dem Host mqtt und muß auch mit dem Namen als Server angegeben werden.

Beim Start mit docker compose up nodered with nodered über fehlende Schreibrechte im data- Folder meckern, das korrigiert man mit

sudo chmod a+rwx -R data

Dann kann mi

Anbindung an Node-RED Smart Home Control

Wenn bis dahin alles geklappt hat, wird das Gerät als Device angezeigt, wenn man eine alexa-smart-home-v3 anlegt.

Wenn man dann die Google- Anbindung geschafft hat, kann man mit einer Debug- Node wunderbar die Node- Events reinkommen sehen, wenn man die Google Home Kommandos spricht

Nützliche Nodes

Timer in Dashboard

Hier der komplette Node-Red-Code