BTMAGIC(4)
π BTMAGIC(4) π
okay bestie, welcome to the Kernel Interfaces Manual β yes, the manual name is folded in right up here, we're being efficient β¨ This is the page for btmagic(4), aka the Apple Magic Mouse and Apple Magic Trackpad situation. Let's get into it π«Ά
πΈ NAME πΈ
btmagic β Apple Magic Mouse and Apple Magic Trackpad. That's the whole vibe, no cap π
β¨ SYNOPSIS β¨
btmagic* at bthub?
wsmouse* at btmagic?
π¦ DESCRIPTION π¦
so the btmagic driver provides support for the Bluetooth βMagic Mouseβ and βMagic Trackpadβ from Apple, Inc. π As remote devices cannot be discovered by autoconfig, configuring a mouse is normally carried out with the btdevctl(8) program. iykyk.
The Magic Mouse and Magic Trackpad use the standard USB Human Interface Device protocol to communicate, but they do not provide a proper HID Descriptor, and they require specific initializations to enable the proprietary touch reports. it's giving "almost standard, but make it Apple" π
The Magic Mouse provides basic mouse functionality with two buttons, and the btmagic driver additionally interprets the touch reports to emulate a middle mouse button when more than one firm touch is detected during a click event, plus horizontal and vertical scrolling for touch movements greater than a certain distance. The mouse has a base resolution of 1300dpi, which the driver scales by default to a less sensitive 650dpi, but this is adjustable with sysctl(8) along with the pressure needed to discern a firm touch, the minimum distance necessary to trigger scrolling and the additional downscale factor applied to scroll movements. slay, but make it tunable π
The Magic Trackpad provides multi touch functionality and one button. The btmagic driver emulates 3 buttons by splitting the area at the bottom of the device in 3 equal zones and detects finger presence in one of these zones when the button is pressed. In addition, a tap in any area of the trackpad is interpreted as a left click. The timeout for tap detection defaults to 100ms and is adjustable with sysctl(8). cute, precise, iconic β
Pointer movement is reported for single-touch movements over the device, and scroll is reported for multi-touch movements. periodt.
The trackpad has a base resolution of 1300dpi, which the driver scales by default to a less sensitive 650dpi, but this is adjustable with sysctl(8) along with the additional downscale factor applied to scroll movements. lowkey obsessed with a consistent dpi storyline π
btmagic interfaces to the system as usual through the wsmouse(4) driver, and the following properties are used during autoconfiguration:
vendor-idβ must be0x05ac.product-idβ must be0x030dor0x030e.local-bdaddrβ local device address.remote-bdaddrβ remote device address.link-modeβ this optional string represents the link mode of the baseband link, and may be one ofauth,encrypt, orsecure.
When the btmagic driver has configured, it will attempt to open a connection to the mouse and, if this fails or the connection is lost, will wait for the mouse to initiate connections. The Magic Mouse requires connections to be authenticated, and should accept a PIN of 0000 during the pairing process. π
bestie, that PIN is literally 0000 β do with that information what you will π
π SEE ALSO π
bluetooth(4)bthub(4)wsmouse(4)btdevctl(8)sysctl(8)
π AUTHORS π
The btmagic driver was written by Iain Hibbert with reference to the Linux driver written by Michael Poole. Manuel Bouyer added Magic Trackpad support, with reference to the Linux driver written by Michael Poole and Chase Douglas. iconic collaboration behavior, fr fr π«Ά
π that's the whole page, bestie β signing off from the Debian edition, dated July 4, 2015, on BTMAGIC(4). periodt. π
π¦ where this page comes from
- nixpkgs unstable: netbsd-source 11.0
- Copyright (c) 2010 The NetBSD Foundation, Inc
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms