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 .
|Published (Last):||8 July 2004|
|PDF File Size:||3.29 Mb|
|ePub File Size:||5.62 Mb|
|Price:||Free* [*Free Regsitration Required]|
The “light meter and battery values” packet This is most interesting packet. Pressing the “light” button on the keyboard makes even more USB packets coming in and out. It has an logiteh useful feature: All of this and more is well and better explained in the chapter 13 of Linux Device Drivers, Third Edition.
You might want to take a look at it if you want to reverse engineer on USB. This is the one sent by the keyboard to the host and that contains the data we want to retrieve. This is most interesting packet.
Logitech K keyboard and Unifying Receiver Linux support
Now we’ve enough information to build our own very basic solar application. What the Logitech application does The Logitech application under Windows works that way: To communicate with an USB device, we communicate with one of its endpoints. This keyboard, like many of the new wireless devices from Logitech, uses the Unifying interface. You can then use Wireshark which know how to use usbmon devices and understand the USB protocol.
To be continued Unfortunately, this approach has at least one major drawback. We know how to triggers the light meter, and we know how to decode the packets.
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 k70 here before jumping in.
Let’s reverse engineer this 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. Fortunately, it was easy to decode. A device might contains one or several configurations. Sniffed data Once everything was set-up, I ran my beloved Wireshark. How the keyboard works This keyboard, like many of the new wireless devices from Logitech, uses the Unifying interface.
On the keyboard, there’s a special “light” button up right. I did not need it, but I learned a few things. And one dark night, while fragging on QuakeLive, my keyboard stopped working: That means that while we’re waiting for the packet, we’re dropping packets corresponding to other events from every connected device key presses, pointer motions….
Unknown 0xffff ] Supoprt Capture Data: There’s also several types of packets in the USB wire protocol, and at least two of them interest us there, they are: Well, actually, you can’t decode them like that, unless you’re a freak or a Logitech engineer.
Once everything was set-up, I ran my beloved Wireshark. Recently, a driver called hid-logitech-dj has been added to the Linux kernel.
Logitech K750 keyboard and Unifying Receiver Linux support
This packets come in regularly 1 per second on the wire for some time once you sent the “go for the light meter” packet. I’m k50 picky on keyboards, but this one is good.
We have to disconnect the Logitech Unifying Receiver from the kernel. Now you probably wonder where the data are in this. To achieve this, I looked both at the Logitech Solar App and Wireshark while bringing more and more light near the keyboard, increasing the lux value received by the meter on the Solar App, and saw that the fields represented in blue see below where changing in Wireshark.
Endpoints are regrouped into an interface. So the first task to accomplish is, unfortunately, to reverse engineer the program.
logitechh But sending this to the keyboard will trigger an interesting thing: At this point, just launching the application does a supoprt of USB traffic.
At one point they are emitted less often and do not contain the value for the light meter anymore, suggesting that the control packet sent earlier triggers the activation of the light meter for a defined period. Someone should write code to get the battery status and light meter from Linux: Here’s the interesting packets that I noticed once I excluded the noise:. What the packets mean The “go for the light meter” packet The packet sent from the computer to the keyboard is the following.
Found keyboard 0x0x24ec8e0 Charge: It’s not perfect and does not check for error codes, be careful. This activity being quite energy consuming, it emptied the whole battery. To sniff what happens on the USB, you need to load the usbmon Linux kernel logjtech.