Magic Tray · research
Why the 2024 Magic Mouse is not Magic Mouse 2
- The new Magic Mouse charges with USB-C. Windows calls it
0323. - Magic Mouse 2 charges with Lightning. Windows calls it
0269. - They look similar. Windows does not treat them as the same device.
- Apple never shipped a Windows driver for the USB-C one. “Install the Apple mouse driver” is the wrong advice.
If you want the long version
- The kernel work lives in magic-mouse-v3-windows-fix.
- Site: Magic Mouse 2024 (v3) Windows driver.
- How to install the Magic Mouse v3 Windows driver — the KMDF package, step by step.
- Magic Mouse v3 Windows driver — scroll fix — what to do when two-finger scroll stops on Windows 11.
- Magic Mouse battery percentage on Windows — why the tray app reads it, not the driver.
- Magic Mouse v3 Windows driver FAQ — short answers to the common questions.
Bug analysis
DSM / BTHPORT cache. Why reboot does not restore Mode A.
HID research
RID 0x90. Battery is Input on COL02, not Feature 0x47.
Mode A/B diagram
COL01 + COL02 healthy vs collapsed stack.
- Linux already knows this mouse. Windows does not.
- The old Apple Boot Camp mouse driver lists v1 and v2. It does not list 2024.
Older mice already have a driver
- v1 (battery door) and v2 (Lightning) match Apple’s Boot Camp file.
- We use the copy from tealtadpole.
- That file is already signed. You do not need Test Mode.
Magic Mouse v1 / v2
Battery door or Lightning. Apple already listed these.
Pair→Apple’s old driver→scroll works
Magic Mouse 2024
USB-C. Apple never listed this one.
Pair→no Apple driver→pointer yes, scroll dies
The 2024 mouse: two rooms
- Think of the mouse as two rooms.
- Room 1 is the pointer and finger-scroll.
- Room 2 is the battery percent.
- After the mouse sleeps, Windows can knock the wall down. The pointer still moves. Scroll is gone. Restarting Windows does not rebuild the wall.
Working — two rooms
Room 1 · movementCursor and finger-scroll
Room 2 · batteryTray reads percent here
Bluetooth sleeps · Windows merges them
Broken — one room
One leftover roomCursor still works
ScrollGone until you unpair or install a filter
Same idea as the Mode A / Mode B diagram in the kernel repo — without HID class names.
Where the extra piece sits
- Windows will not turn a finger swipe into a scroll wheel by itself on this mouse.
- Someone has to add a small program under Windows and above Bluetooth.
- That picture is from sbagirici, not us.
sbagirici · v1 / v2
Application browser, Explorer
Windows HID stack
applewirelessmouse.sys
← LowerFilter · multi-touch → scroll
Bluetooth HID driver hidbth.sys
Bluetooth stack
Magic Mouse v1 / v2 hardware
Same sandwich · v3 / 2024
Application browser, Explorer
Windows HID stack
KMDF filter
← same slot · keeps the two rooms apart
Bluetooth HID driver hidbth.sys
Bluetooth stack
Magic Mouse 2024 PID 0323
Cursor and scroll
Windows holds it; tray OPEN_FAILED err=5 is normal.
Battery
Tray reads buf[2]. Not Feature 0x47. Not iPhone Hands-Free / WMI.
Patched Apple can pin scroll and drop battery. Stock can keep battery and drop scroll. KMDF is the path aimed at both. It is still self-signed — that is the funding goal.
Why there is a tray program too
- A driver does not show “28%” next to the clock.
- A driver does not know your keyboard’s Bluetooth address.
- Mice, keyboards, and trackpads are different jobs. One file cannot do all of them. See Devices.