Another Nintendo European Research & Development (NERD) patent. This one describes how Switch 2 transmits its higher-res motion control data through the “legacy” (Switch 1) lower-res Bluetooth API, and how it handles network packet losses.

- Switch 2 controller samples motion at ~960Hz, but the Bluetooth link runs at a legacy rate of 200Hz (5ms cycle)
- Simple downsampling or dropping data may degrade motion quality and create drifts
- Instead, each sample is encoded as a running state (orientation quaternion + acceleration accumulator); the average motion between any two states can be reconstructed
- Every 5ms, a 4-40 byte payload is sent from the controller, summarizing up to 3 samples since the last packet; first sample carries absolute orientation, which resets accumulated error (imgs 1-2 below)
- Before each transmission, two payloads are prepared: one assumes last packet arrived (thus containing only new data), and the other assumes that was lost (thus covering the gap from last confirmed arrival); a 1-bit receipt from console determines which payload to send (img 3)
- As more controllers are connected, the Bluetooth transmission cycle may shift down to 10ms or 15ms due to bandwidth limit, but the aforementioned encoding/decoding method can adapt to it automatically [chef’s kiss]
- Other precision-improving techniques include: timestamp mismatch recovery, quantization-error compensation, higher-precision range for smaller movements, console and controller clock alignment, etc.



Read the complete details of EP 4817704 here.
P.S.: Seeing how complicated this is, I have doubts about the precision of motion data from 3rd party Switch 2 controllers.
[Originally posted on 2026-10-07 Pacific Time]