USB mouse hard overclocking (2000 Hz+) - Page 84 - Overclock.net - An Overclocking Community

Forum Jump: 

USB mouse hard overclocking (2000 Hz+)

Reply
 
Thread Tools
post #831 of 839 (permalink) Old 07-15-2020, 01:33 AM - Thread Starter
New to Overclock.net
 
SweetLow's Avatar
 
Join Date: Jan 2016
Posts: 560
Rep: 55 (Unique: 31)
Quote: Originally Posted by 2A1Z View Post
Will overclocking be unrestricted on AMD in any future updates?
If you will read my dialogue on the link - no with high probability.
SweetLow is offline  
Sponsored Links
Advertisement
 
post #832 of 839 (permalink) Old 07-17-2020, 05:28 AM
New to Overclock.net
 
Join Date: Mar 2019
Posts: 44
Rep: 0
Quote: Originally Posted by NDUS View Post
An interesting thing: someone recently contacted me and said that they tried overclocking their M1K and that not only did it not work, the M1K also developed coil whine after the overclocking attempt. They sent a recording and indeed it did seem to have coil whine.

It's possible that you can lose some kind of cosmic mouse roulette and your mouse won't be overclockable - or worse, could perhaps even be damaged by the attempt. I'm not sure.
Patrick from Zaunkoenig here. My M1K has coil whine even though its not running at 8,000 Hertz currently. I can only hear it though if I hold my M1K directly to my ear. I suspect its the LED in the PixArt 3360. The «coil whine» on my M1K disappears when I suspend it in the air for a few seconds. I blame PixArt.
IPS.Blue is offline  
post #833 of 839 (permalink) Old 07-21-2020, 02:13 AM
New to Overclock.net
 
Join Date: Jul 2020
Posts: 2
Rep: 0
Does this work for Windows 7 Ultimate

Hi, I tried to overclock my Zowie S1 Divina to above 1k polling rate and it didn't work. Does this support windows 7? Thanks
LewisMerks is offline  
Sponsored Links
Advertisement
 
post #834 of 839 (permalink) Old 07-27-2020, 01:11 AM - Thread Starter
New to Overclock.net
 
SweetLow's Avatar
 
Join Date: Jan 2016
Posts: 560
Rep: 55 (Unique: 31)
Quote: Originally Posted by LewisMerks View Post
Does this support windows 7?
No.
SweetLow is offline  
post #835 of 839 (permalink) Old 07-30-2020, 03:31 AM
discontent laypleb
 
Jonny321321's Avatar
 
Join Date: Nov 2009
Posts: 422
Rep: 5 (Unique: 3)
Thanks, it worked! Tested about 5 mice, the only reasonably overclockable mouse that I tried was the Ninox venator which did about 1300hz (unsure if stable). The razer viper mini did about 1040mhz, logitech g303 & g203, endgame gear XM1 and razer jugan no change. Is it worth trying the overclock hub option - e.g. can this produce results on certain mice where the default configuration doesn't?
I notice that whichever back USB port I use none of my mice are ever attached directly to the xhci root hub as suggested in the 1st page, there's always a USB composite device intermediary.

cool
(12 items)
CPU
i7 9700k @ 5GHz 1.28V
Motherboard
Asrock Z390 Phantom Gaming ITX-ac
GPU
AMD Vega 54 w/ Morpheus II VGA heatsink & 64 BIOS
RAM
Patriot Viper 2 x 8 GB 3200 Mhz DDR4 RAM @ 4000 CL18
Hard Drive
SAMSUNG SM951 256GB NVMe
Hard Drive
SAMSUNG 840 EVO 250GB
Power Supply
Seasonic PRIME Gold 850W
Monitor
Alienware AW2518HF 240hz
Keyboard
CM Masterkeys Pro S w/ Gateron Yellows
Mouse
XM1, G303, G100s, FK, G403, G203, Abyssus V1/V2, Venator, Aurora, ZA13, EC2, Kinzu V2/V3, Kana V2, KPO, Rival, Rival 310, Sensei 310, Jugan, MM S etc
Mousepad
Helios, Qck Heavy, Qck+, G440, Hayate Otsu, Hien, Shidenkai XL
Audio
Philips Fidelio X2s
▲ hide details ▲



