The Glorious Model O 2 Mini Wireless is equipped with the BAMF 2.0, which essentially is a PixArt PAW3395. According to specifications, the 3395 is capable of up to 26,000 CPI, as well as a maximum tracking speed of 650 IPS, which equals 16.51 m/s. Out of the box, four pre-defined CPI steps are available: 400, 800, 1600, and 3200.
All testing was done on the latest firmware (2023). As such, results obtained on earlier firmware versions may differ from those presented hereafter.
"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 differ from unit to unit, 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 inconsistent and moderately large, which is a below average result overall. In order to account for the measured deviation, adjusted steps of 400, 800, 1550, and 3100 CPI have been used for testing.
"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 without special equipment, it is done by comparison with a control subject that has been determined to have consistent and low motion delay. In this case, the control subject is a Logitech G403, whose 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 26,000 CPI—to quickly gauge whether there is any smoothing, which would be indicated by any visible "kinks." Neither plot shows any kinks, strongly suggesting there not being any smoothing across the entire CPI range.
Somewhat curiously, tracking changes dramatically upon disabling RGB lighting, and to the worse.
The Model O 2 Mini Wireless also allows enabling MotionSync, which effectively synchronizes SPI reads with USB polls, resulting in very low SPI timing jitter as seen above.
Determining motion delay is complicated by the fact that at any point during the motion, motion delay may be increased by at least a single interval.
As can be seen above, any of these shifts are correlated with an off-period poll. While I'm unable to reproduce this behavior consistently, it happens often enough to where determining motion delay reliably is not possible.
Wireless testing
Not much changes when running the Model O 2 Mini Wireless in wireless mode as SPI timing jitter and general tracking are virtually on the same level as when wired, both without (first row) and with (second row) MotionSync.
Much like the Model O 2 Wireless and Model I 2 Wireless, the Model O 2 Mini Wireless suffers from an issue whereby the first few counts are registered very late when moving from a standstill, such that new counts are suspended for a short time, only to resume by being reported in a single update. While this leaves the average position unaffected, responsiveness suffers. This only happens in wireless (2.4 GHz) operation, and about half the time.
When neither the shift issue discussed above nor the suspension issue show up, determining motion delay becomes possible. 1600 and 26,000 CPI are tested, both without (first row) and with (second row) MotionSync. Without MotionSync, a motion delay differential of roughly 1 ms can be measured at 1600 and 26,000 CPI. With MotionSync, a motion delay differential of roughly 1 ms is added, totaling 2 ms.
What people typically mean when they talk about "acceleration" is speed-related accuracy variance (or SRAV). 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 (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 causes no observable sensor malfunction.
Strictly speaking, one has to distinguish between polling rate and report rate. Polling rate describes the number of times the host (typically the user's PC) polls the device, whereas report rate describes the number of times the device reports to the host. Thus, a device can be set to be polled a certain number of times per second, but report at a lower rate regardless, either by design (i.e., if there have been no movement changes since the previous report) or not by design, and the latter case is what will be tested under the moniker of "polling rate stability" hereafter. To this end, the mouse is set to a sufficiently high CPI step and moved at a sufficiently high velocity to ensure that the maximum possible report rate is achieved at all times. Polling rate can be conceived of as a frequency, which is typically measured in Hz, though a more correct way of looking at it would be as an interval. For reference, a frequency of 1000 Hz is tantamount to an interval of 1 ms. Likewise, a frequency of 125 Hz would translate to an interval of 8 ms, and a frequency of 8000 Hz to an interval of 0.125 ms.
Wired testing
All the available polling rates (125, 250, 500, or 1000 Hz) display periodic off-period polls.
Somewhat curiously, disabling RGB lighting increases the frequency of said off-period polls.
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. Several such 2 ms polls are visible, which may point towards a desynchronization drift.
Second, I'm testing the general polling-rate stability of the individual polling rates in wireless mode. Running the Model O 2 Mini Wireless at a lower polling rate can have the benefit of extending battery life. All polling rates display periodic off-period polls.
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. There is no jitter visible at 1600 CPI. 10,000 CPI already shows minor to moderate jitter, which is amplified to major levels at 26,000 CPI. This is in line with what to expect from a sensor lacking any smoothing. Lastly, there is no lens movement.
Lift-off distance describes the distance the mouse can be lifted off the tracking surface until the sensor no longer tracks.
The Model O 2 Mini Wireless offers two pre-defined LOD levels. On the "1 mm" setting, the sensor does not track at a height of one DVD. Using the "2 mm" setting, the sensor does track at a height of one DVD, but not at a height of two DVDs (1.2<x<2.4 mm; x=LOD height). Keep in mind that LOD may vary slightly depending on the mousing surface (pad) it is being used on.
In most computer mice, debouncing is required to avoid double clicks, slam-clicks, or other unintended effects of switch bouncing. Debouncing typically adds a delay, which, along with any potential processing delay, shall be referred to as click latency. In order to measure click latency, the mouse has been interfaced with an NVIDIA LDAT (Latency Display Analysis Tool). Many thanks go to NVIDIA for providing an LDAT device. More specifically, the LDAT measures the time between the electrical activation of the left main button and the OS receiving the button-down message. Unless noted otherwise, the values presented in the graph refer to the lowest click latency possible on the mouse in question. If a comparison mouse is capable of both wired and wireless operation, only the result for wireless (2.4 GHz) operation will be listed. All the listed values have been gathered without any sensor motion. If latency differs between no motion and motion, it will be noted as such.
In wired mode and using a debounce time of 0 ms, click latency has been measured to be 2.1 ms, with standard deviation being 0.50 ms. Using a debounce time of 2 ms, click latency has been measured to be 4.0 ms, with standard deviation being 0.51 ms.
In wireless mode and using a debounce time of 0 ms, click latency has been measured to be 2.4 ms, with standard deviation being 0.48 ms. Using a debounce time of 2 ms, click latency has been measured to be 4.3 ms, with standard deviation being 0.49 ms.
Keep in mind that these results have been gathered with an interval of 200 ms between each sample. If there is an interval of at least 300 ms between click events and no sensor activity throughout, latency of various degrees is added. In principle, this behavior is similar to the idle delay observed on mice using the CX52850 MCU, albeit less consistent, and the threshold beyond which it occurs is significantly lower. Accordingly, the values given in the graph only apply under specific conditions, and may be considered "best case" numbers that aren't necessarily representative of actual usage. For this reason, results more representative of actual usage are given in the graph as well. These have been gathered with an interval of 400 ms between each sample. At a debounce time of 0 ms, click latency has been measured to be 7.4 ms, with a standard deviation of 3.44 ms. At a debounce time of 2 ms, click latency has been measured to be 7.2 ms, with a standard deviation of 2.57 ms. Debounce time barely matters under these conditions, and due to the exceedingly large variance, the values given above should be taken as approximations.
The main button switches were measured to be running at 3.37 V. I'm not aware of the voltage specifications of the Kailh GM 8.0 (80 M) switches, but I consider it very likely that these are running within specifications.