10

Is there a place where I can find documentation or an SDK about the Logitech Unifying Receiver?

I recently obtained a wireless mouse, which came with a Logitech Unifying Receiver (a small USB dongle that plugs into the computer and communicates with the mouse/other compatible devices (such as keyboards)).

I wanted to try writing an app for my smartphone that pretends to be a mouse and sends data to the receiver.

I was able to monitor the data from the USB bus by using usbmon, and could probably use that to hack something out, but wanted to know if I could find the info I need somewhere on the internet without having to derive it on my own.

I'm going to try using SL4A on Android, if that helps any.

Lekensteyn
  • 64,486
  • 22
  • 159
  • 192
Michael0x2a
  • 58,192
  • 30
  • 175
  • 224

3 Answers3

9

I have discovered some Logitech documents on a shared folder in Google Docs via this Chromium bug report. For convenience, I converted all doc(x) files to PDFs and put those on https://lekensteyn.nl/files/logitech/.

You will find Logitech HID++ 1.0 Specification for Unifying Receivers (pdf) very interesting, it describes the USB traffic (instead of the 2.4GHz wireless traffic as noted by Avery). My article Logitech Unifying for Linux: Reverse Engineering and unpairing tool documents a way to capture the traffic with usbmon and QEMU. It also includes tools to make the usbmon output prettier to read (for this protocol).

Lekensteyn
  • 64,486
  • 22
  • 159
  • 192
7

This is Avery, aka Tequals0. The USB dongle is a USB HID mouse/keyboard device, so all that traffic that you are seeing is basically generic HID traffic- if you want to pair your phone to your dongle, you will have to emulate the wireless traffic, not the USB traffic-that is generated by the dongle.

user91
  • 71
  • 1
  • 3
  • Yeah, so the accepted work or Tequals0 is not the thing that can help this task, right? I searched for this to know if I could create a custom wireless mouse using an Arduino and reuse a Logitech receiver USB dongle. I was looking for the wireless communication protocol between the mouse and the dongle. Is there any existing work on that, or should I give up (because I myself is not talented enough to be able to reverse-engineer a likey-encrypted wireless traffic). – Damn Vegetables Apr 24 '21 at 06:01
4

There is some info at Tequals0 blog, and AveryLouie also got some python tool operating with unifying

Alexander
  • 883
  • 7
  • 17
  • There have since been a (fully working) utility developed for providing the functionality. The source is open at https://lekensteyn.nl/logitech-unifying.html – Alexander May 17 '15 at 10:37
  • 1
    I don't get it. If I understood it correctly, OP seems to be emulating a wireless keyboard using an Android phone. then why did he monitor the communication between the USB receiver and the system? And isn't the work in your link is doing what Logitech's management software does, that is talking to the USB dongle? How does it help his case? He needs to send the wireless signal to the dongle. – Damn Vegetables Apr 24 '21 at 05:58