Injected motion
Moves a program sends to each box: how fast they reach the PC, whether every count arrives, and what the box adds.
Move latency
One move at a time, timed on the PC's USB bus from the command to the report carrying it. A default move goes through each box's default smoothing, and an immediate move skips it.
Stock km.moveMedius MOVE
| Mouse and move | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| Still mouse, 1 count | 64.1 ms | 0.969-1.010 ms | Medius |
| Still mouse, 50 counts | 64.1-64.2 ms | 0.926-1.010 ms | Medius |
| Moving 1 kHz mouse, 50 counts | 71.7 ms | 13.5-13.6 ms | Medius |
Stock km.moveMedius MOVE
| Mouse and move | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| Still mouse, 1 count | 64.6 ms | 1.41 ms | Medius |
| Still mouse, 50 counts | 64.6 ms | 1.38-1.42 ms | Medius |
| Moving 1 kHz mouse, 50 counts | 72.1 ms | 15.1-15.3 ms | Medius |
Stock km.move_nowMedius MOVE(NOW)
| Mouse and move | Stockkm.move_now | MediusMOVE(NOW) | Result |
|---|---|---|---|
| Still mouse, 1 count | 4.27-4.29 ms | 0.925-0.945 ms | Medius |
| Still mouse, 50 counts | 4.21-4.24 ms | 0.959-0.984 ms | Medius |
| Moving 1 kHz mouse, 1 count | 11.7 ms | 1.08 ms | Medius |
| Moving 1 kHz mouse, 50 counts | 11.7 ms | 1.08-1.09 ms | Medius |
| Moving 125 Hz mouse, 1 count | 4.25-4.34 ms | 4.68-5.02 ms | StockStock defect |
| Moving 125 Hz mouse, 50 counts | 4.32-4.34 ms | 4.45-4.89 ms | StockStock defect |
Stock km.move_nowMedius MOVE(NOW)
| Mouse and move | Stockkm.move_now | MediusMOVE(NOW) | Result |
|---|---|---|---|
| Still mouse, 1 count | 4.69-4.70 ms | 1.36 ms | Medius |
| Still mouse, 50 counts | 4.67-4.70 ms | 1.41-1.42 ms | Medius |
| Moving 1 kHz mouse, 1 count | 12.1 ms | 1.58-1.61 ms | Medius |
| Moving 1 kHz mouse, 50 counts | 12.1 ms | 1.59-1.60 ms | Medius |
| Moving 125 Hz mouse, 1 count | 4.74 ms | 8.23-8.37 ms | StockStock defect |
| Moving 125 Hz mouse, 50 counts | 4.75-4.80 ms | 7.80-8.09 ms | StockStock defect |
Stock km.moveMedius MOVE
| Mouse and move | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| Still mouse, 1 count | 400/400 | 400/400 | Equal |
| Still mouse, 50 counts | 400/400 | 400/400 | Equal |
| Moving 1 kHz mouse, 1 count | 400/400 | 400/400 | Equal |
| Moving 1 kHz mouse, 50 counts | 400/400 | 400/400 | Equal |
| Moving 125 Hz mouse, 1 count | 400/400 | 400/400 | Equal |
| Moving 125 Hz mouse, 50 counts | 400/400 | 400/400 | Equal |
Stock km.moveMedius MOVE
| Mouse and move | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| Still mouse, 1 count | 400/400 | 400/400 | Equal |
| Still mouse, 50 counts | 400/400 | 400/400 | Equal |
| Moving 1 kHz mouse, 1 count | 400/400 | 400/400 | Equal |
| Moving 1 kHz mouse, 50 counts | 400/400 | 400/400 | Equal |
| Moving 125 Hz mouse, 1 count | 400/400 | 400/400 | Equal |
| Moving 125 Hz mouse, 50 counts | 400/400 | 400/400 | Equal |
Stock km.moveMedius MOVE
| Counts per move | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| 1 count | 2,520 | 0 | Medius |
| 10 counts | 2,160 | 0 | Medius |
| 100 counts | 440 | 0 | Medius |
Stock km.moveMedius MOVE
| Mouse and move | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| Still mouse, 1 count | 64.7 ms | 1.57-1.58 ms | Medius |
| Still mouse, 50 counts | 64.7 ms | 1.56-1.58 ms | Medius |
| Moving 1 kHz mouse, 1 count | 72.2 ms | 5.34-6.03 ms | Medius |
| Moving 1 kHz mouse, 50 counts | 72.2 ms | 15.2-15.4 ms | Medius |
| Moving 125 Hz mouse, 1 count | 8.71-8.81 ms | 9.59-9.62 ms | StockStock defect |
| Moving 125 Hz mouse, 50 counts | 8.73-8.76 ms | 17.9-18.4 ms | StockStock defect |
Delay in a stream of moves
A steady 2 s stream of one-count moves into a still mouse, each box on its default smoothing. Each count is matched to its command and timed from it.
Stock km.moveMedius MOVE
| Moves/s | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| 1,000 | 10.3 ms | 1.85 ms | Medius |
| 500 | 11.3 ms | 1.9 ms | Medius |
| 250 | 11.7 ms | 4.31 ms | Medius |
| 125 | 16.2 ms | 7.85 ms | Medius |
| 60 | 24.7 ms | 16.4 ms | Medius |
| 30 | 33.7 ms | 16.7 ms | Medius |
Smoothing settings
Each box's smoothing settings, measured the same way on the PC's USB bus: 40 single moves into a still mouse, and 100 one-count moves 150-250 ms apart into a moving 1 kHz mouse.
| Box | Setting | One count, last count p50 | 100 counts, last count p50 | Empty reports, 40 one-count moves | One count into a moving mouse, p50 |
|---|---|---|---|---|---|
| Stock | Interpolation AUTO (default) | 64.2 ms | 64 ms | 2,520 | 71.6 ms |
| Stock | Interpolation 0 | 4.17 ms | 4.3 ms | 120 | 11.7 ms |
| Stock | Interpolation 25 | 5.33 ms | 5.43 ms | 160 | 12.7 ms |
| Stock | Interpolation 50 | 17.1 ms | 17.1 ms | 640 | 24.7 ms |
| Stock | Interpolation 100 | 65 ms | 65.3 ms | 2,560 | 72.6 ms |
| Medius | Render DESPIKED (default) | 1.03 ms | 1.02 ms | 0 | 4.07 ms |
| Medius | Render UNSMOOTHED | 0.964 ms | 1.01 ms | 0 | 2.08 ms |
| Medius | Render STOCK | 0.994 ms | 0.929 ms | 0 | 5.97 ms |
| Medius | Render OFF | 0.939 ms | 1.09 ms | 0 | 1.2 ms |
| Medius | Render DESPIKED, full rendering | 0.913 ms | 0.903 ms | 0 | 4.36 ms |
| Medius | Render OFF, spread 0 | 0.876 ms | 0.978 ms | 1 | 1.08 ms |
Extra reports
Reports each box emitted while injecting: beside a 1 kHz mouse moving in every report, in a steady stream of moves into a still mouse, and beside a mouse reporting at 1 kHz or 125 Hz. A 1 kHz mouse sends ~2,500 reports in 2.5 s, a 125 Hz one ~312.
Stock km.moveMedius MOVE
| Mouse | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| Moving 1 kHz mouse | 2,617-2,648 | 0 | Medius |
Stock km.moveMedius MOVE
| Moves sent | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| 1,000 moves/s | 5,220 | 0 | Medius |
| 500 moves/s | 3,902 | 0 | Medius |
| 125 moves/s | 1,087 | 0 | Medius |
Stock km.moveMedius MOVE
| Moves sent | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| 30 moves/s | 11 | 0 | Medius |
| 10 moves/s | 0 | 0 | Equal |
Stock km.moveMedius MOVE
| Moves/s | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| 1,000 | 28 | 0 | Medius |
| 500 | 1,010 | 2 | Medius |
| 250 | 1,508 | 1 | Medius |
| 125 | 1,758 | 2 | Medius |
| 60 | 1,888 | 1 | Medius |
| 30 | 1,931 | 2 | Medius |
Stock km.moveMedius MOVE
| Mouse and moves | Stockkm.move | MediusMOVE |
|---|---|---|
| 1 kHz mouse, 1,000 moves/s | 2,500 | 2,501 |
| 1 kHz mouse, 125 moves/s | 2,492 | 2,492 |
| 125 Hz mouse, 1,000 moves/s | 2,073 | 312 |
| 125 Hz mouse, 125 moves/s | 1,316 | 312 |
Counts arriving
Runs of one-count moves, with the total on the PC checked against the counts sent.
Stock km.moveMedius MOVE
| Mouse and moves | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| Still mouse, 400 moves 30-60 ms apart | Exact | Exact | Equal |
| Still mouse, 2,000 moves at 1,000/s | Exact | Exact | Equal |
| Moving 1 kHz mouse, 400 moves 30-60 ms apart | Exact | Exact | Equal |
| Moving 1 kHz mouse, 2,000 moves at 1,000/s | Exact | Exact | Equal |
| Moving 125 Hz mouse, 400 moves 30-60 ms apart | Exact | Exact | Equal |
| Moving 125 Hz mouse, 2,000 moves at 1,000/s | Exact | Exact | Equal |
| Mouse moving at a varying speed, 400 moves 30-60 ms apart | Exact | Exact | Equal |
| Mouse moving at a varying speed, 2,000 moves at 1,000/s | 1 count short | Exact | Medius |
Stock km.move_nowMedius MOVE(NOW)
| Mouse and moves | Stockkm.move_now | MediusMOVE(NOW) | Result |
|---|---|---|---|
| Still mouse, 400 moves 30-60 ms apart | Exact | Exact | Equal |
| Still mouse, 2,000 moves at 1,000/s | Exact | Exact | Equal |
| Moving 1 kHz mouse, 400 moves 30-60 ms apart | Exact | Exact | Equal |
| Moving 1 kHz mouse, 2,000 moves at 1,000/s | Exact | Exact | Equal |
| Moving 125 Hz mouse, 400 moves 30-60 ms apart | Exact | Exact | Equal |
| Moving 125 Hz mouse, 2,000 moves at 1,000/s | Exact | Exact | Equal |
| Mouse moving at a varying speed, 400 moves 30-60 ms apart | Exact | Exact | Equal |
| Mouse moving at a varying speed, 2,000 moves at 1,000/s | Exact | Exact | Equal |
Stock km.moveMedius MOVE
| Mouse and moves | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| Still mouse, 500 moves/s | Exact | Exact | Equal |
| Still mouse, 250 moves/s | Exact | Exact | Equal |
| Still mouse, 125 moves/s | Exact | Exact | Equal |
| Still mouse, 60 moves/s | Exact | Exact | Equal |
| Still mouse, 30 moves/s | Exact | Exact | Equal |
Stock km.moveMedius MOVE
| Mouse and moves | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| Moving 1 kHz mouse, 1,000 moves/s | 29,977/30,000 | 30,000/30,000 | MediusStock defect |
Stock km.moveMedius MOVE
| Mouse and moves | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| Moving 1 kHz mouse, 400 moves 30-60 ms apart | None | None | Equal |
| Moving 125 Hz mouse, 400 moves 30-60 ms apart | None | None | Equal |
| Mouse moving at a varying speed, 400 moves 30-60 ms apart | None | None | Equal |
Stock km.moveMedius MOVE
| Mouse and moves | Stockkm.move | MediusMOVE | Result |
|---|---|---|---|
| Counting mouse, 1,000 moves/s | 14,988/15,000 | 15,000/15,000 | Medius |
| Counting mouse, 500 moves/s | 7,500/7,500 | 7,500/7,500 | Equal |
| Counting mouse, 125 moves/s | 1,870/1,875 | 1,875/1,875 | Medius |
| Mouse moving at a varying speed, 1,000 moves/s | 14,989/15,000 | 15,000/15,000 | Medius |
| Mouse moving at a varying speed, 500 moves/s | 7,497/7,500 | 7,500/7,500 | Medius |
| Mouse moving at a varying speed, 125 moves/s | 1,873/1,875 | 1,875/1,875 | Medius |
Move into a new clone
A move and a click sent right after the box cloned a new device, three tries each.
Stock km.move_nowMedius MOVE(NOW)
| Device | Stockkm.move_now | MediusMOVE(NOW) | Result |
|---|---|---|---|
| No native report yet | 0/30 | 30/30 | MediusStock defect |
| Native report every 100 ms | 30/30 | 30/30 | Equal |
| One native report at its start | 20/30 | 30/30 | Medius |
| Device | Stock | Medius | Result |
|---|---|---|---|
| No native report yet | All lost | All arrive | Medius |
| Native report every 100 ms | All arrive | All arrive | Equal |
| One native report at its start | Some arrive | All arrive | Medius |
Wheel and horizontal scroll
Injected wheel and horizontal scroll (pan), one command at a time, timed on the PC's USB bus.
Stock km.wheelMedius MOVE
| Command | Stockkm.wheel | MediusMOVE | Result |
|---|---|---|---|
| Wheel 1, mouse still | 0.73 ms | 0.941 ms | Stock |
| Wheel 5, mouse still | 0.778 ms | 0.971 ms | Stock |
| Wheel -3, mouse still | 0.917 ms | 0.858 ms | Medius |
| Wheel 1, 1 kHz mouse moving | 8.58 ms | 1.35 ms | Medius |
| Command | Stock | Medius | Result |
|---|---|---|---|
| Pan 1, 40 times | Refused | Arrives | Medius |
Unsmoothed moves
Stock's RAW_MOVE (documented as skipping its smoothing) against Medius's MOVE(NOW), timed on the PC's USB bus: one at a time, and as a stream of 200 at 1,000/s.
Stock RAW_MOVEMedius MOVE(NOW)
| Mouse | StockRAW_MOVE | MediusMOVE(NOW) | Result |
|---|---|---|---|
| Still mouse | 0.65 ms | 1.07 ms | Stock |
| Moving 1 kHz mouse | 8.59 ms | 1.13 ms | Medius |
Stock RAW_MOVEMedius MOVE(NOW)
| Mouse | StockRAW_MOVE | MediusMOVE(NOW) | Result |
|---|---|---|---|
| Still mouse | 16/200 | 200/200 | Medius |