Overclock.net - An Overclocking Community - Reply to Topic
Thread: USB mouse hard overclocking (2000 Hz+) Reply to Thread
Title:
Message:

Register Now

In order to be able to post messages on the Overclock.net - An Overclocking Community forums, you must first register.
Please enter your desired user name, your email address and other required details in the form below.
User Name:
If you do not want to register, fill this field only and the name will be used as user name for your post.
Password
Please enter a password for your user account. Note that passwords are case-sensitive.
Password:
Confirm Password:
Email Address
Please enter a valid email address for yourself.
Email Address:

Log-in


  Additional Options
Miscellaneous Options

  Topic Review (Newest First)
01-15-2020 04:08 AM
TranquilTempest
Quote: Originally Posted by SweetLow View Post

>As for the USB controller, The reason I was asking is I didn't know how it was implemented, I was thinking it might be possible to duplicate entries in the scheduling table. Definitely not something in the spec, but you wouldn't expect that of overclocking techniques.
You are right, if we have reasonably flexible controller then we can program to poll one endpoint few times in one frame. But from my point of view
1. It's outside of the specification as i said.
2. Literally gives us nothing useful.
I can explain 2. if you want
Well, I'm not suggesting the method be changed. I just wanted to know if using the start of frame callback function in my mouse firmware was going to be a problem, before I painted myself into a corner. It looks like I didn't need to be worried about that.
01-15-2020 03:32 AM
SweetLow
Quote: Originally Posted by J Doe View Post
You're talking about this? It's a little difficult to me.
Да, именно об этом
Visually it's all OK with driver. Nothing prevents you in software part. But AMD xHCI controller... I never checked it myself and don't know what you really can get on such hardware. The only 100% precise testing is to get some 100% overclockable device like any MLT04 mouse, check CONTROLLER first and only after that check other mice.

Quote: Originally Posted by TranquilTempest View Post
Nice, that makes it a bit easier. Though now I'm wondering what the non-overclockable mice are doing differently. Maybe they just take longer than 500us to run their loop.

As for the USB controller, The reason I was asking is I didn't know how it was implemented, I was thinking it might be possible to duplicate entries in the scheduling table. Definitely not something in the spec, but you wouldn't expect that of overclocking techniques.
>Though now I'm wondering what the non-overclockable mice are doing differently. Maybe they just take longer than 500us to run their loop.
Generalize - they just don't answer for some polls. No matter what is limiting factor. And the most common problem is MCU firmware. qsxcv described this for Logitech mice for example.

>As for the USB controller, The reason I was asking is I didn't know how it was implemented, I was thinking it might be possible to duplicate entries in the scheduling table. Definitely not something in the spec, but you wouldn't expect that of overclocking techniques.
You are right, if we have reasonably flexible controller then we can program to poll one endpoint few times in one frame. But from my point of view
1. It's outside of the specification as i said.
2. Literally gives us nothing useful.
I can explain 2. if you want
01-15-2020 03:12 AM
TranquilTempest
Quote: Originally Posted by SweetLow View Post

>does the driver poll the mouse multiple times in one frame, or does it start USB frames more frequently
The second, increase frame rate on the bus. To be price - driver does not poll anything. USB Controller does real polling. Driver changes this polling schedule in/for controller.
And yes, i don't remember such thing as few polls in one frame in USB specification. If you know - point me to the specification location where it is described.
Nice, that makes it a bit easier. Though now I'm wondering what the non-overclockable mice are doing differently. Maybe they just take longer than 500us to run their loop.

As for the USB controller, The reason I was asking is I didn't know how it was implemented, I was thinking it might be possible to duplicate entries in the scheduling table. Definitely not something in the spec, but you wouldn't expect that of overclocking techniques.
01-15-2020 03:01 AM
J Doe
Quote: Originally Posted by SweetLow View Post
But you said nothing about they.
You're talking about this? It's a little difficult to me.

Spoiler!
01-15-2020 02:55 AM
SweetLow
Quote: Originally Posted by J Doe View Post
It seems that this strange behavior is somehow related to USB port and not the mouse itself. With some ports I get 125 Hz instead of overclock and with others mouse stops working. It doesn't matter which exact mouse I am trying to overclock.
Once again. If i recommend you to read something - it is not just for fun. Your USB controllers are specific thing, the drivers they use are also. But you said nothing about they.

