Solução da comunidade

Passar um adaptador Bluetooth USB para uma VM ZimaOS: o que tem de ser verdade

A user wanted to pass a USB Bluetooth dongle from a ZimaBoard running ZimaOS into a Home Assistant VM. The reply pointed to an existing community USB passthrough tutorial rather than a Bluetooth-specific toggle.

Um adaptador Bluetooth USB não é especial do ponto de vista da camada de virtualização: primeiro, o anfitrião ZimaOS tem de enumerar o dispositivo USB e, depois, a máquina virtual tem de receber esse dispositivo do anfitrião através de passthrough. Se o anfitrião não o conseguir ver, não há nada que o convidado possa reclamar.

Separe a deteção do anfitrião do passthrough para o convidado

Comece por verificar se o adaptador USB existe no anfitrião. Se o dispositivo estiver visível aí, mas não aparecer dentro da máquina virtual, avance para a camada de atribuição do ZVM/libvirt. Se estiver ausente no anfitrião, alterar as definições do Home Assistant dentro do convidado não resolverá o problema.

O passthrough USB atribui o dispositivo a um único convidado

A documentação do passthrough de dispositivos do anfitrião no libvirt descreve o passthrough de dispositivos do anfitrião e salienta que um dispositivo em passthrough não pode ser utilizado simultaneamente pelo anfitrião e por um convidado ativo. Isto é importante para dongles Bluetooth e de rádio, porque o convidado normalmente precisa de acesso exclusivo enquanto a máquina virtual está em execução.

Os requisitos de máquinas virtuais fornecem o contexto atual sobre virtualização e passthrough no ZimaOS, enquanto a configuração de uma máquina virtual do Home Assistant explica especificamente por que motivo os rádios Zigbee, Z-Wave e USB precisam de ser atribuídos a uma máquina virtual do Home Assistant OS.

O contentor do Home Assistant e a máquina virtual HAOS são diferentes

Os requisitos do Home Assistant distinguem uma implementação do Home Assistant em contentor do HAOS. Num contentor, o hardware é associado ao Docker; numa máquina virtual, o dispositivo USB tem de ser atribuído através da camada de virtualização. Os dois procedimentos não são intercambiáveis.

As opções de máquina virtual do Home Assistant documentam separadamente os métodos de instalação baseados em máquinas virtuais e as instalações em contentores. Por isso, deve confirmar primeiro qual é realmente o tipo de instalação do Home Assistant que utiliza.

Uma ordem prática para a resolução de problemas

  1. Confirme se o adaptador Bluetooth USB está visível no anfitrião ZimaOS.
  2. Desligue a máquina virtual pretendida antes de alterar a atribuição do dispositivo, se a interface assim o exigir.
  3. Adicione o dispositivo USB correto do anfitrião à máquina virtual, em vez de depender apenas de um controlador USB genérico.
  4. Inicie a máquina virtual e verifique o adaptador dentro do convidado.
  5. Se desaparecer após um reinício, verifique novamente se o identificador do anfitrião mudou ou se o dispositivo foi reclamado noutro local.

Em resumo

Numa máquina virtual do Home Assistant, trate o dongle Bluetooth como um dispositivo USB em passthrough. A deteção no anfitrião tem de funcionar primeiro; depois, o ZVM/libvirt tem de atribuir o dispositivo ao convidado e, só então, o Home Assistant poderá utilizá-lo. Não há, no tópico de origem, qualquer evidência de um interruptor separado do ZimaOS para “ativar o Bluetooth”.