V-USB Freezing

I’m trying to use an Arduino Uno as a virtual USB Keyboard to control a KVM.

The idea is that the USB-Serial connector lets a Linux machine decide which port to switch too, and the Arduino sends the keyboard commands to do the switching via V USB.

I breadboarded this out based on:

And it’s works great… if I connect to a PC, a Mac, or a passthrough port on the KVM. If I connect to the keyboard control port on the KVM, I think it initializes properly (well, serial interaction keeps working until I first try to send a key event to the KVM), then the Arduino freezes.

I suspect this is because the KVM is trying to events to the keyboard to setup Caps Lock/Num Lock status, but I’m not sure. The V USB Keyboard software I’m using certainly only has send support. Adding receive support is probably outside the effort I want to put into this.

So… what I’m wondering is… what are the chances my problem is electrical? (I’m guessing small since the pass through works)

What other approaches are there, and what are the chances they will work with my KVM? I have a Leonardo compatible board I can repurpose if need be.