whiskerz007/proxmox_hassio_lxc

Add support for Wyzesense

desertblade opened this issue · 4 comments

From project: https://github.com/kevinvincent/ha-wyzesense

Need to pass through /dev/hidraw0

I modified lxc.hook.autodev to include it.

Here is the line from my LXC config file for the machine.
lxc.hook.autodev: bash -c 'for dev in $(ls /dev/tty{ACM,S,USB}* 2>/dev/null) $([ -d "/dev/bus" ] && find /dev/bus -type c) $([ -d "/dev/usb" ] && find /dev/usb -type c) /dev/hidraw0 /dev/mem /dev/net/tun; do mkdir -p $(dirname ${LXC_ROOTFS_MOUNT}${dev}); for link in $(udevadm info --query=property $dev | sed -n "s/DEVLINKS=//p"); do mkdir -p ${LXC_ROOTFS_MOUNT}$(dirname $link); cp -dR $link ${LXC_ROOTFS_MOUNT}${link}; done; cp -dR $dev ${LXC_ROOTFS_MOUNT}${dev}; done'

Awesome work BTW.

I've made some changes to the autodev.hook. Please review information here to update. After applying the changes, the container needs to be rebooted. If this doesn't pass the device through, please reply with the results of ls -l /dev/hidraw0.

I created a new LXC and ran the set_autodev_hook.sh command.

Not seeing /dev/hidraw0 on the machine

Running ls -l /dev/hidraw0

From the container:
ls: cannot access '/dev/hidraw0': No such file or directory

From the Host:
crw------- 1 root root 241, 0 Mar 28 08:43 /dev/hidraw0

In the Proxmox shell, please do the following. If this corrects the issue, please respond with your results so that the script can be updated.

  • Run wget -qL https://github.com/whiskerz007/proxmox_hassio_lxc/raw/master/set_autodev_hook.sh
  • Duplicate line 40 and change 189 to 241 on the duplicate line
  • Run chmod +x set_autodev_hook.sh
  • Run ./set_autodev_hook.sh <CTID> (replace <CTID> with the ID of your container)
  • Reboot the container and see if you are able to use the Wyze device.

That looks like it fixed it.
Did a fresh LXC build.
Ran script (Here is the clone - https://github.com/desertblade/proxmox_hassio_lxc/blob/master/set_autodev_hook.sh)

I can see /dev/hidraw0 (through portainer, wish there was a real shell in Hassio).

Copied all my files over using your script. Ran through some basic tests. Zwave, Zigbee and Wyzesense all work and report correctly.