libvirt / QEMU / KVM USB device passthrough for brewpi / arduino

I've been trying to eliminate the Pi part of my BrewPi configuration. SD cards as main device storage are unreliable if the power fluctuates at all, and the Pi is just so slow. I have my home server sitting right next to my ferm chamber, so I set up an Ubuntu VM on it to run brewpi, and then just had to figure out how to get the Arduino hooked into the VM.

This blog post kept coming up in different search results, so I used it as my starting point. The post *is* a bit dated, and things weren't working. I was able to edit and save the XML for my VM just fine, but the Arduino was never showing up as a connected device.

Through some random Googling around, I stumbled upon this ServerFault answer. The actual XML stanza was the same, but it was being put in it's own file, and read into the VM via the 'virsh attach-device` command. As soon as I ran that, the Arduino was properly showing up in the VM and I was able to have BrewPi talk to it. The functionality of this is exactly the same as what the Pi was providing, but now I have a Core i5 and 16GB of RAM to throw behind it, and large graphs now draw much faster than before.

Add new comment