This is the manual way, without GUI, to passthrough a Zwave and Zigbee Stick to an LXC container using /dev/serial/by-id, rock solid since about 2 years.
root@pve:~# ls -l /dev/serial/by-id
insgesamt 0
lrwxrwxrwx 1 root root 13 Aug 9 08:19 usb-0658_0200_12345678-9012-3456-7890-123456789012-if00 -> ../../ttyACM0
lrwxrwxrwx 1 root root 13 Aug 9 08:19 usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_54aaead57b3bec11ae67a0957a0af07f-if00-port0 -> ../../ttyUSB0
root@pve:~# ls -l /dev/ttyUSB0
crw-rw---- 1 root dialout 188, 0 4. Sep 16:28 /dev/ttyUSB0
(Note down the three digit number behind the group: 188 in my case)
root@pve:~# ls -l /dev/ttyACM0
crw-rw---- 1 root dialout 166, 0 Aug 9 08:19 /dev/ttyACM0
(Note down the three digit number behind the group: 166 in my case)
root@pve:~# lsusb
Bus 001 Device 003: ID 0658:0200 Sigma Designs, Inc. Aeotec Z-Stick Gen5 (ZW090) - UZB
Bus 001 Device 002: ID 10c4:ea60 Silicon Labs CP210x UART Bridge
(Note down the vendor and product id’s: 0658:0200 for Zwave, 10c4:ea60 for Zigbee in my case)
Add the noted data to 98-persistent-local.rules:
nano /etc/udev/rules.d/98-persistent-local.rules :
#Zigbee Stick SONOFF
SUBSYSTEMS=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", SYMLINK+="ZIGBEE", MODE="0666"
#Zwave Stick
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0658", ATTRS{idProduct}=="0200", SYMLINK+="ZWAVE", MODE="0666"
Edit the Proxmox lxc config file (102.conf in my case) and use the noted data from above:
nano /etc/pve/lxc/102.conf :
lxc.cgroup.devices.allow: c 188:* rwm
lxc.mount.entry: /dev/serial/by-id/usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_54aaead57b3bec11ae67a0957a0af07f-if00-port0 dev/ZIGBEE none bind,optional,create=file
lxc.cgroup.devices.allow: c 116:* rwm
lxc.mount.entry: /dev/serial/by-id/usb-0658_0200_12345678-9012-3456-7890-123456789012-if00 dev/ZWAVE none bind,optional,create=file
Restart the container to activate the changes. Good luck.

