|
KiCad 9.0 |
|
|
Fusion 360Autodesk
|
|
|
VS Code |
ESP32 Wireless High-Performance Mouse
DIY Mouse
What is the project about?
This is a completely open-source custom DIY mouse. It uses a high-performance Pixart PMW3389 sensor (16,000 DPI) paired with a XIAO ESP32-C3 MCU, any mouse switches of your choice and an EC11 rotary encoder for unique and improved scrolling functionality. This mouse is powerful enough to match most high-end mice in terms of input latency and movement accuracy.
Why did I make this?
This is my first ever project. This has taken 100+ hours to reach this point and I've learned a lot from completing it.
I've learned how to:
- Use KiCad to create schematics and physical PCB layouts
- Use Fusion 360 to 3D model
- Use 3D printing software to fine-tune settings for an optimal print
- Write low-level firmware code
- Use Git
- Write descriptions
Furthermore, "right to repair" is becoming less and less common for consumer electronics. This project allows people to understand their electronics on an extremely low-level, allowing them to repair their electronics, saving money and the environment. The switches and MCU are hot-swappable. This allows upgrading and repairs on a new-level.
How does it work?
- Hardware SPI communication: the sensor and MCU communicate via a high-speed SPI bus, through which the raw movement data and setup data is transferred.
- Power management: An onboard XC6206 1.8v LDO handles voltage differences and provides stable, low-noise power to the sensor; essential for high-performance.
- Firmware: A custom C++ library and mouse code were created for this project. This handles communication and initialisation to and from the sensor as well as handling scrolling and button clicks.
- Enclosure/Shell: Designed in Fusion 360, made for 3D printing. Uses M2 brass heat-inserts embedded in the shell to ensure strong, repeatable assembly and disassembly, without wearing down.
Media


ESP32 Wireless High-Performance Mouse
Project images are for reference only. Actual production is based on the manufacturing files on the project page.
Please review the designer's notes (e.g., PCB thickness) and select the appropriate options.
PCBWay is not responsible
for issues caused by unsuitable parameter selections.
For more important ordering information, please refer to
Read More
Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW- Comments(0)
- Likes(1)
-
Engineer
Oct 05,2026
- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by Engineer
-
Programmable Mist Maker - XIAO / QT PY Extension
2638 2 3 -
RadioHAT - Raspberry Pi radio development platform
2274 0 4 -
QWIIC-VL53L4CD Time-of-Flight Distance Sensor Module
2485 0 2 -
-
-
ARPS-2 – Arduino-Compatible Robot Project Shield for Arduino UNO
4403 0 6 -
-
A Compact Charging Breakout Board For Waveshare ESP32-C3
5175 3 8 -
AI-driven LoRa & LLM-enabled Kiosk & Food Delivery System
5926 2 2 -







