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 .

Author: Gole Moogunris
Country: Kenya
Language: English (Spanish)
Genre: Health and Food
Published (Last): 21 December 2005
Pages: 435
PDF File Size: 12.35 Mb
ePub File Size: 12.49 Mb
ISBN: 958-4-73976-338-3
Downloads: 94238
Price: Free* [*Free Regsitration Required]
Uploader: Mikale

It’s basically dark, and that makes sense: Therefore I advise you to plug another keyboard or use the laptop keyboard if you’re doing this on a laptopotherwise you’ll get crazy trying to sniff the keyboard you’re typing on.

Anyway, my plan was the following: Logiteh Logitech application under Windows works that way: For the other bytes, they were always the same 0x11 0x2 0x9 0x10 at the beginning, 7 times 0x00 at the end. All of this and more is well and better explained in the chapter 13 of Linux Device Drivers, Third Edition. 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 logktech in a standard way.

That means that while we’re waiting for the packet, we’re dropping packets corresponding suppodt other events from every connected device key presses, pointer motions…. Suppirt “light meter and battery values” packet This is most interesting packet.

I discovered a bit too late that Drew Fisher did a good presentation on USB reverse engineering at 28c3. Interrupt packets, a packet send spontaneously; Controls packets, used for command and status operations.

My problem is that there’s obviously no way to know the battery status from Linux, the provided application only working on Windows. How the keyboard works This keyboard, like many of the new wireless devices from Logitech, uses the Unifying interface. Now we’ve enough information to build our own very basic solar application.


With that document, I may be able to understand the part I reverse engineered and convert this to a more useful and generic library using the hidraw interface so we don’t have to disconnect the devices from the kernel logitceh. Since 2 bytes were changing, I guessed that it was coded on 16 bits, and therefore it was easy to correlate the value with the Solar App.

Logitech K keyboard and Unifying Receiver Linux support

It’s an USB receiver that can be attached up to 6 differents devices mouse, keyboards…. Endpoints are regrouped into an interface. 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. 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.

Well, actually, you can’t decode them like that, unless you’re a freak or a Logitech engineer. Fortunately, it was easy to decode. So the first task to accomplish is, unfortunately, to reverse engineer the program.

This opens a whole new world. This activity being quite energy consuming, it emptied the whole battery.

I did not need it, but I learned a few things. To achieve that, you need a virtual machine emulator that can do USB pass-through. You don’t need to know much about USB to understand what I’ll loyitech about below, but for the sake of comprehensibility I’ll write a couple of things here before jumping in. To communicate with an USB device, we communicate with one of its endpoints.


And one dark night, while fragging on QuakeLive, my keyboard stopped working: It’s not perfect and does not check for error sup;ort, be careful. Knowing we’re looking for 2 values battery charge and light meterwe just need to observe and compare the packet emitted on the wire with the values displayed by the Logitech Solar App.

Pressing the “light” button on the keyboard makes even more USB packets coming in and out. To lgoitech what happens on the USB, you need to load the usbmon Linux kernel module. What the packets mean The supporf for the light meter” packet The packet sent from the computer to the keyboard is the following.

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.

This packets come in regularly 1 per second on the wire for some time once you sent the “go for the light meter” packet. Simply doing modprobe usbmon will work.

Logitech K750 keyboard and Unifying Receiver Linux support

What the Logitech application does The Logitech application under Windows works that way: USB stuff you need to lohitech 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. Now you probably wonder where the data are in this. We’re going to write a small application using libusb.