Re: [PATCH 0/2] HID: logitech-hidpp: fix Bolt hi-res wheel handling

From: Oleksandr Natalenko

Date: Sat Sep 26 2026 - 07:39:56 EST


Hello.

On sobota 26. září 2026 13:13:09, středoevropský letní čas Erik Håkansson wrote:
> On Thursday, 24 September 2026 23:57:05 Central European Summer Time Oleksandr
> Natalenko wrote:
>
> > No idea TBH. The mouse is this one:
> >
> > https://www.logitech.com/en-us/shop/p/mx-master-4
> >
> > I haven't seen proximity mentioned anywhere is specs. But I can try to sniff
> > for these events, just let me know how.
>
> Great, thanks, we can do some tshark capture then. That's what I did locally.
>
> 1. First, in Solaar, make sure diversion is off.
>
> 2. Then, find what bus and device your mouse is on:
>
> lsusb -d 046d:c548
>
> It should give an answer like this:
> Bus 005 Device 007: ID 046d:c548 Logitech, Inc. Logi Bolt Receiver
>
> 3. And from there you get bus=5 and device=7, so do a tshark capture:
> sudo tshark -i usbmon5 -Y 'usb.device_address == 7 && usb.urb_type == 0x43 &&
> usb.transfer_type == 0x01 && usb.data_len > 0' -x
>
> This should output ALL incoming data, i.e. including every little mouse
> movement, so it will be noisy.
> So try to keep the mouse stationary to minimize noise and try to only touch
> the thumbwheel. Both hovering your finger very close but not quite touching,
> then a single tap, and finally just holding your finger still on the wheel.
>
> I saw some information online though that the MX Master 4 supports touch, but
> not tap or proximity, so presumably we'll only get one of the three.

So, with this:

# modprobe usbmon

$ lsusb -d 046d:c548
Bus 001 Device 003: ID 046d:c548 Logitech, Inc. Logi Bolt Receiver

# tshark -i usbmon1 -Y 'usb.device_address == 3 && usb.urb_type == 0x43 && usb.transfer_type == 0x01 && usb.data_len > 0' -x

when diversion is off, I don't have anything when I interact with the thumbwheel (except when scrolling it, of course).

But when the diversion is on, there's some traffic. I'm not sure if it comes from touching, or the slightest movements of the thumbwheel are detected too, but I tried to be very careful.

This is touching:

0000 00 23 e7 90 c5 8d ff ff 43 01 83 03 01 00 2d 00 .#......C.....-.
0010 76 ae b7 6a 00 00 00 00 01 1a 0e 00 00 00 00 00 v..j............
0020 14 00 00 00 14 00 00 00 00 00 00 00 00 00 00 00 ................
0030 01 00 00 00 00 00 00 00 04 02 00 00 00 00 00 00 ................
0040 11 02 13 00 00 00 00 00 00 02 00 00 00 00 00 00 ................
0050 00 00 00 00 ....

This is untouching:

0000 00 23 e7 90 c5 8d ff ff 43 01 83 03 01 00 2d 00 .#......C.....-.
0010 79 ae b7 6a 00 00 00 00 5e c1 05 00 00 00 00 00 y..j....^.......
0020 14 00 00 00 14 00 00 00 00 00 00 00 00 00 00 00 ................
0030 01 00 00 00 00 00 00 00 04 02 00 00 00 00 00 00 ................
0040 11 02 13 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0050 00 00 00 00

> 4. Please also give me the output of:
> sudo lsusb -v -d 046d:c548 | grep -E 'bInterfaceNumber|bEndpointAddress'
> It should list the interfaces on the Bolt receiver, which should be the two
> native HID interfaces and the HID++ interface that I think is for devices with
> touchpads.

# lsusb -v -d 046d:c548 | grep -E 'bInterfaceNumber|bEndpointAddress'
bInterfaceNumber 0
bEndpointAddress 0x81 EP 1 IN
bInterfaceNumber 1
bEndpointAddress 0x82 EP 2 IN
bInterfaceNumber 2
bEndpointAddress 0x83 EP 3 IN
bInterfaceNumber 3
bEndpointAddress 0x84 EP 4 IN

Thanks.

> 5. If you want, you can try the same when the Solaar Divert is set to on as
> well, that would give confirmation that the mouse follows the protocol found
> online.
>
> If you get a lot of data that you don't want to send on the LKML you can just
> send it directly to me if you want :)

--
Oleksandr Natalenko, MSE

Attachment: signature.asc
Description: This is a digitally signed message part.