I got really fed up with the sound constantly cutting out on the Bose Companion 5, and so made this. Bose should really fix the issue, as all this does is perform a reset of the device whenever it happens.
The program uses lsusb to enumerate the USB devices and determine USB bus ID and device ID. It then uses ioctl to call USBDEVFS_RESET to reset that specific USB device. Documentation on this can be found here: https://www.kernel.org/doc/Documentation/driver-api/usb/usb.rst