The Razer Viper V2 Pro is equipped with the Focus Pro 30K (PixArt PAW3950). According to specifications, the Focus Pro 30K is capable of up to 30,000 CPI, as well as a maximum tracking speed of 750 IPS, or 19.05 m/s. Out of the box, five pre-defined CPI steps are set: 400, 800, 1600, 3200, and 6400.
CPI Accuracy
"CPI" (short for counts per inch) describes the number of counts registered by the mouse if it is moved exactly an inch. There are several factors (firmware, mounting height of the sensor not meeting specifications, mouse feet thickness, mousing surface, among others) which may contribute to nominal CPI not matching actual CPI. It is impossible to always achieve a perfect match, but ideally, nominal and actual CPI should differ as little as possible. In this test, I'm determining whether this is the case or not. However, please keep in mind that said variance will still slightly differ between units, so your mileage may vary.
I've restricted my testing to the four most common CPI steps, which are 400, 800, 1600, and 3200. As you can see, deviation is exclusively positive, highly consistent, and very low, which is an excellent overall result.
Motion Delay
"Motion delay" encompasses all kinds of sensor lag. Any further sources of input delay will not be recorded in this test. The main thing I'll be looking for in this test is sensor smoothing, which describes an averaging of motion data across several capture frames in order to reduce jitter at higher CPI values, increasing motion delay along with it. The goal here is to have as little smoothing as possible. As there is no way to accurately measure motion delay absolutely, it can only be done by comparison with a control subject that has been determined to have the lowest possible motion delay. In this case, the control subject is a Logitech G403, whose PixArt PMW3366 sensor has no visible smoothing across the entire CPI range. Note that the G403 is moved first and thus receives a slight head start.
Wired Testing
First, I'm looking at two xCounts plots—generated at 1600 and 30,000 CPI—to quickly gauge whether there is any smoothing, which would be indicated by any visible "kinks." As you can see, neither plot shows any, which strongly suggests there not being any smoothing. Owing to sensor-level MotionSync, SPI timing jitter is minimal.
In order to determine motion delay, I'm looking at xSum plots generated at 1600 and 30,000 CPI. The line further to the left denotes the sensor with less motion delay. There is no motion delay differential at either CPI step, which confirms that there is indeed no smoothing across the entire CPI range.
Wireless Testing
Upon switching to wireless, not much changes, which is impressive.
Once again, 1600 and 30,000 CPI are tested. Keeping the motion delay differential in wired mode established above in mind, I can measure a wireless motion delay of at most 1 ms.
Please note that the xSum plots above have been gathered with the HyperPolling Wireless Dongle set to 1000 Hz. When using the included full-speed dongle, a rather peculiar behavior may show up. Essentially, at some ultimately random point within the motion (t=60 ms in the first plot, t=6 ms in the second one), a shift occurs, beyond which motion delay increases. I've only been able to demonstrate this behavior when using the included full-speed dongle at 1000 Hz in wireless mode. Unfortunately, I'm unable to assert what triggers this behavior. By seemingly pure chance, I've been able to restore the intended (non-shift) behavior, but after plugging in and unplugging the mouse, the shift behavior persisted yet again. This behavior could be observed regardless of the used firmware.
Speed-related Accuracy Variance (SRAV)
What people typically mean when they talk about "acceleration" is speed-related accuracy variance (or SRAV for short). It's not about the mouse having a set amount of inherent positive or negative acceleration, but about the cursor not traveling the same distance if the mouse is moved the same physical distance at different speeds. The easiest way to test this is by comparison with a control subject that is known to have very low SRAV, which in this case is the G403. As you can see from the plot, no displacement between the two cursor paths can be observed, which confirms that SRAV is very low.
Perfect Control Speed
Perfect Control Speed (or PCS for short) is the maximum speed up to which the mouse and its sensor can be moved without the sensor malfunctioning in any way. I've only managed to hit a measly 5 m/s, which is within the proclaimed PCS range and shows no sign of the sensor malfunctioning.
Polling Rate Stability
Considering the Viper V2 Pro is usable as a wired mouse as well, I'll be testing polling rate stability for both wired and wireless use.
Wired Testing
All of the available polling rates (125, 500, and 1000 Hz) look and perform fine.
Wireless Testing
For wired mice, polling rate stability merely concerns the wired connection between the mouse (SPI communication) and USB. For wireless mice, another device that needs to be kept in sync between the first two is added to the mix: the wireless dongle/wireless receiver. I'm unable to measure all stages of the entire end-to-end signal chain individually, so testing polling-rate stability at the endpoint (the USB) has to suffice here.
First, I'm testing whether SPI, wireless, and USB communication are synchronized. Any of these being out of sync would be indicated by at least one 2 ms report, which would be the result of any desynchronization drift accumulated over time. I'm unable to detect any periodic off-period polls that would be indicative of a desynchronization drift.
Second, I'm testing the general polling-rate stability of the individual polling rates in wireless mode. Running the Viper V2 Pro at a lower polling rate can have the benefit of extending battery life. Of the available polling rates (125, 500, and 1000 Hz), only 1000 Hz looks fine. In terms of performance, Razer has assured me that both 125 and 500 Hz are working as intended, despite not looking that way. In fact, 500 Hz in particular is said to be faster than many 1000 Hz implementations, which I've been able to corroborate. Curiously, when using the HyperPolling Wireless Dongle instead of the included full-speed one, the plots look significantly different:
Paint Test
This test is used to indicate any potential issues with angle snapping (non-native straightening of linear motion) and jitter, along with any sensor lens rattle. As you can see, no issues with angle snapping can be observed. No jitter is visible at 1600 CPI. 15,000 CPI shows significant jitter, which is amplified to major levels at 30,000 CPI. This is in line with what to expect from a sensor lacking smoothing entirely. Lastly, there is minor cursor but likely no sensor lens movement, as jitter at maximum CPI is high to where the displayed amount of movement occurs even when stationary.
Lift-off Distance
The Viper V2 Pro offers a wider range of possible LOD adjustment than most mice. One can set the LOD to pre-defined levels of low, medium, or high. Manual calibration is no longer present as the sensor already does this by itself. When using the "low" option, the sensor does not track at a height of 1 DVD (<1.2 mm), which doesn't change when using the "medium" option. When using the "high" setting, the sensor does track at a height of 1 DVD, but not at a height of 2 DVDs (1.2<x<2.4 mm, x being LOD height). Additionally, Asymmetric Cut-off can be enabled, which allows for a higher lift-off distance while keeping the landing distance low. Keep in mind that LOD may vary slightly depending on the surface (mouse pad) it is being used on.
Click Latency
Most gaming mice use mechanical switches for their buttons. By wiring the switches of the test subject together with the switches of a control subject, I'm able to measure click latency very accurately; i.e., standard error of around 0.05 ms. However, this method is not applicable to mice with non-mechanical switches and wireless-only mice in general. As such, other methods ought to be employed, one of which is NVIDIA's Latency Display Analysis Tool (LDAT). The LDAT allows me to measure the entire end-to-end latency between the mouse click and photon transition on the monitor. By establishing the relative difference to a control subject, I'm able to provide values I consider sufficiently accurate; i.e., standard error of around 0.2 ms. The Razer Viper 8K has been posited as the baseline for being within 0.1 ms of a hypothetical absolute minimum. Many thanks go to NVIDIA for providing me an LDAT v2 device.
Click latency has been measured to be roughly +2.1 ms, with standard deviation being 2.2 ms. Keep in mind that due to the indicated value being neither the absolute click latency nor the measured end-to-end-latency, standard deviation ends up looking disproportionally large. Comparison data comes from my own testing and has been exclusively gathered with the LDAT.