[SOLVED] Trouble passing through USB UPS

Bubbagump210

Member
Oct 1, 2020
53
34
23
45
I am trying to create a VM to run NUT. On the physical machine I also have a USB Bluetooth adapter I pass-through to another VM and this works perfectly. For whatever reason the UPS is not recognized in the VM. I have rebooted the entire host and no luck.

NUT server

Code:
acpi: 1
agent: 1,fstrim_cloned_disks=1
autostart: 0
balloon: 512
boot: c
bootdisk: scsi0
cicustom: user=local:snippets/nut.yaml
citype: nocloud
cores: 1
ipconfig0: ip=192.168.73.15/24,gw=192.168.73.1
kvm: 1
memory: 512
meta: creation-qemu=7.2.0,ctime=1688483224
name: NUT
net0: virtio=0A:00:60:A9:EC:4F,bridge=vmbr0
onboot: 1
ostype: l26
scsi0: T340-SSD:vm-111-disk-0,size=8G
scsihw: virtio-scsi-pci
smbios1: uuid=0bbfcdb5-e985-46e2-8f22-e55e917b3e75
sockets: 1
tablet: 0
template: 0
usb0: host=051d:0002
vga: std
vmgenid: 5f8100e5-d947-429b-be32-4b175f797a62

Other VM with Bluetooth

Code:
agent: 1,fstrim_cloned_disks=1
bios: ovmf
boot: order=scsi0
cores: 1
cpu: host
efidisk0: T340-SSD:vm-107-disk-0,efitype=4m,size=4M
localtime: 1
memory: 2048
meta: creation-qemu=7.2.0,ctime=1692903736
name: HomeAssistant
net0: virtio=02:76:4B:0F:62:D9,bridge=vmbr0
numa: 0
onboot: 1
ostype: l26
scsi0: T340-SSD:vm-107-disk-1,discard=on,size=32G,ssd=1
scsihw: virtio-scsi-pci
smbios1: uuid=bb28e62c-1784-4b5f-8414-b33290748a4a
sockets: 1
tablet: 1
tags:
usb0: host=1-10
vmgenid: a7bcff4d-ef9b-4923-b6bd-efec2c4ba7eb

lsusb on the host (though those first two lines are suspicious

Code:
can't get device qualifier: Resource temporarily unavailable
can't get debug descriptor: Resource temporarily unavailable

Bus 001 Device 004: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x051d American Power Conversion
  idProduct          0x0002 Uninterruptible Power Supply
  bcdDevice            0.90
  iManufacturer           1 American Power Conversion
  iProduct                2 Back-UPS XS 1500M FW:947.d10 .D USB FW:d10   
  iSerial                 3 3B1948X68390
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0022
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                2mA
    Interface Descriptor:
      bLength                 9


dmesg shows it on the host
Code:
[86133.889174] hid-generic 0003:051D:0002.000A: hiddev0,hidraw0: USB HID v1.00 Device [American Power Conversion Back-UPS XS 1500M FW:947.d10 .D USB FW:d10     ] on usb-0000:00:14.0-10/input0

Neither NUT nor apcupsd are installed on the host. I have tried '/sys/bus/usb/drivers/usb/unbind'. Any ideas on why this won't show up in the VM?

EDIT: I also see this in dmesg in the VM when I virtually connect the USB device. This seems odd as it seems to be referencing PCI?

Code:
[   53.723733] pci 0000:01:1b.0: [1b36:000d] type 00 class 0x0c0330
[   53.724770] pci 0000:01:1b.0: reg 0x10: [mem 0x00000000-0x00003fff 64bit]
[   53.726259] pci 0000:01:1b.0: BAR 0: assigned [mem 0xfe800000-0xfe803fff 64bit]
 
Last edited:
Sigh, I figured it out. I am using a genericcloud image and there are no USB drivers included. I installed a different linux-image package and the world was happy.
 
  • Like
Reactions: tjingeling