Quote: Originally Posted by TranquilTempest View Post
I'm a bit curious how the overclocking works, does the driver poll the mouse multiple times in one frame, or does it start USB frames more frequently? I ask because some of the example code I'm looking at for writing my own mouse firmware uses the SoF callback to read the sensor, which would interfere with the first possibility.

The other options for starting sensor reads are the transfer complete callback (slightly less than 1 poll interval more latency, but should be easily overclockable), or a timer based on the transfer complete callback and the time between poll intervals(best of both worlds, but also the most work).
>does the driver poll the mouse multiple times in one frame, or does it start USB frames more frequently
The second, increase frame rate on the bus. To be precise - driver does not poll anything. USB Controller does real polling. Driver changes this polling schedule in/for controller.
And yes, i don't remember such thing as few polls in one frame in USB specification. If you know - point me to the specification location where it is described.
01-15-2020 02:41 AM
TranquilTempest I'm a bit curious how the overclocking works, does the driver poll the mouse multiple times in one frame, or does it start USB frames more frequently? I ask because some of the example code I'm looking at for writing my own mouse firmware uses the SoF callback to read the sensor, which would interfere with the first possibility.

The other options for starting sensor reads are the transfer complete callback (slightly less than 1 poll interval more latency, but should be easily overclockable), or a timer based on the transfer complete callback and the time between poll intervals(best of both worlds, but also the most work).
01-15-2020 01:48 AM
J Doe
Quote: Originally Posted by SweetLow View Post
125Hz instead of stop working or 1000Hz points to something wrong in setup with high probability.
P.S. Probably all your mice are incapable of 2000Hz but i appreciate your testing.
It seems that this strange behavior is somehow related to USB port and not the mouse itself. With some ports I get 125 Hz instead of overclock and with others mouse stops working. It doesn't matter which exact mouse I am trying to overclock.
01-15-2020 01:23 AM
SweetLow
Quote: Originally Posted by J Doe View Post
It seems that atsiv only works in Windows 10 test mode. I tried to overclock three mice but had no luck. Cooler Master MM710 and Steelseries Kana V2 stop working after restart and with Nixeus Revel all I get is 125 Hz.
>It seems that atsiv only works in Windows 10 test mode.
Of course, no. It works on usual Windows and needed exactly for that case.

>I tried to overclock three mice but had no luck. Cooler Master MM710 and Steelseries Kana V2 stop working after restart and with Nixeus Revel all I get is 125 Hz.
Before trying to get 2000Hz try ordinary 1000Hz (or just set nominal rate of your mouse in setup to get hidusbf loaded). Of course, it is possible to have first two results (i personally have stop working on Logitech MX310 when it is overclocked to 2000Hz+) but 125Hz instead of stop working or 1000Hz points to something wrong in setup with high probability.
P.S. Probably all your mice are incapable of 2000Hz but i appreciate your testing.
01-15-2020 12:45 AM
J Doe
Quote: Originally Posted by SweetLow View Post
>when I try to set the poll rate to 31 Hz I get just 31 Hz
This means that you really don't install 2-4KHz driver or don't apply patch through atsiv accordingly or just have some unsupported driver of USB Host Controller. Look at the last postscriptum of the first post.
It seems that atsiv only works in Windows 10 test mode. I tried to overclock three mice but had no luck. Cooler Master MM710 and Steelseries Kana V2 stop working after restart and with Nixeus Revel all I get is 125 Hz.
01-14-2020 01:16 PM
SweetLow
Quote: Originally Posted by J Doe View Post
I installed the 2-4KHz driver but when I try to set the poll rate to 31 Hz I get just 31 Hz. Is there anything i can do about it?
>when I try to set the poll rate to 31 Hz I get just 31 Hz
This means that you really don't install 2-4KHz driver or don't apply patch through atsiv accordingly or just have some unsupported driver of USB Host Controller. Look at the last postscriptum of the first post.
This thread has more than 10 replies. Click here to review the whole thread.

Posting Rules  
You may post new threads
You may post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off