Valkirie / HandheldCompanion

ControllerService
Other
1.2k stars 92 forks source link

DSU Server doesn't work #904

Closed alexyao2015 closed 10 months ago

alexyao2015 commented 10 months ago

Handheld Companinion Version 0.18.0.6+ Even though release notes and commit history don't show the .net version updated until the 0.19.x series, the binaries on github releases appear to already have the change.

Describe the bug The DSU server for gyro doesn't work in yuzu. Simply downgrading to .net7 on any HC version fixes the issue.

To Reproduce

  1. Open HC after version 0.18.0.5
  2. Open yuzu and attempt to connect dsu server.

Expected behavior DSU test doesn't give errors

CasperH2O commented 10 months ago

Tried just now with PadTest, initially it works, then I disconnect and open Yuzu, it fails the connection test. Then after waiting a bit, it seems to work again. Something is definitely wrong.

Managed to get a successful connection test in Yuzu right after disconnecting pad test, but only once. Padtest never works while I have Yuzu open. Seems like a busy port issue, but I'm no expert.

Can also confirm switching to .net7 makes it connect fine consistently.

CasperH2O commented 10 months ago

Testes some more with 0.20.2.7, Padtest works most of the time, Dolphin does a constant disconnected connected every few seconds.

Did a test with Wireshark and captured a packet file. DSUServer-PortUnreachable.zip

image

Checked delta time of messages, seems pretty consistent at 10 msec.

Enabling "Common Language Runtime Exceptions" for "System.Net.Sockets.SocketException" results in some additional info on the received function. Forcibly closed by the remote host. on ReciveCallback

Unsure how to proceed and fix. Someone on Discord also had a look at the packets in Wireshark for .NET7 and 8 and they seem similar.

alexyao2015 commented 10 months ago

I think we should revert back to .net7 until this issue is fixed.

CasperH2O commented 10 months ago

The clever guys at DS4Windows caught this one some weeks ago, updated HC and initial testing looks good.

https://github.com/Ryochan7/DS4Windows/commit/483c366daa1b38fba52380051cd7d4aafb44a820

CasperH2O commented 10 months ago

Fixed for next release.