Last edited by Jonny321321; 07-30-2020 at 03:34 AM.
Jonny321321 is offline  
post #836 of 839 (permalink) Old 08-09-2020, 10:44 AM
New to Overclock.net
 
KulaGGin's Avatar
 
Join Date: Dec 2015
Location: Europe
Posts: 67
Rep: 5 (Unique: 3)
Made a minimalist test to test the round trip time from PC to Arduino and back to PC at different polling rates. Tried these: 31, 62, 125, 250, 500, 1000, 8000. Posted results in the Is it worth making a mouse using the PCIE interface?. Got interesting results. Here's the post:
Quote: Originally Posted by KulaGGin View Post
Got back to this again. This time I did a different test only using Arduino, firmware and console application on PC:
• On PC: send a signal to Arduino from PC through USB's virtual Serial port
• On Arduino: when it gets the signal, send 'a' key back using default Keyboard.h library.
• On PC: wait for the keystroke to arrive.
• On PC: Measure time between the moment before it started sending the signal to Arduino and the moment it registered the key press.
• On PC: print the result to the console window.

Do it a 1000 times and get the average of 1000 measurements.

tl;dr conclusion: no need for PCIe because even at 1000 Hz average latency is below 1ms, and at overclocked 8000 Hz it should be around 62.5 microseconds.

I got interesting results which I can't explain. On a default polling rate, I get less than 0.5ms on average from 1000 measurements and almost all of them are below 0.5ms(and very close to it). Here are the numbers from one run:
Spoiler!


Average of this run is 0.482ms.

When I install custom hidusb driver from the USB mouse hard overclocking thread, install service, filter and set polling rate to 1000, I get very similar results: sub 0.5ms average ping time. I don't understand why all of them are so close to 0.5ms. They should be fluctuating 0.001-2.000ms all the time, not be in a very close to 0.5ms range. I think they should be fluctuating 0.001-2.000ms because PC also first sends information to the Arduino and only after that waits for the keystroke, so it should take at least 2 transfers: one out and one in.

When I change polling rate to 500, average becomes very close to 1ms. That's expected again, but all results are very close to 1ms. As I said, I expect them to fluctuate from 0.001-4.000ms in this case to get an average of 2ms because of 2 transfers.

And this situation repeats on no matter what polling rate I do it on: 31, 62, 125, 250, 500, 1000. On every try, time of the ping equals to (1000 / polling rate / 2)ms. So at 1000 Hz it's 0.5ms, at 500 Hz it's 1ms, at 125Hz it's 4ms, etc.

When I install the 4kHz-8kHz driver and set the rate to 62, which is supposed to be 8000 Hz, ping time gets very close to 125µs, as it's supposed to. Here are results from one run:
Spoiler!

In this run average is 128µs(0.128ms).

This is finally expected average because of 2 transfers, but why all of them are still so damn close to the 125µs? They should be in 0-250µs range because of 2 transfers, as I understand it.

If anyone wants to try it out, I uploaded it to GitHub: https://github.com/KulaGGin/USB-Lag-Test. All you need to do is to upload LagTest.Arduino.ino sketch to Arduino from Visual Studio, Arduino IDE or whatever you use, build LagTest.PC project, start it, enter the name of Arduino's com port or just press enter if you have only one or if first will do and wait for the results. In my case looks like this:
https://www.youtube.com/watch?v=QidRo-NB7s0

For the completeness, here's code.
LagTest.Arduino.ino:
Spoiler!

Program.cs:
Spoiler!


Does anyone know and could, please, explain, why am I getting the average of (1000 / polling rate / 2)ms, when, as I think, it should be average of (1000 / polling rate)ms, because PC first sends the signal and only then Arduino answers? And also why all results are so close to the (1000 / polling rate / 2)ms and not spread around between 0 to (1000 / polling rate)ms?
@SweeLow and others, can you explain why I get these results, instead of the ones I expect? Is there something wrong with my understanding of how it's suppose to work or maybe there's something wrong with the test?

Last edited by KulaGGin; 08-10-2020 at 03:21 AM.
KulaGGin is offline  
post #837 of 839 (permalink) Old 08-09-2020, 03:17 PM
New to Overclock.net
 
NDUS's Avatar
 
