Zigbee2MQTT Proxmox LXC

Zigbee2MQTT is an open-source software project that allows you to use Zigbee-based smart home devices (such as those sold under the Philips Hue and Ikea Tradfri brands) with MQTT-based home automation systems, like Home Assistant, Node-RED, and others. The software acts as a bridge between your Zigbee devices and MQTT, allowing you to control and monitor these devices from your home automation system.

🛈 If the LXC is created Privileged, the script will automatically set up USB passthrough.

To create a new Proxmox VE Zigbee2MQTT LXC, run the command below in the Proxmox VE Shell.
To Update Zigbee2MQTT, run the command below (or type update) in the LXC Console.

bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/zigbee2mqtt.sh)"

Default Settings: 1GB RAM - 4GB Storage - 2vCPU

As an alternative option, you can use Alpine Linux and the Zigbee2MQTT package to create a Zigbee2MQTT LXC container with faster creation time and minimal system resource usage.

To create a new Proxmox VE Alpine-Zigbee2MQTT LXC, run the command below in the Proxmox VE Shell.

bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/alpine-zigbee2mqtt.sh)"

Default Settings: 256MiB RAM - 300MiB Storage - 1vCPU

:gear: Determine the location of your adapter

ls -l /dev/serial/by-id

Example Output: lrwxrwxrwx 1 root root 13 Jun 19 17:30 usb-1a86_USB_Serial-if00-port0 -> ../../ttyUSB0

:gear: :warning: Before you start Zigbee2MQTT you need to edit the configuration.yaml

Debian

nano /opt/zigbee2mqtt/data/configuration.yaml

Alpine

nano /etc/zigbee2mqtt/configuration.yaml

Save and exit the editor with “Ctrl+O”, “Enter” and “Ctrl+X”

Example:

frontend:
  port: 9442
homeassistant: true
permit_join: false
mqtt:
  base_topic: zigbee2mqtt
  server: 'mqtt://192.168.86.224:1883'
  user: usr
  password: pwd
  keepalive: 60
  reject_unauthorized: true
  version: 4
serial:
  port: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
  #adapter: deconz	#(uncomment for ConBee II)
  #adapter: ezsp    #(uncomment for ITead Sonoff Zigbee 3.0 USB Dongle Plus V2 model "ZBDongle-E version")
advanced:
  pan_id: GENERATE
  network_key: GENERATE
  channel: 20

:gear: Zigbee2MQTT can be started after completing the configuration

Debian

cd /opt/zigbee2mqtt && npm start

Alpine

rc-update add zigbee2mqtt default