Make the most of your warranty. Register Your Product File a warranty claim. Having issues with your keyboard, mouse or Logitech Options on macOS. Wireless Solar Keyboard K Support. Questions about your Wireless Solar Keyboard K? We’ve got the answers, videos, downloads and information you .
|Genre:||Health and Food|
|Published (Last):||24 December 2018|
|PDF File Size:||11.63 Mb|
|ePub File Size:||6.3 Mb|
|Price:||Free* [*Free Regsitration Required]|
I’ve no idea what the GOOD part of the packet is about, but it’s present in every packet and it’s actually very handy to recognize such a packet. Interrupt packets, a packet send spontaneously; Controls packets, used for command and status operations.
As far as I know, there’s nothing in the USB HID protocol that handles this kind of functionality battery status, light meter… in a standard way. There’s a an URB of type interrupt sent each time you press any key with some data in it. When pressing the “light” button, an URB of type interrupt is sent by the keyboard to the computer; An URB control packet is sent by the computer to the keyboard in response; Regularly URB interrupt packets are sent just after. For the other bytes, they were always the same 0x11 0x2 0x9 0x10 at the beginning, 7 times 0x00 at the end.
In order to solve that, I sent a request for help on the linux-input mailing list. We’re going to write a small application using libusb.
All of this and more is well and better explained in the chapter 13 of Linux Device Drivers, Third Edition. Anyway, my plan was the following: There’s also several types of packets in the USB wire protocol, and at least two of them interest us there, they are:. Here’s the interesting packets that I noticed once I excluded the noise:. Here’s the interesting packets that I noticed once I excluded the noise: What the Logitech application does The Logitech application under Windows works that way: Now we’ve enough information to build our own very basic solar application.
It’s an USB receiver that can be attached up to 6 differents devices mouse, keyboards…. At this point, just launching the application does a bunch of USB traffic.
To sniff what happens on the USB, you need to load the usbmon Linux kernel module. What’s here interesting is the last part representing the data. This activity being quite energy consuming, i750 emptied the whole battery. USB stuff you need to know You don’t need to know much about USB to understand what I’ll write about below, but for the sake of comprehensibility I’ll write a couple of things here before jumping in.
A device might contains one or several configurations. Interfaces are regrouped into a configuration. Found keyboard 0x0x24ec8e0 Charge: When pressed, a LED will light up on the keyboard: But sending this to the keyboard will trigger an interesting thing: Fortunately, it was easy to decode.
So the first task to accomplish is, unfortunately, to reverse engineer the program. What the packets mean The “go for the light meter” packet The packet sent from the computer to the keyboard is the following. There’s also several types of packets in the USB wire protocol, and at least two of them interest us there, they are: They’re in the 20 bytes leftover in the capture data part, indicated by Wireshark, at the end of the packet: Someone should write logitehc to get the battery status and light meter from Linux: Now you probably wonder where the data are in this.
This packets come in regularly 1 per second on the wire for some time once you sent the “go for the light meter” packet.
Logitech K750 keyboard and Unifying Receiver Linux support
This is the one sent by the keyboard to the host and that contains the data we want to retrieve. Lovitech I have actually no idea what they mean. Recently, a driver called hid-logitech-dj has been added to the Linux kernel. It has an incredible useful feature: How the keyboard works This keyboard, like many of the new wireless devices from Logitech, uses the Unifying interface. With all this, the next step was clear: Sniffed data Once everything was set-up, I ran my beloved Wireshark.
Pushing this same button while the application is running will makes the light meter activated: To be continued Unfortunately, this approach has at least one major drawback. Well, actually, you can’t decode them like that, unless you’re a freak or a Logitech engineer.
With this driver, each device attached to the receiver is recognized as one different device.
Logitech K keyboard and Unifying Receiver Linux support
Unfortunately, this approach has at least one major drawback. This opens a whole new world.
My problem is that there’s obviously no way to know the battery status from Linux, the provided application only working on Windows.