Anything possible for PC Speaker from VM?

whc2001

Member
Aug 13, 2021
12
1
8
I have a Linux VM running some software that uses the PC Speaker (onboard buzzer) to give audible signals. I wonder if there is any way for Proxmox to make that going through to the supervisor? Ideally invoking the buzzer on the physical machine, but other ways are also acceptable. Now if I test by running beep in the VM it seems to do nothing.
 
hi,
I wonder if there is any way for Proxmox to make that going through to the supervisor?

you can try to passthrough the buzzer/speaker device to your VM.

check our wiki [0] for pci passthrough. you can try finding your audio device's pci address like this: lspci | grep Audio

if you mean the buzzer on the motherboard, i'm not sure if you can call it from the VM (since that won't show up as a device that can be passthrough)

[0]: https://pve.proxmox.com/wiki/Pci_passthrough
 
Last edited:
hi,


you can try to passthrough the buzzer/speaker device to your VM.

check our wiki [0] for pci passthrough. you can try finding your audio device's pci address like this: lspci | grep Audio

if you mean the buzzer on the motherboard, i'm not sure if you can call it from the VM (since that won't show up as a device that can be passthrough)

[0]: https://pve.proxmox.com/wiki/Pci_passthrough
Thanks, but are you sure the PC Speaker is actually a PCI device that I can passthrough? I tried `lspci -vvv` in the supervisor and tried grepping different keyword, but no hit at all.
 
Most modern audio devices are PCI(e) devices. But the thing that goes BEEP! when the system is powered on is not a PCI device. It might even be the case that the modern 64-bit CPU has to switch back to 16-bit mode to make it make noise. I know pulseaudio can send sounds over a network, but I don't expect it to be able to use the motherboard speaker.
Maybe you could write some scripts that keep an eye on a shared folder (or some program that uses QEMU-guest-agent to communicate) to make the host run beep when the VM wants it to.
 
Most modern audio devices are PCI(e) devices. But the thing that goes BEEP! when the system is powered on is not a PCI device. It might even be the case that the modern 64-bit CPU has to switch back to 16-bit mode to make it make noise. I know pulseaudio can send sounds over a network, but I don't expect it to be able to use the motherboard speaker.
Maybe you could write some scripts that keep an eye on a shared folder (or some program that uses QEMU-guest-agent to communicate) to make the host run beep when the VM wants it to.
Yeah that thing is what I am talking about and seems there is really no way to make it work in guests. The script hack might should work but it's too much hassle. I'll try to find some alternatives.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!