diff --git a/docs/devices/m705.txt b/docs/devices/m705.txt new file mode 100644 index 00000000..ed945adc --- /dev/null +++ b/docs/devices/m705.txt @@ -0,0 +1,42 @@ +registers: + +# writing 0x10 in this register will generate an event +# 10 02 0Dxx yyzz00 +# where 0D happens to be the battery register number +# xx is the battery charge +# yy, zz ? +<< ( 0.001) [10 02 8100 000000] '\x10\x02\x81\x00\x00\x00\x00' +>> ( 1.132) [10 02 8100 100000] '\x10\x02\x81\x00\x10\x00\x00' + +# smooth scroll - possible values +# - 00 (off) +# - 02 ?, apparently off as well, default value at power-on +# - 0x40 (on) +<< ( 2.005) [10 02 8101 000000] '\x10\x02\x81\x01\x00\x00\x00' +>> ( 2.052) [10 02 8101 020000] '\x10\x02\x81\x01\x02\x00\x00' + +# battery status: percentage full, ?, ? +<< ( 14.835) [10 02 810D 000000] '\x10\x02\x81\r\x00\x00\x00' +>> ( 14.847) [10 02 810D 644734] '\x10\x02\x81\rdG4' + +# accepts mask 0xF1 +# setting 0x10 turns off the movement events (but buttons still work) +<< ( 221.495) [10 02 81D0 000000] '\x10\x02\x81\xd0\x00\x00\x00' +>> ( 221.509) [10 02 81D0 000000] '\x10\x02\x81\xd0\x00\x00\x00' + +# appears to be read-only? +<< ( 223.527) [10 02 81D2 000000] '\x10\x02\x81\xd2\x00\x00\x00' +>> ( 223.540) [10 02 81D2 000003] '\x10\x02\x81\xd2\x00\x00\x03' + +# appears to be read-only? +<< ( 225.557) [10 02 81D4 000000] '\x10\x02\x81\xd4\x00\x00\x00' +>> ( 225.571) [10 02 81D4 000004] '\x10\x02\x81\xd4\x00\x00\x04' + +# read-only, 01-04 firmware info +<< ( 259.270) [10 02 81F1 000000] '\x10\x02\x81\xf1\x00\x00\x00' +>> ( 259.283) [10 02 8F81 F10300] '\x10\x02\x8f\x81\xf1\x03\x00' + +# writing 01 here will trigger an avalance of events, most likely +# raw input from the mouse; disable by writing 00 +<< ( 261.300) [10 02 81F3 000000] '\x10\x02\x81\xf3\x00\x00\x00' +>> ( 261.315) [10 02 81F3 000000] '\x10\x02\x81\xf3\x00\x00\x00' diff --git a/docs/devices/performance-mx.txt b/docs/devices/performance-mx.txt new file mode 100644 index 00000000..d7c20090 --- /dev/null +++ b/docs/devices/performance-mx.txt @@ -0,0 +1,12 @@ + +short register 0x63: values 0x81 .. 0x8F + set DPI as 100 .. 1500 + + +short register 0x51: set leds + value: ab cd 00 + where a/b/c/d values are 1=off, 2=on, 3=flash + a = lower led + b = red led + c = upper led + d = middle led diff --git a/docs/logitech/4301_k750_solarkeyboard_lightandbattery.pdf b/docs/logitech/4301_k750_solarkeyboard_lightandbattery.pdf new file mode 100644 index 00000000..8bebb91d Binary files /dev/null and b/docs/logitech/4301_k750_solarkeyboard_lightandbattery.pdf differ diff --git a/docs/logitech/6110_touchmouseraw.pdf b/docs/logitech/6110_touchmouseraw.pdf new file mode 100644 index 00000000..209fbef9 Binary files /dev/null and b/docs/logitech/6110_touchmouseraw.pdf differ diff --git a/docs/logitech/hid10.txt b/docs/logitech/hid10.txt new file mode 100644 index 00000000..9472dd21 --- /dev/null +++ b/docs/logitech/hid10.txt @@ -0,0 +1,278 @@ + *Read short register command* + +10 ix 81 02 00 00 00 + +ix + +Index 0x0n: Device #n + + 0xFF: Transceiver + +*Response to Read command (success)* + +10 ix 81 02 00 r1 r2 + +ix + +Index (same as command) + + + + + +r1 + +Number of Connected Devices + + bit 0..7: Number of connected devices (receivers only) + +r2 + +Number of Remaining Pairing Slots + + bit 0..7: Number of remaining pairing slots + + + *Read long register command* + +10 ix 83 B5 nn 00 00 + +ix + +Index 0xFF: Transceiver + +nn + +0x20 Device 1 + +0x21 Device 2 + +0x22 Device 3 + +0x23 Device 4 + +0x24 Device 5 + +0x25 Device 6 + +0x26..0x2F Reserved for future extensions + +*Response to Read command (success)* + +11 ix 83 B5 nn r1 r2 r3 r4 r5 r6 r7 r8 r9 ra rb rc rd 00 00 + +ix + +Index (same as command) + +nn + + (same format as above) + +r1 + +Destination ID + +r2 + +Reserved + +r3 + +Wireless PID MSB + +r4 + +Wireless PID LSB + +r5 + +Reserved + +r6 + +Reserved + +r7 + +Device type + +0 undefined + +1 keyboard + +2 mouse + +3 numpad + +4 presenter + +5 reserved + +6 reserved + +7 remote control + +8 trackball + +9 touchpad + +a tablet + +b gamepad + +c joystick + +r8 + +Reserved + +r9 + +Reserved + + + + + + + +Alternatively, if enabled, you can also receive a notification when a new +device is paired: + +This message is sent by a receiver to the host SW to report a freshly +connected device. Enable the HID++ connection reporting by setting the +corresponding bit in register 0x00 via HID++ Set Register command. + +*Notification* + +10 ix 41 r0 r1 r2 r3 + +ix + +Index + +r0 + +bits [0..2] Protocol type + + 0x03 = eQUAD + + 0x04 = eQuad step 4 DJ + +bits [3..7] Reserved + +r1 + +Device Info + + bit0..3 = Device Type + + 0x00 = Unknown + + 0x01 = Keyboard + + 0x02 = Mouse + + 0x03 = Numpad + + 0x04 = Presenter + + + r2 + +Wireless PID LSB + +r3 + +Wireless PID MSB + +To enable the notifications: +Enable HID++ Notifications: + +This register defines a number of flags that allow the SW to turn on or off +individual spontaneous HID++ reports. Not setting a flag means default +reporting. See the table below for more details on each flag. + +For all bits: *0 = disabled* (default value at power-up), 1 = enabled. + + + +*Read short register command* + +10 ix 81 00 00 00 00 + +ix + +Index 0x0n: Device #n + + 0xFF: Transceiver + +*Response to Read command (success)* + +10 ix 81 00 r0 r1 r2 + +ix + +Index (same as command) + +r0 + +HID++ Reporting Flags (Devices) + + bit 0..3. reserved + + bit 4: Battery Status + + bit 5..7 reserved + +r1 + +HID++ Reporting Flags (Receiver) + + bit 0: Wireless notifications + + bit 1..7 reserved + +r2 + + + + +*Write short register command* + +10 ix 80 00 p0 p1 p2 + +ix + +Index 0x0n: Device #n + + 0xFF: Transceiver + +p0 + +HID++ Reporting Flags (Devices) + + (same format as above) + +p1 + +HID++ Reporting Flags (Receiver) + + (same format as above) + +p2 + + + *Response to Write command (success)* + +10 ix 80 00 zz zz zz + +ix + +Index (same as command) + +zz + +(don't care, recommended to return 0) + diff --git a/docs/logitech/logitech_hidpp10_specification_for_Unifying_Receivers.pdf b/docs/logitech/logitech_hidpp10_specification_for_Unifying_Receivers.pdf new file mode 100644 index 00000000..94f3df42 Binary files /dev/null and b/docs/logitech/logitech_hidpp10_specification_for_Unifying_Receivers.pdf differ diff --git a/docs/logitech/logitech_hidpp_2.0_specification_draft_2012-06-04.pdf b/docs/logitech/logitech_hidpp_2.0_specification_draft_2012-06-04.pdf new file mode 100644 index 00000000..1ee54640 Binary files /dev/null and b/docs/logitech/logitech_hidpp_2.0_specification_draft_2012-06-04.pdf differ