Join Date: Feb 2017
Posts: 108
Rep: 7 (Unique: 6)
Quote: Originally Posted by KulaGGin View Post
Made a minimalist test to test the round trip time from PC to Arduino and back to PC at different polling rates. Tried these: 31, 62, 125, 250, 500, 1000, 8000. Posted results in the Is it worth making a mouse using the PCIE interface?. Got interesting results. Here's the post:

@SweeLow and others, can you explain why I get these results, instead of the ones I expect? Is there something wrong with my understanding of how it's suppose to work or maybe there's something work with the test?
This is over my head, but re: the "2 transfers", USB 3.0 apparently can be full duplex under some circumstances. Maybe it's related?
https://bb-smartpartners.com/pdf/whi..._r005_2513.pdf
NDUS is offline  
post #838 of 839 (permalink) Old 08-10-2020, 12:13 AM
New to Overclock.net
 
Join Date: May 2020
Posts: 1
Rep: 0
Try having the PC send a random number to the Arduino, and the Arduino repeat the number back at the PC and see if it affects results.
NotThat is offline  
post #839 of 839 (permalink) Old 08-10-2020, 04:18 AM
New to Overclock.net
 
KulaGGin's Avatar
 
Join Date: Dec 2015
Location: Europe
Posts: 67
Rep: 5 (Unique: 3)
Quote: Originally Posted by NDUS View Post
This is over my head, but re: the "2 transfers", USB 3.0 apparently can be full duplex under some circumstances. Maybe it's related?
https://bb-smartpartners.com/pdf/whi..._r005_2513.pdf
Yes, USB 3.0+ can pass data in both directions at the same time, but for that it uses additional wires present on 3.0 cables, and hence it needs 3.0+ everything: host controller, hub, cable, device. My Arduino is USB 2.0 and cable is also only 2.0.
From what I read, on USB 2.0 multiple data packets are possible per one frame, up to 3(including) packets per one frame on a USB 2.0(High speed) device. But that's only for a single transaction, which is always one way, as I understand.

Quote: Originally Posted by NotThat View Post
Try having the PC send a random number to the Arduino, and the Arduino repeat the number back at the PC and see if it affects results.
Made the test with a check on PC side that the byte returned is a byte PC sent:
• On PC: Send the byte to Arduino and wait for an answer.
• On Arduino: wait for available bytes in the buffer, send received byte back to PC and flush the buffer if there are any other bytes still in the buffer.
• On PC: when answer is received, check if the byte received is the same byte that was sent. If it is, measure time between the moment before it started sending the byte and current moment. If it's not the same, read next byte in the buffer.
• Dump results into the console window.

I tried 9600 and 115200 baud rates, 125 and 8000 Hz(with installed custom 4kHz-8kHz hidusb driver, installed service and activated filter), and the results are as following:
Quote:
Serial Lag 9600 baud rate, 8000 Hz 0.297ms
Serial Lag 115200 baud rate, 8000 Hz 0.299ms
Serial Lag 9600 baud rate, 125 Hz 0.311ms
Serial Lag 115200 baud rate, 125 Hz 0.288ms
In the case with Serial, latency isn't affected by baud rate and polling rate of the device.

Code of the test is as following:
SerialTestArduino.ino:
Spoiler!


Program.cs:
Spoiler!


Can't explain any of the results I get neither for serial, nor for the keyboard HID but I'm happy that latencies are super-super low. Some time ago I read this thread on reddit: https://www.reddit.com/r/arduino/com...n_for_science/

Some neuroscientist wasn't happy with USB latencies and he somehow got to 4 and even 9 ms(!) of a round trip time(ping). Could be default low polling rate, or maybe wrong type of USB transfer he chose, or busy host controller because of other devices, or idk.

And for a long time I lived under the impression that there's some big overhead over the polling rate and it takes much longer to process data on PC or somewhere else. But it's good that I was wrong and latencies are, indeed, super low.

Last edited by KulaGGin; 08-10-2020 at 04:31 AM.
KulaGGin is offline  
Reply

Quick Reply
Message:
Options

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



Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Show Printable Version Show Printable Version
Email this Page Email this Page


Forum Jump: 

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
Trackbacks are Off
Pingbacks are Off
Refbacks are Off