Hi there,
I've done a lot of troubleshooting on this issue.
At first I thought it was just the controller but used another controller and same issue.
I have a Raspberry Pi3 connected via LAN cable and is on a VLAN to the windows system -- there is no other traffic on this link and is dedicated to VirtualHere communication.
This works perfectly and latency is minimal if any at all and in the PI I have a powered USB hub plugged in with the following:
- Bluetooth module
- UGREEN Bluetooth 5.4 Adapter for PC
- https://www.amazon.co.uk/dp/B0CJXVM1JJ
- Wireless Keyboard
- Wireless Mouse
- I do plug in controllers/etc. at times via USB cable (more on that later).
As a note the Raspberry Pi is only used for VirtualHere, nothing else is running on it bar the default OS installed items.
What happens is the controller seemingly disconnects -- or gets confused, while on Bluetooth but the really odd thing here is it only seems to happen -- or I have only noticed it in, Hollow Knight (the first one). It a random occurance as well but pretty consistent in that it happens over and over.
Troubleshooting:
- Tried different controllers to rule that out.
- Connected the controller to the windows PC directly with the on-board Bluetooth - no issue controller.
- Connected the controller to the windows PC with the Bluetooth module - no issue with the controller.
- Tried a USB 2.0 extension cable direct to the Pi to move the module away from the USB 3.0 stuff - has the same issue.
- Turned off the Wireless Keyboard and Mouse - same issue.
- I even turned off 2.4GHz on my access points - same issue.
It seems to point to the communication via VirtualHere but on that:
- There is no disconnects/outage on the network link or no events on device disconnects.
- I have added the command line switches --- it happens before or after adding these:
- UseCompression=0
- OptimizeForSpeed=1
- DirectConnect=1
I am at a loss here as to why.
What is really confusing here is that playing Call of Duty etc. with the controller over Bluetooth there is no issue at all.
Also, if I play with the controller plugged in via USB - over VirtualHere, there is no issue at all.
Any ideas on this? Or what can I give you that might help track down the issue.
Edit:
The only thing I haven't ruled out is the Raspberry Pi itself - and perhaps removing ESET on windows (but I have whitelisted VirtualHere as much as I can).
For the Raspberry Pi at least, I could rig up VirtualHere on another device I have and see but I don't reckon the Pi is the issue here.
.
It almost sounds like its a network bandwidth and/or CPU starvation issue.
Remember on the pi3 everything goes through a single USB port including the networking. So its majorly bandwidth constrained especially if you are running busy games and the cpu% is high. Have a look at
top
orhtop
and see what that shows when virtualhere is dropping."Remember on the pi3…
"Remember on the pi3 everything goes through a single USB port including the networking."
I did not know that and it makes sense - that it is all connected via USB.
So while my actual network has adequate capacity and no interference -- being a VLAN, it could very well be a capacity issue on the "port" on the pi.
I'll have to check what you suggested.
Do you know if the later pi revisions have the same bottlenecking issue - do they also connect via a single port or perhaps might have bandwidth.
I tried the Bluetooth…
I tried the Bluetooth adaptor on another system - much more powerful than the Pi, and had the same issue.
I've ordered a new one - 6.0 spec this time, so I'll see if changing the adaptor makes a difference.
.
The pi4 uses a separate USB system to the network system (using a VIA PCIe chip). And the pi5 is even better and completely separates the USB subsystems from each other using a custom RP1 chip.