Open James-F2 opened 4 years ago
DualShock 4 USB seems to be affected by a hardcoded maximum polling rate (64ms) that's not present in the HID USB driver, so before I push the DualShock4 support, looking at how relatively slow they were in the graph compared to other known data, I made an educational guess that they were currently unaffected by jspoll and being polled at 4ms.
Since it's a quite popular controller, I didn't want to assume they were 1ms data until the support is there from an updated driver I'm working on, while still making the data available for anyone to see in the meantime.
Since you are the tester, if you're still sure they were being polled at 1ms on USB, I'll change that now. It's no problem!
Otherwise, I'll keep this issue open until another test is done with the new driver. I'm currently trying to push it within a couple of days.
Actually, I'm not quite sure if the DS4 respects the jspoll setting over BT, but interval did change to 1 over USB. Here is what dmseg reports on mister:
DS4 USB:
DS4 BT:
Hello, sorry for not making the release before the Eve. Busy holidays.
As I was working on the code, I found out that USB wired connection should be polling at jspoll. You are probably right about this.
Here's a build that is designed to support DualShock 4 Bluetooth: new build
My next goal is to support the remaining Bluetooth controllers and it may use new variable for it ("bpoll"). The Bluetooth connection for DualShock 4 uses "jspoll" for now.
This is not guaranteed to work. I was waiting on a few testers to confirm they were working, but some of them are still on holidays. It should however, output a debugging message for polling changes. Let me know how this goes! :)
The biggest MiSTer community is the Classic Gaming Discord server, with plenty of users who are willing to test and help, we want you back there. btw, this is valuable information here, why it is not part of the official wiki?
Results are identical to the regular official build, so it didn't change anything.
Did you see any debugging messages confirming the interval was changed?
See anything abnormal?
DS4.BT: bt_poll->interval=4, interval=4
So it's not quite working yet.
This is where the interval is supposed to change to 1. If you have jspoll set to 1, then the code has a bug somewhere. I'll go take a look and get back to you. 😄
Yep. I didn't change the u-boot.txt for a month now. v=loglevel=4 usbhid.jspoll=1 xpad.cpoll=1
All my measurements are with this setting,, hence opening this "issue". DS4 USB is most certainly made with usbhid.jspoll=1, so the [4ms] note on the DS4 USB measurement is incorrect.
Yeah the USB [4ms] labeling is wrong. I just wanted to take one last look at the source before I change it because it was a lot slower than I expected compared to the old data. I fixed that now. Thanks.
I'll keep this open until I fix DS4.BT polling.
I just found out that polling is not being applied due to a regression. My build has some groundwork done to support 1ms polling <-> regular polling change on the fly without having to reboot MiSTer, so something went wrong there with DualShock 4 Bluetooth support.
I'll fix this soon and let you know here.
Wow. Thanks for testing! 😱 That is ... so wrong in so many levels. I'll take a look.
Some testers also had this issue while some didn't. I think people are mixing builds so it's hard to tell without proper versioning. I may have to work on that, but with the holidays everybody is quite not on the same page.
I'll work on the new build next. I have a few areas I want to take a look at.
I used usbhid.jspoll=1 for all my USB measurements.