Here’s a practical breakdown of the electronics in a Bluetooth® wireless mouse—from “must-haves” to nice extras—plus example parts to make it concrete.
Core blocks (what every BT mouse needs)
Block | What it does | Typical parts / notes |
---|---|---|
Bluetooth LE SoC (MCU + radio) | Runs firmware (HID over GATT), scans/advertises, handles buttons/DPI/wheel, talks to motion sensor (SPI/I²C) | nRF52810/52832/52840 (Nordic), EFR32BG22 (Silicon Labs), DA14531/DA14683 (Renesas/Dialog), CC2640R2F/CC2642 (TI). Aim for ultra-low sleep current and enough GPIO/SPI. |
Motion sensor (optical/laser) | Tracks surface movement and reports ΔX/ΔY | PixArt PAW3205/3212 (low power), PMW3360/3389/3395 (gaming), ADNS-9800 (laser, legacy). Needs lens and illumination (IR LED/VCSEL). Connects via SPI. |
Illumination driver | Powers the IR LED/VCSEL for the sensor | Often integrated in the sensor; otherwise a low-noise constant-current LED driver or a GPIO with current-limit resistor (per sensor datasheet). |
Buttons (microswitches) | L/R click, middle, side buttons, DPI button | Kailh/Omron/Cherry microswitches; routed to MCU GPIOs with debouncing in firmware. |
Scroll wheel encoder | Converts wheel motion to pulses | Mechanical incremental encoder (ALPS, TTC), or optical interrupter + slotted wheel, or magnetic (Hall/AS5600 style). |
Power source | Supplies energy | 1×AA/AAA alkaline (boost to 3.0–3.3 V), 1×Li-ion/Li-poly (buck/LDO to 3.0–3.3 V), or rechargeable NiMH. |
Power regulation | Efficient rails for radio + sensor | Ultra-low-Iq buck (e.g., TPS62740/41), boost for 1×AA (TPS61291/61200, MCP1640), or simple LDO if Li-ion headroom allows (AP7333, TLV700). Keep RF rail clean. |
RF front-end & antenna | Radiates/receives 2.4 GHz | PCB inverted-F antenna or chip antenna (Johanson, Antenova). Include a π-match (C-L-C) and, if SoC RF port is differential, a balun (Johanson 2450BMxx). Keep ground/keep-out rules. |
Clocks | Accurate system & sleep timing | 16–32 MHz main crystal for radio + load caps; optional 32.768 kHz crystal for deep-sleep (some SoCs have good LF RC, but crystal lowers current drift). |
Indicators | User feedback | Single bi-color LED for pairing/battery/DPI. Current-limit resistor per LED. |
Passives & protection | Make it behave & survive | Decoupling (0.1 µF + 1 µF per power pin), bulk caps near regulators (4.7–10 µF), series resistors for LEDs, ESD TVS on USB-C (if rechargeable), button ESD diodes (optional). |
Mechanical/electro-optical | Needed for tracking | Sensor lens & distance bracket, IR window (if any), wheel + detents. Not just mechanics—optics matter a lot. |
Optional / variant blocks
-
Charging path (rechargeable mice): Linear charger (e.g., MCP73831, BQ24040) for Li-ion/Li-poly; USB-C port with CC resistors (5.1 kΩ to CC pins) for proper source negotiation at 5 V; a ship-mode/load switch to cut quiescent current.
-
Fuel gauge: MAX17048/9 (Li-ion), or a simple voltage divider + ADC reading on the MCU for AA cells.
-
On/Off & Pair buttons: Low-profile slide switch for main power; momentary button tied to an interrupt pin for pairing.
-
External EEPROM/Flash: Rarely needed (BLE SoCs have NVM), but some designs keep user profiles/DPI tables externally (e.g., 2–8 Mbit SPI flash).
-
RGB / logo LED: Adds a buck in battery life; PWM from MCU with FETs.
-
Buzzer/Vibra: Haptics for alerts (uncommon).
Two common power architectures
-
Single AA/AAA (long life, inexpensive)
-
Boost 1.0–1.6 V → 3.0 V rail for SoC + sensor (TPS61291/MCP1640).
-
Consider a low-Iq buck-boost if sensor needs 2.6–3.3 V but you want higher efficiency over the whole discharge curve.
-
Pros: cheap, swappable cells. Cons: extra boost noise near RF—mind layout and filtering.
-
Li-ion/Li-poly (USB-C rechargeable)
-
Battery 3.0–4.2 V → buck to 3.3 V (TPS62740) or LDO (simpler, less efficient).
-
Add charger IC + protection (NTC, OVP) and optionally a fuel gauge.
-
Pros: sleek UX, stable rail. Cons: pack safety/transport, charging certification.
Minimal block diagram (signal & power)
Example “starter” BOMs
A. AA-powered, ultra-low-power office mouse
-
BLE SoC: Nordic nRF52810 or nRF52832 (ample GPIO/SPI, low sleep).
-
Sensor: PixArt PAW3212 (low power, office surfaces) + lens set.
-
Regulation: MCP1640 boost (AA → 3.0 V), 10 µF input/output caps.
-
Antenna: PCB IFA + π-network (2×C, 1×L), keep-out per app note.
-
Crystals: 32 MHz (±10 ppm) + 32.768 kHz (±20 ppm) with load caps.
-
Switches/Encoder: Omron D2FC-F-7N (or similar), ALPS wheel encoder.
-
ESD/Passives: TVS on sensor pins optional; 0.1 µF per IC pin + bulk.
B. Li-ion rechargeable, USB-C, performance-leaning
-
BLE SoC: Nordic nRF52840 or Silabs EFR32BG22 (more RAM/flash).
-
Sensor: PixArt PMW3360/3395 (high performance) + IR LED driver.
-
Power: TPS62740 buck to 3.3 V; MCP73831 charger; USB-C receptacle with 5.1 kΩ CC resistors; load switch for ship mode.
-
Fuel gauge: MAX17048 (optional).
-
Crystals/Antenna/Passives: as above, with careful RF zoning.
Practical design notes
-
Layout is king: keep the 2.4 GHz antenna edge-mounted, ground-free keep-out under/around it, short RF traces, and put the π-match close to the antenna feed for easy tuning.
-
Optics + surface: sensor height and lens-to-surface distance must match the datasheet; even small mechanical tolerance errors wreck tracking.
-
Power gating: put the motion sensor and LED on a controllable rail or use deep-sleep modes; wake on motion/interrupt to hit multi-month battery life.
-
Debounce in firmware: use GPIO interrupts + tiny software filters (1–5 ms) instead of RC networks to save parts and latency.
-
Clocks: external LF crystal reduces sleep current drift and improves connection intervals; if you skip it, tune the RC and increase supervision timeout margin.
-
Compliance: BLE stack + HID over GATT profile, BT SIG qualification, and RF regulatory tests (FCC/CE/UKCA). Keep harmonic emissions low (filtering, proper drive).