pwr-Solaar / Solaar

Linux device manager for Logitech devices
https://pwr-solaar.github.io/Solaar
GNU General Public License v2.0
5.55k stars 411 forks source link

K600 TV keyboard - changing settings does not persist #1102

Closed acornblue closed 3 years ago

acornblue commented 3 years ago

Use case: disable "zoom with 2 fingers" gesture Power cycling keyboard or using "easy switch" will revert settings.

Also Solaar does not "refresh" current state of settings. I've tried closing & opening Solaar but it doesn't seem to repoll settings from the keyboard.

Solaar v1.0.5

pfps commented 3 years ago

I assume that you are using Solaar to turn off this gesture. If so, Solaar should remember this and every time the keyboard connects Solaar should turn off the gesture. Devices forget their gesture settings when they power off so Solaar has to set them up every time a device connects.

I have a K400, which I think is quite similar. If I run Solaar as solaar -dd when I turn the keyboard off and on again I see lots of output, including the relevant part, which is:

12:27:49,244    DEBUG [ReceiverListener:hidraw1] logitech_receiver.settings: gesture2-gestures: apply {'1': True, '10': True, '2': True, '30': True, '34': False, '42': True, '43': True, '45': True, '64': False, '65': False, '67': False, '84': False} (<Device(1,404D,Wireless Touch Keyboard K400 Plus,132A9261)>)
12:27:49,244    DEBUG [ReceiverListener:hidraw1] logitech_receiver.settings: gesture2-gestures: settings read {'1': True, '10': True, '2': True, '30': True, '34': False, '42': True, '43': True, '45': True, '64': False, '65': False, '67': False, '84': False} from <Device(1,404D,Wireless Touch Keyboard K400 Plus,132A9261)>
12:27:49,245    DEBUG [ReceiverListener:hidraw1] logitech_receiver.settings: gesture2-gestures: settings write {'1': True, '10': True, '2': True, '30': True, '34': False, '42': True, '43': True, '45': True, '64': False, '65': False, '67': False, '84': False} to <Device(1,404D,Wireless Touch Keyboard K400 Plus,132A9261)>
12:27:49,245    DEBUG [ReceiverListener:hidraw1] logitech_receiver.settings: gesture2-gestures: settings prepare map write({'1': True, '10': True, '2': True, '30': True, '34': False, '42': True, '43': True, '45': True, '64': False, '65': False, '67': False, '84': False}) => [b'\x00\x01\xff\x7f', b'\x01\x01\x0f\x00']
12:27:49,245    DEBUG [ReceiverListener:hidraw1] logitech_receiver.base: (22) <= w[11 01 0D29 0001FF7F000000000000000000000000]
12:27:49,260    DEBUG [ReceiverListener:hidraw1] logitech_receiver.base: (22) => r[11 01 0D29 0001FF7F000000000000000000000000]
12:27:49,260    DEBUG [ReceiverListener:hidraw1] logitech_receiver.base: (22) <= w[11 01 0D2C 01010F00000000000000000000000000]
12:27:49,276    DEBUG [ReceiverListener:hidraw1] logitech_receiver.base: (22) => r[11 01 0D2C 01010F00000000000000000000000000]

The two-finger zoom (stateless) is number 84, which is the 11th gesture (out of 12) for this keyboard. Solaar is remembering that this was set to False. Solaar is setting gestures 1 through 7 to true and 8 to false (the first write, the FF7F) and gestures 9 through 12 false (the second write, the 0F00). You should be seeing something similar.

If you don't, run Solaar as solaar -dd, turn your keyboard off and on, and post the lines that you see that correspond to the lines above.

acornblue commented 3 years ago

Hoho! Thanks for responding. Looks like its working correctly when using the unifying reciever. However, when I connect via bluetooth, it does not apply the saved settings when reconnecting...


01:57:33,098    DEBUG [AsyncUI] logitech_receiver.settings: change-host: settings read NamedInt(1, '2:raspberrypi') from <Device(0,B353,Keyboard K600 TV,?)>
01:57:33,108    DEBUG [AsyncUI] logitech_receiver.settings: gesture2-gestures: settings read {'1': True, '10': True, '2': True, '30': True, '34': False, '4': True, '42': True, '43': True, '45': False, '5': True, '84': False} from <Device(0,B353,Keyboard K600 TV,?)>
01:57:33,116    DEBUG [AsyncUI] logitech_receiver.settings: gesture2-params: settings read {'4': {'scale': 256}} from <Device(0,B353,Keyboard K600 TV,?)>
01:57:33,126    DEBUG [MainThread] solaar.ui: status changed: <Device(0,B353,Keyboard K600 TV,?)> (NONE) None
pfps commented 3 years ago

It is possible that the keyboard presents a different set of features when connected via bluetooth. To check, please run solaar show when the keyboard is connected via bluetooth. Also run when connected via the receiver for comparison.

Why am I guessing this? I've heard that it is possible.

If solaar show doesn't show any differences, then we'll have to dig deeper. I'll need the full output with -dd when connecting via bluetooth.

pfps commented 3 years ago

Also useful will be the contents of ~/.config/solaar/config.json

acornblue commented 3 years ago

{
  "4078:1C2C0D9F": {
    "_modelId": "B35340780000",
    "_name": "Keyboard K600 TV",
    "_sensitive": {
      "gesture2-gestures": true
    },
    "_unitId": "12B05578",
    "disable-keyboard-keys": {
      "1": false,
      "16": false,
      "8": false
    },
    "divert-keys": {
      "183": 0,
      "186": 0,
      "189": 0,
      "190": 0,
      "199": 0,
      "200": 0,
      "209": 0,
      "210": 0,
      "211": 0,
      "212": 0,
      "213": 0,
      "214": 0,
      "228": 0,
      "229": 0,
      "230": 0,
      "231": 0,
      "232": 0,
      "233": 0
    },
    "fn-swap": true,
    "gesture2-gestures": {
      "1": true,
      "10": true,
      "2": true,
      "30": true,
      "34": false,
      "4": true,
      "42": true,
      "43": true,
      "45": false,
      "5": true,
      "84": false
    },
    "gesture2-params": {
      "4": {
        "scale": 256
      }
    },
    "multiplatform": 3
  },
  "4078:877E97F1": {
    "_name": "Keyboard K600 TV"
  },
  "B35340780000:12B05578": {
    "_modelId": "B35340780000",
    "_name": "Keyboard K600 TV",
    "_sensitive": {
      "divert-keys": true,
      "fn-swap": true,
      "gesture2-gestures": true,
      "gesture2-params": false,
      "multiplatform": true
    },
    "_unitId": "12B05578",
    "disable-keyboard-keys": {
      "1": false,
      "16": false,
      "8": false
    },
    "divert-keys": {
      "183": 0,
      "186": 0,
      "189": 0,
      "190": 0,
      "199": 0,
      "200": 0,
      "209": 0,
      "210": 0,
      "211": 0,
      "212": 0,
      "213": 0,
      "214": 0,
      "228": 0,
      "229": 0,
      "230": 0,
      "231": 0,
      "232": 0,
      "233": 0
    },
    "fn-swap": true,
    "gesture2-gestures": {
      "1": true,
      "10": true,
      "2": true,
      "30": true,
      "34": false,
      "4": true,
      "42": true,
      "43": true,
      "45": false,
      "5": true,
      "84": false
    },
    "gesture2-params": {
      "4": {
        "scale": 256
      }
    },
    "multiplatform": "3"
  },
  "_version": "1.0.5"
}
acornblue commented 3 years ago

solaar_show_bt.log solaar_show_ur.log

pfps commented 3 years ago

I see one problem already, which might be causing the problem you noticed. There are three entries in config.json that appear to be for your keyboard. That's not right, and something that should be addressed.

pfps commented 3 years ago

As you can see, there are differences in the output of solaar show (33 vs 36 features), but nothing that should affect gestures.

Here is one thing that could be involved. You appear to be connecting to two different computers. What might be happening is that you changed the gesture on one computer but not on another. The two copies of Solaar each have different remembered settings. So when you connect to one computer the gesture is off but when you connect to the other the gesture is on.

To check, look at ~/.config/solaar/config.json on both computers and see what the value for"84" is under gestures2-gestures. If they are different, then this is your problem and you need to change the gesture on both computers. I'm going to update the Solaar documentation to discuss this.

acornblue commented 3 years ago

Its actually just 1 computer. bt paired to easyswitch 2 unified receiver paired to easyswitch 1

I just tried deleting the config.json & tested again. The new config.json has only 1 config (bt). Issue still exist. I disable zoom with 2 fingers. Verified that it is off. Turn off the keyboard, wait a few seconds & turned it back on. It still does not re-apply saved settings.

acornblue commented 3 years ago

I diffed the 2 output of solaar show the gesture 2 are the exactly the same... I notice the bt interface has no serial no...

diff

pfps commented 3 years ago

OK, I'm seeing similar bad behaviour on my machine. I'm not sure what the underlying problem is. I'll get back to you when I know more.

acornblue commented 3 years ago

Thanks looking into this & your patience. I haven't dabbled with programming tools in so long.

pfps commented 3 years ago

There was a bug that occurs when Solaar is started up with a device that is paired with a receiver but not connected to it. When the device becomes active through the receiver the saved configuration might not be associated with the device because the check to see if this is necessary can be masked by incorrect logic. I fixed this bug.

There also might be a problem that some devices are slow in responding to requests and thus don't provide enough information when their configuration is being searched for. I'm still investigating this problem.

The code that searches for saved configurations should be improved at bit.

I created a PR with the first fix and some debugging print statements. Please run PR #1105 in a way that you can capture its output. If the problem persists, post the output here.

To download and work with Solar

git clone https://github.com/pwr-Solaar/Solaar.git
cd Solaar

Run Solaar as bin/solaar from this directory.

To run PR #1105, first clone Solaar if you have not already done so and cd to the clone directory. The first time you download the pull request, fetch it into a new branch and checkout that branch, as in:

git fetch origin pull/1105/head:pull_1105
git checkout pull_1105

To download a new version of the pull request, fetch it and then set your pull branch to the new fetch, as in:

git checkout pull_1105
git fetch origin pull/1105/head
git reset --hard FETCH_HEAD
pfps commented 3 years ago

One thing you should do is to clean up ~/.config/solaar/config.json

The easiest way to clean up is to just remove the file, but you will loose your changed settings. Alternatively, you could remove extra entries. Do this while Solaar is not running.

acornblue commented 3 years ago

I made sure solaar was not running & followed your instructions. Issue still exist. I did notice that if I quit & restart solaar it does apply save settings. Just need to trigger when powercycling the keyboard.

Note: timestamp 13:44:15,496 is when I turned the keyboard back on. I also waited a few minutes hoping that the code was laggy...

``` 13:42:41,515 INFO [MainThread] root: language en_US (UTF-8), translations path None 13:42:42,058 DEBUG [MainThread] solaar.ui.tray: using StatusIcon 13:42:42,104 INFO [MainThread] solaar.upower: connected to system dbus, watching for suspend/resume events 13:42:42,284 DEBUG [MainThread] solaar.ui: startup registered=True, remote=False 13:42:42,287 DEBUG [AsyncUI] solaar.tasks: started 13:42:42,288 INFO [MainThread] solaar.ui.notify: starting desktop notifications 13:42:42,555 DEBUG [MainThread] solaar.ui.icons: sys.path[0] = /home/pi/Solaar/lib 13:42:42,556 DEBUG [MainThread] solaar.ui.icons: looking for icons in /home/pi/Solaar/icons 13:42:42,557 DEBUG [MainThread] solaar.ui.icons: looking for icons in /home/pi/Solaar/share/solaar/icons 13:42:42,566 DEBUG [MainThread] solaar.ui.icons: looking for icons in /home/pi/.local/share/solaar/icons 13:42:42,571 DEBUG [MainThread] solaar.ui.icons: looking for icons in /home/pi/Solaar/lib/share/solaar/icons 13:42:42,572 DEBUG [MainThread] solaar.ui.icons: looking for icons in /home/pi/Solaar/share/solaar/icons 13:42:42,572 DEBUG [MainThread] solaar.ui.icons: looking for icons in /usr/share/fkms/solaar/icons 13:42:42,572 DEBUG [MainThread] solaar.ui.icons: looking for icons in /usr/local/share/solaar/icons 13:42:42,572 DEBUG [MainThread] solaar.ui.icons: looking for icons in /usr/share/raspi-ui-overrides/solaar/icons 13:42:42,572 DEBUG [MainThread] solaar.ui.icons: looking for icons in /usr/share/solaar/icons 13:42:42,573 DEBUG [MainThread] solaar.ui.icons: looking for icons in /usr/share/gdm/solaar/icons 13:42:42,573 DEBUG [MainThread] solaar.ui.icons: looking for icons in /var/lib/menu-xdg/solaar/icons 13:42:42,573 DEBUG [MainThread] solaar.ui.icons: icon theme paths: ['/home/pi/Solaar/share/solaar/icons', '/home/pi/.local/share/solaar/icons', '/home/pi/Solaar/share/solaar/icons', '/home/pi/.local/share/icons', '/home/pi/.icons', '/usr/share/fkms/icons', '/usr/local/share/icons', '/usr/share/raspi-ui-overrides/icons', '/usr/share/icons', '/usr/share/gdm/icons', '/var/lib/menu-xdg/icons', '/usr/share/fkms/pixmaps', '/usr/local/share/pixmaps', '/usr/share/raspi-ui-overrides/pixmaps', '/usr/share/pixmaps', '/usr/share/gdm/pixmaps', '/var/lib/menu-xdg/pixmaps'] 13:42:42,846 INFO [MainThread] solaar.listener: starting receiver listening threads 13:42:42,884 INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw0', vendor_id='046D', product_id='B353', serial='D7:CA:EA:04:46:23', release=None, manufacturer=None, product=None, interface=None, driver='hid-generic', bus_id=5, isDevice=True) 13:42:42,885 DEBUG [MainThread] logitech_receiver.base: (16) pinging device 0 13:42:42,886 DEBUG [MainThread] logitech_receiver.base: (16) <= w[11 00 001E 0000CA00000000000000000000000000] 13:42:43,282 DEBUG [MainThread] logitech_receiver.base: (16) => r[11 00 001E 0405CA00000000000000000000000000] 13:42:43,282 DEBUG [MainThread] logitech_receiver.base: (16) <= w[11 00 000C 00010000000000000000000000000000] 13:42:43,304 DEBUG [MainThread] logitech_receiver.base: (16) => r[11 00 000C 01000100000000000000000000000000] 13:42:43,305 DEBUG [MainThread] logitech_receiver.base: (16) <= w[11 00 010E 00000000000000000000000000000000] 13:42:43,327 DEBUG [MainThread] logitech_receiver.base: (16) => r[11 00 010E 20000000000000000000000000000000] 13:42:43,327 DEBUG [MainThread] logitech_receiver.base: (16) <= w[11 00 000D 00050000000000000000000000000000] 13:42:43,349 DEBUG [MainThread] logitech_receiver.base: (16) => r[11 00 000D 03000000000000000000000000000000] 13:42:43,350 DEBUG [MainThread] logitech_receiver.base: (16) <= w[11 00 032E 00000000000000000000000000000000] 13:42:43,372 DEBUG [MainThread] logitech_receiver.base: (16) => r[11 00 032E 00000000000000000000000000000000] 13:42:43,373 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) <= w[11 00 030B 00000000000000000000000000000000] 13:42:43,394 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 030B 10000000000000000000000000000000] 13:42:43,395 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) <= w[11 00 0319 00000000000000000000000000000000] 13:42:43,417 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0319 4B6579626F617264204B363030205456] 13:42:43,372 INFO [ReceiverListener:hidraw0] logitech_receiver.listener: started with (16) 13:42:43,374 DEBUG [MainThread] solaar.configuration: load => {'B35340780000:12B05578': {'_modelId': 'B35340780000', '_name': 'Keyboard K600 TV', '_unitId': '12B05578', 'disable-keyboard-keys': {'1': False, '16': False, '8': False}, 'divert-keys': {'183': 0, '186': 0, '189': 0, '190': 0, '199': 0, '200': 0, '209': 0, '210': 0, '211': 0, '212': 0, '213': 0, '214': 0, '228': 0, '229': 0, '230': 0, '231': 0, '232': 0, '233': 0}, 'fn-swap': True, 'gesture2-gestures': {'1': True, '10': True, '2': True, '30': True, '34': False, '4': True, '42': True, '43': True, '45': False, '5': True, '84': True}, 'gesture2-params': {'4': {'scale': 256}}, 'multiplatform': 3}, '_version': '1.0.5'} 13:42:43,417 INFO [ReceiverListener:hidraw0] solaar.listener: : notifications listener has started (16) 13:42:43,418 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) <= w[11 00 032B 00000000000000000000000000000000] 13:42:43,419 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000A 00030000000000000000000000000000] 13:42:43,439 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032B 00000000000000000000000000000000] 13:42:43,440 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032B 00000000000000000000000000000000] 13:42:43,440 INFO [ReceiverListener:hidraw0] solaar.listener: status_changed : paired online, {'NOTIFICATION FLAGS': False} (0) 13:42:43,440 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) <= w[11 00 0329 00000000000000000000000000000000] 13:42:43,462 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000A 02000200000000000000000000000000] 13:42:43,462 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000A 02000200000000000000000000000000] 13:42:43,463 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 020A 00000000000000000000000000000000] 13:42:43,484 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0329 00000000000000000000000000000000] 13:42:43,485 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0329 00000000000000000000000000000000] 13:42:43,507 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 020A 0412B055780006B35340780000000000] 13:42:43,507 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 020A 0412B055780006B35340780000000000] 13:42:43,509 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0009 21200000000000000000000000000000] 13:42:43,529 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0009 00000000000000000000000000000000] 13:42:43,530 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0009 00000000000000000000000000000000] 13:42:43,532 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0009 21300000000000000000000000000000] 13:42:43,552 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0009 00000000000000000000000000000000] 13:42:43,552 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0009 00000000000000000000000000000000] 13:42:43,553 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000D 21210000000000000000000000000000] 13:42:43,574 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000D 00000000000000000000000000000000] 13:42:43,575 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000D 00000000000000000000000000000000] 13:42:43,576 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000F 21100000000000000000000000000000] 13:42:43,597 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000F 00000000000000000000000000000000] 13:42:43,597 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000F 00000000000000000000000000000000] 13:42:43,598 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0009 21500000000000000000000000000000] 13:42:43,619 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0009 00000000000000000000000000000000] 13:42:43,620 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0009 00000000000000000000000000000000] 13:42:43,620 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0009 22010000000000000000000000000000] 13:42:43,642 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0009 00000000000000000000000000000000] 13:42:43,643 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0009 00000000000000000000000000000000] 13:42:43,644 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000D 1B040000000000000000000000000000] 13:42:43,664 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000D 08000400000000000000000000000000] 13:42:43,665 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000D 08000400000000000000000000000000] 13:42:43,666 DEBUG [MainThread] logitech_receiver.settings_templates: check_feature[REPROG CONTROLS V4] detected None 13:42:43,666 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000F 22050000000000000000000000000000] 13:42:43,687 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000F 00000000000000000000000000000000] 13:42:43,687 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000F 00000000000000000000000000000000] 13:42:43,688 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0008 19820000000000000000000000000000] 13:42:43,709 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0008 00000000000000000000000000000000] 13:42:43,710 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0008 00000000000000000000000000000000] 13:42:43,710 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000E 40A00000000000000000000000000000] 13:42:43,743 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000E 00000000000000000000000000000000] 13:42:43,744 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000E 00000000000000000000000000000000] 13:42:43,744 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000B 40A20000000000000000000000000000] 13:42:43,766 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000B 0D000000000000000000000000000000] 13:42:43,766 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000B 0D000000000000000000000000000000] 13:42:43,767 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0008 00070000000000000000000000000000] 13:42:43,788 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0008 06000000000000000000000000000000] 13:42:43,789 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 060C 00000000000000000000000000000000] 13:42:43,811 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 060C 10121000000000000000000000000000] 13:42:43,811 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 061B 00000000000000000000000000000000] 13:42:43,833 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 061B 004B6579626F617264204B3630302054] 13:42:43,834 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 061A 0F000000000000000000000000000000] 13:42:43,856 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 061A 0F560000000000000000000000000000] 13:42:43,766 DEBUG [MainThread] logitech_receiver.settings_templates: check_feature[NEW FN INVERSION] detected 13:42:43,788 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0008 06000000000000000000000000000000] 13:42:43,857 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0009 1B000000000000000000000000000000] 13:42:43,857 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 060C 10121000000000000000000000000000] 13:42:43,858 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 061B 004B6579626F617264204B3630302054] 13:42:43,859 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 061A 0F560000000000000000000000000000] 13:42:43,878 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0009 00000000000000000000000000000000] 13:42:43,879 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0009 00000000000000000000000000000000] 13:42:43,880 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0808 00000000000000000000000000000000] 13:42:43,901 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0808 13000000000000000000000000000000] 13:42:43,901 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0808 13000000000000000000000000000000] 13:42:43,902 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081E 00000000000000000000000000000000] 13:42:43,923 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081E 00D100AE6A0100000000000000000000] 13:42:43,924 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081E 00D100AE6A0100000000000000000000] 13:42:43,924 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081B 01000000000000000000000000000000] 13:42:43,946 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081B 00D200AF6A0200000000000000000000] 13:42:43,947 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081B 00D200AF6A0200000000000000000000] 13:42:43,948 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081A 02000000000000000000000000000000] 13:42:43,968 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081A 00D300B06A0300000000000000000000] 13:42:43,969 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081A 00D300B06A0300000000000000000000] 13:42:43,969 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081A 03000000000000000000000000000000] 13:42:43,991 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081A 00D600B37A0400000000000000000000] 13:42:43,992 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081A 00D600B37A0400000000000000000000] 13:42:43,992 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0818 04000000000000000000000000000000] 13:42:44,013 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0818 00C700A37A0500000000000000000000] 13:42:44,014 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0818 00C700A37A0500000000000000000000] 13:42:44,014 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081B 05000000000000000000000000000000] 13:42:44,036 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081B 00C800A47A0600000000000000000000] 13:42:44,036 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081B 00C800A47A0600000000000000000000] 13:42:44,036 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0819 06000000000000000000000000000000] 13:42:44,058 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0819 00E400067A0700000000000000000000] 13:42:44,059 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0819 00E400067A0700000000000000000000] 13:42:44,060 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081B 07000000000000000000000000000000] 13:42:44,081 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081B 00E500047A0800000000000000000000] 13:42:44,081 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081B 00E500047A0800000000000000000000] 13:42:44,082 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081E 08000000000000000000000000000000] 13:42:44,103 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081E 00E600057A0900000000000000000000] 13:42:44,104 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081E 00E600057A0900000000000000000000] 13:42:44,104 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081E 09000000000000000000000000000000] 13:42:44,126 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081E 00E700037A0A00000000000000000000] 13:42:44,126 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081E 00E700037A0A00000000000000000000] 13:42:44,127 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081A 0A000000000000000000000000000000] 13:42:44,149 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081A 00E800027A0B00000000000000000000] 13:42:44,149 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081A 00E800027A0B00000000000000000000] 13:42:44,150 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0819 0B000000000000000000000000000000] 13:42:44,171 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0819 00E900017A0C00000000000000000000] 13:42:44,171 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0819 00E900017A0C00000000000000000000] 13:42:44,172 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081E 0C000000000000000000000000000000] 13:42:44,193 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081E 00BE009A7A0000000000000000000000] 13:42:44,194 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081E 00BE009A7A0000000000000000000000] 13:42:44,195 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0818 0D000000000000000000000000000000] 13:42:44,216 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0818 00D500B2740000000000000000000000] 13:42:44,216 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0818 00D500B2740000000000000000000000] 13:42:44,217 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081B 0E000000000000000000000000000000] 13:42:44,238 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081B 00BD0099740000000000000000000000] 13:42:44,239 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081B 00BD0099740000000000000000000000] 13:42:44,239 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081B 0F000000000000000000000000000000] 13:42:44,261 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081B 00BA0096740000000000000000000000] 13:42:44,261 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081B 00BA0096740000000000000000000000] 13:42:44,262 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0819 10000000000000000000000000000000] 13:42:44,283 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0819 00D400B1740000000000000000000000] 13:42:44,284 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0819 00D400B1740000000000000000000000] 13:42:44,285 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 081D 11000000000000000000000000000000] 13:42:44,306 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 081D 00B70092200000000000000000000000] 13:42:44,306 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 081D 00B70092200000000000000000000000] 13:42:44,306 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0818 12000000000000000000000000000000] 13:42:44,328 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0818 00340062040000000000000000000000] 13:42:44,328 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0818 00340062040000000000000000000000] 13:42:44,329 DEBUG [MainThread] logitech_receiver.settings_templates: check_feature[REPROG CONTROLS V4] detected None 13:42:44,330 DEBUG [MainThread] logitech_receiver.settings_templates: check_feature[REPROG CONTROLS V4] detected 13:42:44,331 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000D 45210000000000000000000000000000] 13:42:44,351 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000D 10000000000000000000000000000000] 13:42:44,351 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000D 10000000000000000000000000000000] 13:42:44,352 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 1008 00000000000000000000000000000000] 13:42:44,373 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 1008 19000000000000000000000000000000] 13:42:44,374 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 1008 19000000000000000000000000000000] 13:42:44,374 DEBUG [MainThread] logitech_receiver.settings_templates: check_feature[KEYBOARD DISABLE KEYS] detected 13:42:44,375 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000F 80600000000000000000000000000000] 13:42:44,396 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000F 00000000000000000000000000000000] 13:42:44,396 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000F 00000000000000000000000000000000] 13:42:44,396 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000E 46000000000000000000000000000000] 13:42:44,418 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000E 00000000000000000000000000000000] 13:42:44,418 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000E 00000000000000000000000000000000] 13:42:44,419 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000D 80100000000000000000000000000000] 13:42:44,441 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000D 00000000000000000000000000000000] 13:42:44,442 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000D 00000000000000000000000000000000] 13:42:44,443 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0008 45310000000000000000000000000000] 13:42:44,463 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0008 11000100000000000000000000000000] 13:42:44,463 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0008 11000100000000000000000000000000] 13:42:44,464 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 1108 00000000000000000000000000000000] 13:42:44,485 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 1108 03000707030103000000000000000000] 13:42:44,486 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 1108 03000707030103000000000000000000] 13:42:44,486 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 111B 00000000000000000000000000000000] 13:42:44,508 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 111B 00060001000000000000000000000000] 13:42:44,509 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 111B 00060001000000000000000000000000] 13:42:44,509 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 1118 01000000000000000000000000000000] 13:42:44,531 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 1118 01058000000000000000000000000000] 13:42:44,531 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 1118 01058000000000000000000000000000] 13:42:44,531 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 111A 02000000000000000000000000000000] 13:42:44,553 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 111A 02041000000000000000000000000000] 13:42:44,553 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 111A 02041000000000000000000000000000] 13:42:44,554 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 1119 03000000000000000000000000000000] 13:42:44,576 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 1119 03000100000000000000000000000000] 13:42:44,576 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 1119 03000100000000000000000000000000] 13:42:44,576 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 1118 04000000000000000000000000000000] 13:42:44,598 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 1118 04012000000000000000000000000000] 13:42:44,598 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 1118 04012000000000000000000000000000] 13:42:44,599 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 111D 05000000000000000000000000000000] 13:42:44,621 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 111D 05024000000000000000000000000000] 13:42:44,621 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 111D 05024000000000000000000000000000] 13:42:44,621 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 1118 06000000000000000000000000000000] 13:42:44,643 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 1118 06030800000000000000000000000000] 13:42:44,644 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 1118 06030800000000000000000000000000] 13:42:44,645 DEBUG [MainThread] logitech_receiver.settings_templates: check_feature[MULTIPLATFORM] detected 13:42:44,645 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0008 18140000000000000000000000000000] 13:42:44,666 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0008 0B000100000000000000000000000000] 13:42:44,666 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0008 0B000100000000000000000000000000] 13:42:44,667 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0B0C 00000000000000000000000000000000] 13:42:44,688 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0B0C 03010000000000000000000000000000] 13:42:44,688 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0B0C 03010000000000000000000000000000] 13:42:44,689 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000F 18150000000000000000000000000000] 13:42:44,711 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000F 0C000100000000000000000000000000] 13:42:44,711 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000F 0C000100000000000000000000000000] 13:42:44,711 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0C0A 00000000000000000000000000000000] 13:42:44,733 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0C0A 13090301000000000000000000000000] 13:42:44,733 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0C0A 13090301000000000000000000000000] 13:42:44,734 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0C1A 00000000000000000000000000000000] 13:42:44,755 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0C1A 00010100001800000000000000000000] 13:42:44,756 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0C1A 00010100001800000000000000000000] 13:42:44,756 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0C1A 01000000000000000000000000000000] 13:42:44,778 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0C1A 010104000B1800000000000000000000] 13:42:44,778 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0C1A 010104000B1800000000000000000000] 13:42:44,779 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0C3C 01000000000000000000000000000000] 13:42:44,801 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0C3C 01007261737062657272797069000000] 13:42:44,801 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0C3C 01007261737062657272797069000000] 13:42:44,802 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0C1D 02000000000000000000000000000000] 13:42:44,834 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0C1D 02010400071800000000000000000000] 13:42:44,835 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0C1D 02010400071800000000000000000000] 13:42:44,835 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0C3F 02000000000000000000000000000000] 13:42:44,857 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0C3F 0200506978656C203300000000000000] 13:42:44,857 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0C3F 0200506978656C203300000000000000] 13:42:44,858 DEBUG [MainThread] logitech_receiver.settings_templates: check_feature[CHANGE HOST] detected 13:42:44,858 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 000A 65010000000000000000000000000000] 13:42:44,879 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 000A 13000000000000000000000000000000] 13:42:44,880 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 000A 13000000000000000000000000000000] 13:42:44,880 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 130C 00000000000000000000000000000000] 13:42:44,902 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 130C 4203410141020400320480148C21A301] 13:42:44,902 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 130C 4203410141020400320480148C21A301] 13:42:44,903 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 130C 00080000000000000000000000000000] 13:42:44,924 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 130C A302A304A305A11EA30A4105822C852D] 13:42:44,925 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 130C A302A304A305A11EA30A4105822C852D] 13:42:44,926 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 130E 00100000000000000000000000000000] 13:42:44,947 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 130E AD2AAD2B4204AF549122825582640100] 13:42:44,947 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 130E AD2AAD2B4204AF549122825582640100] 13:42:44,948 DEBUG [MainThread] logitech_receiver.settings_templates: check_feature[GESTURE 2] detected 13:42:44,948 DEBUG [MainThread] logitech_receiver.settings_templates: check_feature[GESTURE 2] detected 13:42:44,948 INFO [MainThread] logitech_receiver.status: pushing device settings [, , , , , , ] 13:42:44,948 DEBUG [MainThread] logitech_receiver.settings: fn-swap: apply None () 13:42:44,949 DEBUG [MainThread] logitech_receiver.settings: fn-swap: settings read None from 13:42:44,949 DEBUG [MainThread] logitech_receiver.settings: fn-swap: settings write True to 13:42:44,949 DEBUG [MainThread] logitech_receiver.settings: BooleanValidator: prepare_write(True, None) => 1 13:42:44,949 DEBUG [MainThread] logitech_receiver.settings: fn-swap: settings prepare write(True) => 1 13:42:44,949 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0D1C 01000000000000000000000000000000] 13:42:44,969 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0D1C 01010000000000000000000000000000] 13:42:44,970 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0D1C 01010000000000000000000000000000] 13:42:44,970 DEBUG [MainThread] logitech_receiver.settings: divert-keys: apply None () 13:42:44,970 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings read None from 13:42:44,970 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings write {'183': 0, '186': 0, '189': 0, '190': 0, '199': 0, '200': 0, '209': 0, '210': 0, '211': 0, '212': 0, '213': 0, '214': 0, '228': 0, '229': 0, '230': 0, '231': 0, '232': 0, '233': 0} to 13:42:44,970 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(183,0) => b'\x02' 13:42:44,971 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083B 00B70200000000000000000000000000] 13:42:44,992 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083B 00B70200000000000000000000000000] 13:42:44,992 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083B 00B70200000000000000000000000000] 13:42:44,993 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(186,0) => b'\x02' 13:42:44,993 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083E 00BA0200000000000000000000000000] 13:42:45,014 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083E 00BA0200000000000000000000000000] 13:42:45,015 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083E 00BA0200000000000000000000000000] 13:42:45,015 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(189,0) => b'\x02' 13:42:45,016 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083E 00BD0200000000000000000000000000] 13:42:45,037 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083E 00BD0200000000000000000000000000] 13:42:45,037 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083E 00BD0200000000000000000000000000] 13:42:45,038 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(190,0) => b'\x02' 13:42:45,039 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083E 00BE0200000000000000000000000000] 13:42:45,060 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083E 00BE0200000000000000000000000000] 13:42:45,060 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083E 00BE0200000000000000000000000000] 13:42:45,061 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(199,0) => b'\x02' 13:42:45,061 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083B 00C70200000000000000000000000000] 13:42:45,082 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083B 00C70200000000000000000000000000] 13:42:45,083 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083B 00C70200000000000000000000000000] 13:42:45,083 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(200,0) => b'\x02' 13:42:45,084 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083C 00C80200000000000000000000000000] 13:42:45,104 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083C 00C80200000000000000000000000000] 13:42:45,105 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083C 00C80200000000000000000000000000] 13:42:45,106 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(209,0) => b'\x02' 13:42:45,106 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0839 00D10200000000000000000000000000] 13:42:45,127 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0839 00D10200000000000000000000000000] 13:42:45,127 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0839 00D10200000000000000000000000000] 13:42:45,128 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(210,0) => b'\x02' 13:42:45,128 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083A 00D20200000000000000000000000000] 13:42:45,150 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083A 00D20200000000000000000000000000] 13:42:45,150 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083A 00D20200000000000000000000000000] 13:42:45,151 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(211,0) => b'\x02' 13:42:45,151 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083D 00D30200000000000000000000000000] 13:42:45,172 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083D 00D30200000000000000000000000000] 13:42:45,172 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083D 00D30200000000000000000000000000] 13:42:45,173 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(212,0) => b'\x02' 13:42:45,174 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083E 00D40200000000000000000000000000] 13:42:45,194 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083E 00D40200000000000000000000000000] 13:42:45,195 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083E 00D40200000000000000000000000000] 13:42:45,195 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(213,0) => b'\x02' 13:42:45,196 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083B 00D50200000000000000000000000000] 13:42:45,217 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083B 00D50200000000000000000000000000] 13:42:45,217 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083B 00D50200000000000000000000000000] 13:42:45,218 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(214,0) => b'\x02' 13:42:45,219 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083F 00D60200000000000000000000000000] 13:42:45,240 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083F 00D60200000000000000000000000000] 13:42:45,240 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083F 00D60200000000000000000000000000] 13:42:45,241 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(228,0) => b'\x02' 13:42:45,242 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083B 00E40200000000000000000000000000] 13:42:45,262 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083B 00E40200000000000000000000000000] 13:42:45,262 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083B 00E40200000000000000000000000000] 13:42:45,263 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(229,0) => b'\x02' 13:42:45,263 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083B 00E50200000000000000000000000000] 13:42:45,284 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083B 00E50200000000000000000000000000] 13:42:45,285 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083B 00E50200000000000000000000000000] 13:42:45,286 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(230,0) => b'\x02' 13:42:45,286 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083E 00E60200000000000000000000000000] 13:42:45,307 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083E 00E60200000000000000000000000000] 13:42:45,307 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083E 00E60200000000000000000000000000] 13:42:45,308 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(231,0) => b'\x02' 13:42:45,309 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083F 00E70200000000000000000000000000] 13:42:45,329 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083F 00E70200000000000000000000000000] 13:42:45,330 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083F 00E70200000000000000000000000000] 13:42:45,330 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(232,0) => b'\x02' 13:42:45,331 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083E 00E80200000000000000000000000000] 13:42:45,352 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083E 00E80200000000000000000000000000] 13:42:45,352 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083E 00E80200000000000000000000000000] 13:42:45,353 DEBUG [MainThread] logitech_receiver.settings: divert-keys: settings prepare map write(233,0) => b'\x02' 13:42:45,354 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 083D 00E90200000000000000000000000000] 13:42:45,374 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 083D 00E90200000000000000000000000000] 13:42:45,375 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 083D 00E90200000000000000000000000000] 13:42:45,376 DEBUG [MainThread] logitech_receiver.settings: disable-keyboard-keys: apply None () 13:42:45,376 DEBUG [MainThread] logitech_receiver.settings: disable-keyboard-keys: settings read None from 13:42:45,377 DEBUG [MainThread] logitech_receiver.settings: disable-keyboard-keys: settings write {'1': False, '16': False, '8': False} to 13:42:45,377 DEBUG [MainThread] logitech_receiver.settings: disable-keyboard-keys: settings prepare map write({'1': False, '16': False, '8': False}) => b'\x00' 13:42:45,378 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 102F 00000000000000000000000000000000] 13:42:45,397 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 102F 00000000000000000000000000000000] 13:42:45,397 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 102F 00000000000000000000000000000000] 13:42:45,398 DEBUG [MainThread] logitech_receiver.settings: multiplatform: apply None () 13:42:45,398 DEBUG [MainThread] logitech_receiver.settings: multiplatform: settings read None from 13:42:45,398 DEBUG [MainThread] logitech_receiver.settings: multiplatform: settings write 3 to 13:42:45,398 DEBUG [MainThread] logitech_receiver.settings: multiplatform: settings prepare write(3) => b'\xff\x03' 13:42:45,399 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 1138 FF030000000000000000000000000000] 13:42:45,419 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 1138 01030000000000000000000000000000] 13:42:45,420 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 1138 01030000000000000000000000000000] 13:42:45,420 DEBUG [MainThread] logitech_receiver.settings: change-host: apply None () 13:42:45,421 DEBUG [MainThread] logitech_receiver.settings: change-host: settings read None from 13:42:45,421 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0B08 00000000000000000000000000000000] 13:42:45,442 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0B08 03010000000000000000000000000000] 13:42:45,442 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0B08 03010000000000000000000000000000] 13:42:45,443 DEBUG [MainThread] logitech_receiver.settings: gesture2-gestures: apply None () 13:42:45,443 DEBUG [MainThread] logitech_receiver.settings: gesture2-gestures: settings read None from 13:42:45,444 DEBUG [MainThread] logitech_receiver.settings: gesture2-gestures: settings write {'1': True, '10': True, '2': True, '30': True, '34': False, '4': True, '42': True, '43': True, '45': False, '5': True, '84': True} to 13:42:45,444 DEBUG [MainThread] logitech_receiver.settings: gesture2-gestures: settings prepare map write({'1': True, '10': True, '2': True, '30': True, '34': False, '4': True, '42': True, '43': True, '45': False, '5': True, '84': True}) => [b'\x00\x01\xff\xbf', b'\x01\x01\x07\x03'] 13:42:45,445 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 132B 0001FFBF000000000000000000000000] 13:42:45,464 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 132B 0001FFBF000000000000000000000000] 13:42:45,465 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 132B 0001FFBF000000000000000000000000] 13:42:45,465 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 1329 01010703000000000000000000000000] 13:42:45,487 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 1329 01010703000000000000000000000000] 13:42:45,488 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 1329 01010703000000000000000000000000] 13:42:45,488 DEBUG [MainThread] logitech_receiver.settings: gesture2-params: apply None () 13:42:45,489 DEBUG [MainThread] logitech_receiver.settings: gesture2-params: settings read None from 13:42:45,489 DEBUG [MainThread] logitech_receiver.settings: gesture2-params: settings write {'4': {'scale': 256}} to 13:42:45,489 DEBUG [MainThread] logitech_receiver.settings: gesture2-params: settings prepare map write(4,{'scale': 256}) => b'\x00\x01\x00\xff' 13:42:45,490 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 138F 000100FF000000000000000000000000] 13:42:45,509 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 138F 000100FF000000000000000000000000] 13:42:45,510 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0009 10000000000000000000000000000000] 13:42:45,511 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 138F 000100FF000000000000000000000000] 13:42:45,532 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0009 07000100000000000000000000000000] 13:42:45,532 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 070A 00000000000000000000000000000000] 13:42:45,533 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0009 07000100000000000000000000000000] 13:42:45,555 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 070A 32140000000000000000000000000000] 13:42:45,556 DEBUG [MainThread] logitech_receiver.hidpp20: device 0 battery 50% charged, next 20%, status discharging 13:42:45,556 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 070A 32140000000000000000000000000000] 13:42:45,557 DEBUG [MainThread] logitech_receiver.status: : battery 50, discharging 13:42:45,559 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032E 00000000000000000000000000000000] 13:42:45,577 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032E 00000000000000000000000000000000] 13:42:45,578 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032E 00000000000000000000000000000000] 13:42:45,578 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032E 00000000000000000000000000000000] 13:42:45,599 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032E 00000000000000000000000000000000] 13:42:45,600 INFO [MainThread] solaar.listener: status_changed : paired online, {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 13:42:45,600 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0329 00000000000000000000000000000000] 13:42:45,601 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032E 00000000000000000000000000000000] 13:42:45,622 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0329 00000000000000000000000000000000] 13:42:45,623 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032B 00000000000000000000000000000000] 13:42:45,624 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0329 00000000000000000000000000000000] 13:42:45,644 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032B 00000000000000000000000000000000] 13:42:45,645 INFO [MainThread] solaar.listener: status_changed : paired online, {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 13:42:45,646 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032C 00000000000000000000000000000000] 13:42:45,646 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032B 00000000000000000000000000000000] 13:42:45,678 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032C 00000000000000000000000000000000] 13:42:45,679 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032C 00000000000000000000000000000000] 13:42:45,680 DEBUG [MainThread] solaar.ui: activate (solaar:3658): Gdk-CRITICAL **: 13:42:45.744: gdk_window_thaw_toplevel_updates: assertion 'window->update_and_descendants_freeze_count > 0' failed 13:42:45,847 DEBUG [MainThread] solaar.ui: status changed: (NONE) None 13:42:45,849 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032B 00000000000000000000000000000000] 13:42:46,207 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032B 00000000000000000000000000000000] 13:42:46,207 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032B 00000000000000000000000000000000] 13:42:46,209 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:42:46,210 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0329 00000000000000000000000000000000] 13:42:46,229 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0329 00000000000000000000000000000000] 13:42:46,230 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0329 00000000000000000000000000000000] 13:42:46,230 DEBUG [MainThread] solaar.ui.tray: picked device with lowest battery: ('/dev/hidraw0', 0, 'Keyboard K600 TV', {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None}) 13:42:46,233 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:42:46,236 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032D 00000000000000000000000000000000] 13:42:46,252 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032D 00000000000000000000000000000000] 13:42:46,252 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032D 00000000000000000000000000000000] 13:42:46,253 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032E 00000000000000000000000000000000] 13:42:46,274 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032E 00000000000000000000000000000000] 13:42:46,275 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032E 00000000000000000000000000000000] 13:42:46,277 DEBUG [MainThread] solaar.ui.window: new device row ('/dev/hidraw0', 0, True, 'Keyboard K600 T\x0f', 'preferences-desktop-peripherals', None, None, ) at index 0 13:42:46,280 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:42:46,282 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032E 00000000000000000000000000000000] 13:42:46,297 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032E 00000000000000000000000000000000] 13:42:46,297 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032E 00000000000000000000000000000000] 13:42:46,298 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032C 00000000000000000000000000000000] 13:42:46,319 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032C 00000000000000000000000000000000] 13:42:46,320 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032C 00000000000000000000000000000000] 13:42:46,321 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:42:46,330 DEBUG [AsyncUI] logitech_receiver.settings: fn-swap: settings read True from 13:42:46,344 DEBUG [AsyncUI] logitech_receiver.settings: divert-keys: settings read {'183': 0, '186': 0, '189': 0, '190': 0, '199': 0, '200': 0, '209': 0, '210': 0, '211': 0, '212': 0, '213': 0, '214': 0, '228': 0, '229': 0, '230': 0, '231': 0, '232': 0, '233': 0} from 13:42:46,357 DEBUG [AsyncUI] logitech_receiver.settings: disable-keyboard-keys: settings read {'1': False, '16': False, '8': False} from 13:42:46,364 DEBUG [AsyncUI] logitech_receiver.settings: multiplatform: settings read 3 from 13:42:46,368 DEBUG [AsyncUI] logitech_receiver.settings: change-host: settings read NamedInt(1, '2:raspberrypi') from 13:42:46,385 DEBUG [AsyncUI] logitech_receiver.settings: gesture2-gestures: settings read {'1': True, '10': True, '2': True, '30': True, '34': False, '4': True, '42': True, '43': True, '45': False, '5': True, '84': True} from 13:42:46,395 DEBUG [AsyncUI] logitech_receiver.settings: gesture2-params: settings read {'4': {'scale': 256}} from 13:42:46,406 DEBUG [MainThread] solaar.ui: status changed: (NONE) None 13:42:46,406 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0329 00000000000000000000000000000000] 13:42:46,848 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0329 00000000000000000000000000000000] 13:42:46,849 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0329 00000000000000000000000000000000] 13:42:46,849 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:42:46,850 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032A 00000000000000000000000000000000] 13:42:46,871 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032A 00000000000000000000000000000000] 13:42:46,871 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032A 00000000000000000000000000000000] 13:42:46,872 DEBUG [MainThread] solaar.ui.tray: picked device with lowest battery: ('/dev/hidraw0', 0, 'Keyboard K600 TV', {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None}) 13:42:46,874 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:42:46,876 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032A 00000000000000000000000000000000] 13:42:46,894 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032A 00000000000000000000000000000000] 13:42:46,896 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032A 00000000000000000000000000000000] 13:42:46,899 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:42:46,900 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0329 00000000000000000000000000000000] 13:42:46,927 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0329 00000000000000000000000000000000] 13:42:46,927 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0329 00000000000000000000000000000000] 13:42:46,929 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032F 00000000000000000000000000000000] 13:42:46,949 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032F 00000000000000000000000000000000] 13:42:46,950 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032F 00000000000000000000000000000000] 13:42:46,951 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:42:46,954 DEBUG [MainThread] solaar.ui: status changed: (NONE) None 13:42:46,955 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032E 00000000000000000000000000000000] 13:42:46,972 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032E 00000000000000000000000000000000] 13:42:46,972 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032E 00000000000000000000000000000000] 13:42:46,973 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:42:46,974 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032E 00000000000000000000000000000000] 13:42:46,994 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032E 00000000000000000000000000000000] 13:42:46,995 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032E 00000000000000000000000000000000] 13:42:46,996 DEBUG [MainThread] solaar.ui.tray: picked device with lowest battery: ('/dev/hidraw0', 0, 'Keyboard K600 TV', {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None}) 13:42:46,999 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:42:47,001 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032D 00000000000000000000000000000000] 13:42:47,017 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032D 00000000000000000000000000000000] 13:42:47,017 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032D 00000000000000000000000000000000] 13:42:47,019 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:42:47,020 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032A 00000000000000000000000000000000] 13:42:47,040 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032A 00000000000000000000000000000000] 13:42:47,041 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032A 00000000000000000000000000000000] 13:42:47,043 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032A 00000000000000000000000000000000] 13:42:47,062 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032A 00000000000000000000000000000000] 13:42:47,063 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032A 00000000000000000000000000000000] 13:42:47,064 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:44:15,496 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 FF 0400 01010100000000000000000000000000] 13:44:15,497 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) <= w[11 00 0329 00000000000000000000000000000000] 13:44:15,530 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0329 00000000000000000000000000000000] 13:44:15,531 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) <= w[11 00 011E 04000000000000000000000000000000] 13:44:15,553 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 011E 1D4B0000000000000000000000000000] 13:44:15,554 DEBUG [ReceiverListener:hidraw0] logitech_receiver.notifications: wireless status: Notification(11,255,04,00,01010100000000000000000000000000) 13:44:15,555 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) <= w[11 00 032A 00000000000000000000000000000000] 13:44:15,575 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032A 00000000000000000000000000000000] 13:44:15,576 INFO [ReceiverListener:hidraw0] solaar.listener: status_changed : paired online, {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (1) powered on 13:44:15,577 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) <= w[11 00 0328 00000000000000000000000000000000] 13:44:15,598 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0328 00000000000000000000000000000000] 13:44:15,598 DEBUG [MainThread] solaar.ui: status changed: (NOTIFICATION) powered on 13:44:15,599 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032F 00000000000000000000000000000000] 13:44:15,620 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032F 00000000000000000000000000000000] 13:44:15,620 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032F 00000000000000000000000000000000] 13:44:15,621 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:44:15,622 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032E 00000000000000000000000000000000] 13:44:15,643 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032E 00000000000000000000000000000000] 13:44:15,644 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032E 00000000000000000000000000000000] 13:44:15,644 DEBUG [MainThread] solaar.ui.tray: picked device with lowest battery: ('/dev/hidraw0', 0, 'Keyboard K600 TV', {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None}) 13:44:15,647 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:44:15,649 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0328 00000000000000000000000000000000] 13:44:15,665 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0328 00000000000000000000000000000000] 13:44:15,665 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0328 00000000000000000000000000000000] 13:44:15,666 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:44:15,667 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032C 00000000000000000000000000000000] 13:44:15,687 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032C 00000000000000000000000000000000] 13:44:15,688 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032C 00000000000000000000000000000000] 13:44:15,689 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032F 00000000000000000000000000000000] 13:44:15,710 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032F 00000000000000000000000000000000] 13:44:15,711 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032F 00000000000000000000000000000000] 13:44:15,712 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:44:15,715 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032E 00000000000000000000000000000000] 13:44:15,733 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032E 00000000000000000000000000000000] 13:44:15,733 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032E 00000000000000000000000000000000] 13:44:32,062 INFO [MainThread] solaar.configuration: saved {'B35340780000:12B05578': {'_modelId': 'B35340780000', '_name': 'Keyboard K600 TV', '_unitId': '12B05578', 'disable-keyboard-keys': {'1': False, '16': False, '8': False}, 'divert-keys': {'183': 0, '186': 0, '189': 0, '190': 0, '199': 0, '200': 0, '209': 0, '210': 0, '211': 0, '212': 0, '213': 0, '214': 0, '228': 0, '229': 0, '230': 0, '231': 0, '232': 0, '233': 0}, 'fn-swap': True, 'gesture2-gestures': {'1': True, '10': True, '2': True, '30': True, '34': False, '4': True, '42': True, '43': True, '45': False, '5': True, '84': True}, 'gesture2-params': {'4': {'scale': 256}}, 'multiplatform': 3, '_sensitive': {'gesture2-gestures': True}}, '_version': '1.0.5'} to /home/pi/.config/solaar/config.json 13:44:37,326 DEBUG [AsyncUI] logitech_receiver.settings: gesture2-gestures: settings write key '84' value False to 13:44:37,329 INFO [AsyncUI] solaar.configuration: saved {'B35340780000:12B05578': {'_modelId': 'B35340780000', '_name': 'Keyboard K600 TV', '_unitId': '12B05578', 'disable-keyboard-keys': {'1': False, '16': False, '8': False}, 'divert-keys': {'183': 0, '186': 0, '189': 0, '190': 0, '199': 0, '200': 0, '209': 0, '210': 0, '211': 0, '212': 0, '213': 0, '214': 0, '228': 0, '229': 0, '230': 0, '231': 0, '232': 0, '233': 0}, 'fn-swap': True, 'gesture2-gestures': {'1': True, '10': True, '2': True, '30': True, '34': False, '4': True, '42': True, '43': True, '45': False, '5': True, '84': False}, 'gesture2-params': {'4': {'scale': 256}}, 'multiplatform': 3, '_sensitive': {'gesture2-gestures': True}}, '_version': '1.0.5'} to /home/pi/.config/solaar/config.json 13:44:37,330 DEBUG [AsyncUI] logitech_receiver.settings: gesture2-gestures: settings prepare key value write(84,False) => [b'\x00\x01\xff\xbf', b'\x01\x01\x07\x01'] 13:44:37,331 DEBUG [AsyncUI] logitech_receiver.base: (18) <= w[11 00 132A 0001FFBF000000000000000000000000] 13:44:37,648 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 132A 0001FFBF000000000000000000000000] 13:44:37,648 DEBUG [AsyncUI] logitech_receiver.base: (18) => r[11 00 132A 0001FFBF000000000000000000000000] 13:44:37,649 DEBUG [AsyncUI] logitech_receiver.base: (18) <= w[11 00 132B 01010701000000000000000000000000] 13:44:37,671 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 132B 01010701000000000000000000000000] 13:44:37,671 DEBUG [AsyncUI] logitech_receiver.base: (18) => r[11 00 132B 01010701000000000000000000000000] 13:44:44,932 INFO [MainThread] solaar.configuration: saved {'B35340780000:12B05578': {'_modelId': 'B35340780000', '_name': 'Keyboard K600 TV', '_unitId': '12B05578', 'disable-keyboard-keys': {'1': False, '16': False, '8': False}, 'divert-keys': {'183': 0, '186': 0, '189': 0, '190': 0, '199': 0, '200': 0, '209': 0, '210': 0, '211': 0, '212': 0, '213': 0, '214': 0, '228': 0, '229': 0, '230': 0, '231': 0, '232': 0, '233': 0}, 'fn-swap': True, 'gesture2-gestures': {'1': True, '10': True, '2': True, '30': True, '34': False, '4': True, '42': True, '43': True, '45': False, '5': True, '84': False}, 'gesture2-params': {'4': {'scale': 256}}, 'multiplatform': 3, '_sensitive': {'gesture2-gestures': False}}, '_version': '1.0.5'} to /home/pi/.config/solaar/config.json 13:46:05,382 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 FF 0400 01010100000000000000000000000000] 13:46:05,383 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) <= w[11 00 0328 00000000000000000000000000000000] 13:46:05,544 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0328 00000000000000000000000000000000] 13:46:05,544 DEBUG [ReceiverListener:hidraw0] logitech_receiver.notifications: wireless status: Notification(11,255,04,00,01010100000000000000000000000000) 13:46:05,545 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) <= w[11 00 0329 00000000000000000000000000000000] 13:46:05,566 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0329 00000000000000000000000000000000] 13:46:05,567 INFO [ReceiverListener:hidraw0] solaar.listener: status_changed : paired online, {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (1) powered on 13:46:05,567 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) <= w[11 00 032D 00000000000000000000000000000000] 13:46:05,600 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032D 00000000000000000000000000000000] 13:46:05,601 DEBUG [MainThread] solaar.ui: status changed: (NOTIFICATION) powered on 13:46:05,602 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032E 00000000000000000000000000000000] 13:46:05,623 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032E 00000000000000000000000000000000] 13:46:05,623 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032E 00000000000000000000000000000000] 13:46:05,624 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:46:05,624 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0329 00000000000000000000000000000000] 13:46:05,645 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0329 00000000000000000000000000000000] 13:46:05,646 DEBUG [MainThread] solaar.ui.tray: picked device with lowest battery: ('/dev/hidraw0', 0, 'Keyboard K600 TV', {'NOTIFICATION FLAGS': False, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None}) 13:46:05,645 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0329 00000000000000000000000000000000] 13:46:05,649 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:46:05,650 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032D 00000000000000000000000000000000] 13:46:05,668 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032D 00000000000000000000000000000000] 13:46:05,668 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032D 00000000000000000000000000000000] 13:46:05,669 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:46:05,669 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032C 00000000000000000000000000000000] 13:46:05,690 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032C 00000000000000000000000000000000] 13:46:05,691 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032C 00000000000000000000000000000000] 13:46:05,692 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 0329 00000000000000000000000000000000] 13:46:05,713 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 0329 00000000000000000000000000000000] 13:46:05,713 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 0329 00000000000000000000000000000000] 13:46:05,714 DEBUG [MainThread] solaar.ui.icons: battery icon for 50:False = battery-good 13:46:05,717 DEBUG [MainThread] logitech_receiver.base: (17) <= w[11 00 032A 00000000000000000000000000000000] 13:46:05,735 DEBUG [ReceiverListener:hidraw0] logitech_receiver.base: (16) => r[11 00 032A 00000000000000000000000000000000] 13:46:05,736 DEBUG [MainThread] logitech_receiver.base: (17) => r[11 00 032A 00000000000000000000000000000000] 13:47:06,728 DEBUG [MainThread] solaar.ui: shutdown 13:47:06,729 INFO [MainThread] solaar.listener: stopping receiver listening threads [] 13:47:06,731 INFO [MainThread] solaar.configuration: saved {'B35340780000:12B05578': {'_modelId': 'B35340780000', '_name': 'Keyboard K600 TV', '_unitId': '12B05578', 'disable-keyboard-keys': {'1': False, '16': False, '8': False}, 'divert-keys': {'183': 0, '186': 0, '189': 0, '190': 0, '199': 0, '200': 0, '209': 0, '210': 0, '211': 0, '212': 0, '213': 0, '214': 0, '228': 0, '229': 0, '230': 0, '231': 0, '232': 0, '233': 0}, 'fn-swap': True, 'gesture2-gestures': {'1': True, '10': True, '2': True, '30': True, '34': False, '4': True, '42': True, '43': True, '45': False, '5': True, '84': False}, 'gesture2-params': {'4': {'scale': 256}}, 'multiplatform': 3, '_sensitive': {'gesture2-gestures': False}}, '_version': '1.0.5'} to /home/pi/.config/solaar/config.json 13:47:07,079 INFO [ReceiverListener:hidraw0] solaar.listener: : notifications listener has stopped 13:47:07,079 DEBUG [ReceiverListener:hidraw0] logitech_receiver.listener: <_ThreadedHandle(/dev/hidraw0)> closing [16, 17, 18] 13:47:07,080 DEBUG [AsyncUI] solaar.tasks: stopped 13:47:07,082 INFO [MainThread] solaar.ui.notify: stopping desktop notifications 13:47:07,085 DEBUG [MainThread] solaar.ui: status changed: (NONE) None CPERSISTER None GET IDS b'\x04\x12\xb0Ux\x00\x06\xb3S@x\x00\x00\x00\x00\x00' GET IDS 12B05578 B35340780000 {'btleid': 'B353', 'wpid': '4078'} CPERSISTER modelid B35340780000 12B05578 CPERSISTER looked B35340780000:12B05578 {'_modelId': 'B35340780000', '_name': 'Keyboard K600 TV', '_unitId': '12B05578', 'disable-keyboard-keys': {'1': False, '16': False, '8': False}, 'divert-keys': {'183': 0, '186': 0, '189': 0, '190': 0, '199': 0, '200': 0, '209': 0, '210': 0, '211': 0, '212': 0, '213': 0, '214': 0, '228': 0, '229': 0, '230': 0, '231': 0, '232': 0, '233': 0}, 'fn-swap': True, 'gesture2-gestures': {'1': True, '10': True, '2': True, '30': True, '34': False, '4': True, '42': True, '43': True, '45': False, '5': True, '84': True}, 'gesture2-params': {'4': {'scale': 256}}, 'multiplatform': 3} UPDATE B35340780000 12B05578 ? UPDATE B35340780000 12B05578 ? CPERSISTER end B35340780000:12B05578 {'_modelId': 'B35340780000', '_name': 'Keyboard K600 TV', '_unitId': '12B05578', 'disable-keyboard-keys': {'1': False, '16': False, '8': False}, 'divert-keys': {'183': 0, '186': 0, '189': 0, '190': 0, '199': 0, '200': 0, '209': 0, '210': 0, '211': 0, '212': 0, '213': 0, '214': 0, '228': 0, '229': 0, '230': 0, '231': 0, '232': 0, '233': 0}, 'fn-swap': True, 'gesture2-gestures': {'1': True, '10': True, '2': True, '30': True, '34': False, '4': True, '42': True, '43': True, '45': False, '5': True, '84': True}, 'gesture2-params': {'4': {'scale': 256}}, 'multiplatform': 3} ```
pfps commented 3 years ago

As far as I can see, Solaar is pushing on to this feature and there is nothing indicating that this gesture should be off. Please provide the output of solaar show, a screenshot of the Solaar main window with the keyboard active, and the contents of ~/.config/solaar/config.json so that I can see what is going on.

pfps commented 3 years ago

Also, the main window should have the gesture section open and visible.

acornblue commented 3 years ago

solaar show

``` Wired Devices 1: Keyboard K600 TV Device path : /dev/hidraw0 USB id : 046d:B353 Codename : Keyboard K600 T Kind : ? Protocol : HID++ 4.5 Serial number: ? GET IDS b'\x04\x12\xb0Ux\x00\x06\xb3S@x\x00\x00\x00\x00\x00' GET IDS 12B05578 B35340780000 {'btleid': 'B353', 'wpid': '4078'} Model ID: B35340780000 Unit ID: 12B05578 Bootloader: BOT 73.00.B0015 Firmware: MPK 08.00.B0015 Other: Other: Supports 33 HID++ 2.0 features: 0: ROOT {0000} 1: FEATURE SET {0001} 2: DEVICE FW VERSION {0003} Firmware: Bootloader BOT 73.00.B0015 00001E30DA07 Firmware: Firmware MPK 08.00.B0015 B3531E30DA07 Firmware: Other Firmware: Other GET IDS b'\x04\x12\xb0Ux\x00\x06\xb3S@x\x00\x00\x00\x00\x00' GET IDS 12B05578 B35340780000 {'btleid': 'B353', 'wpid': '4078'} Unit ID: 12B05578 Model ID: B35340780000 Transport IDs: {'btleid': 'B353', 'wpid': '4078'} 3: DEVICE NAME {0005} Name: Keyboard K600 TV Kind: keyboard 4: WIRELESS DEVICE STATUS {1D4B} 5: RESET {0020} 6: DEVICE FRIENDLY NAME {0007} 7: BATTERY STATUS {1000} Battery: 50%, discharging, next level 20%. 8: REPROG CONTROLS V4 {1B04} CPERSISTER None CPERSISTER modelid B35340780000 12B05578 CPERSISTER looked None {} CPERSISTER create B35340780000:12B05578 {} UPDATE B35340780000 12B05578 ? UPDATE B35340780000 12B05578 ? CPERSISTER end B35340780000:12B05578 {'_name': 'Keyboard K600 TV', '_modelId': 'B35340780000', '_unitId': '12B05578'} Key/Button Diversion: {'209': 0, '210': 0, '211': 0, '214': 0, '199': 0, '200': 0, '228': 0, '229': 0, '230': 0, '231': 0, '232': 0, '233': 0, '190': 0, '213': 0, '189': 0, '186': 0, '212': 0, '183': 0} 9: PERSISTENT REMAPPABLE ACTION {1C00} 10: SWAP BUTTON CANCEL {2005} 11: CHANGE HOST {1814} Change Host: 2:raspberrypi 12: HOSTS INFO {1815} Host 0 (paired): Host 1 (paired): raspberrypi Host 2 (paired): Pixel 3 13: NEW FN INVERSION {40A2} Fn-swap: enabled Fn-swap default: enabled Swap Fx function: True 14: ENCRYPTION {4100} 15: LOCK KEY STATE {4220} 16: KEYBOARD DISABLE KEYS {4521} Disable keys: {'1': False, '8': False, '16': False} 17: MULTIPLATFORM {4531} Set OS: Windows 18: TOUCHPAD RAW XY {6100} 19: GESTURE 2 {6501} Gestures: {'1': True, '2': True, '4': True, '5': True, '30': True, '10': True, '45': False, '42': True, '43': True, '84': True, '34': False} Gesture params: {'4': {'scale': 256}} 20: DFUCONTROL SIGNED {00C2} 21: DEVICE RESET {1802} internal, hidden 22: unknown:1803 {1803} internal, hidden 23: unknown:1813 {1813} internal, hidden 24: OOBSTATE {1805} internal, hidden 25: unknown:1830 {1830} internal, hidden 26: unknown:18A1 {18A1} internal, hidden 27: unknown:1DF3 {1DF3} internal, hidden 28: unknown:1E00 {1E00} hidden 29: unknown:1EB0 {1EB0} internal, hidden 30: unknown:1861 {1861} internal, hidden 31: unknown:18B0 {18B0} internal, hidden 32: unknown:1F11 {1F11} internal, hidden Has 19 reprogrammable keys: 0: Host Switch Channel 1 , default: HostSwitch Channel 1 => HostSwitch Channel 1 is FN, FN sensitive, divertable, persistently divertable, pos:1, group:0, group mask:empty reporting: default 1: Host Switch Channel 2 , default: HostSwitch Channel 2 => HostSwitch Channel 2 is FN, FN sensitive, divertable, persistently divertable, pos:2, group:0, group mask:empty reporting: default 2: Host Switch Channel 3 , default: HostSwitch Channel 3 => HostSwitch Channel 3 is FN, FN sensitive, divertable, persistently divertable, pos:3, group:0, group mask:empty reporting: default 3: MultiPlatform Menu/Show/Hide Virtual Keyboard/Launchpad, default: Multiplatform Menu/Launchpad => Multiplatform Menu/Launchpad is FN, FN sensitive, reprogrammable, divertable, persistently divertable, pos:4, group:0, group mask:empty reporting: default 4: Brightness Down , default: Brightness Down => Brightness Down is FN, FN sensitive, reprogrammable, divertable, persistently divertable, pos:5, group:0, group mask:empty reporting: default 5: Brightness Up , default: Brightness Up => Brightness Up is FN, FN sensitive, reprogrammable, divertable, persistently divertable, pos:6, group:0, group mask:empty reporting: default 6: Previous Fn , default: Previous => Previous is FN, FN sensitive, reprogrammable, divertable, persistently divertable, pos:7, group:0, group mask:empty reporting: default 7: Play/Pause Fn , default: Play/Pause => Play/Pause is FN, FN sensitive, reprogrammable, divertable, persistently divertable, pos:8, group:0, group mask:empty reporting: default 8: Next Fn , default: Next => Next is FN, FN sensitive, reprogrammable, divertable, persistently divertable, pos:9, group:0, group mask:empty reporting: default 9: Mute Fn , default: Mute => Mute is FN, FN sensitive, reprogrammable, divertable, persistently divertable, pos:10, group:0, group mask:empty reporting: default 10: Volume Down Fn , default: Volume Down => Volume Down is FN, FN sensitive, reprogrammable, divertable, persistently divertable, pos:11, group:0, group mask:empty reporting: default 11: Volume Up Fn , default: Volume Up => Volume Up is FN, FN sensitive, reprogrammable, divertable, persistently divertable, pos:12, group:0, group mask:empty reporting: default 12: Multiplatform Insert , default: Switch Language => Switch Language is FN, FN sensitive, reprogrammable, divertable, persistently divertable, pos:0, group:0, group mask:empty reporting: default 13: MultiPlatform Home/Mission Control, default: Multiplatform Home/Mission Control => Multiplatform Home/Mission Control nonstandard, reprogrammable, divertable, persistently divertable, pos:0, group:0, group mask:empty reporting: default 14: Multiplatform Back , default: MultiPlatform Back => MultiPlatform Back nonstandard, reprogrammable, divertable, persistently divertable, pos:0, group:0, group mask:empty reporting: default 15: Multiplatform App Switch , default: MultiPlatform App Switch => MultiPlatform App Switch nonstandard, reprogrammable, divertable, persistently divertable, pos:0, group:0, group mask:empty reporting: default 16: MultiPlatform Search , default: Multiplatform Search => Multiplatform Search nonstandard, reprogrammable, divertable, persistently divertable, pos:0, group:0, group mask:empty reporting: default 17: Fn Left Click , default: ShowUI => ShowUI divertable, pos:0, group:0, group mask:empty reporting: default 18: unknown:0034 , default: Do Nothing One => Do Nothing One nonstandard, pos:0, group:0, group mask:empty reporting: default Has 16 gesture(s), 1 param(s) and 5 spec(s): Track1Finger Enabled (None): None TapGestures Enabled (None): None Tap1Finger Enabled ( 0): True Tap2Finger Enabled ( 1): True Click1Finger Enabled ( 2): True Click2Finger Enabled ( 3): True TapDrag1Finger Enabled ( 4): True DoubleTap1Finger Enabled ( 5): True Scroll2FingerStateless Enabled (None): None NaturalScrolling Enabled ( 6): False Scroll2FingerHoriz Enabled ( 7): True Scroll2FingerVert Enabled ( 8): True Zoom2FingerStateless Enabled ( 9): True FnClickGestureSuppression Enabled ( 10): False TwoFingersPresent Enabled (None): None DeviceSpecificRawData Enabled (None): None ScaleFactor Value ( 0): 256 [Default: 256] period unit Spec ( 3): 2048 DVI field width Spec ( 1): 8 field widths Spec ( 2): 8 multiplier Spec ( 5): None resolution Spec ( 4): 4 Battery: 50%, discharging, next level 20%.
acornblue commented 3 years ago

config.json

``` { "B35340780000:12B05578": { "_modelId": "B35340780000", "_name": "Keyboard K600 TV", "_sensitive": { "gesture2-gestures": false }, "_unitId": "12B05578", "disable-keyboard-keys": { "1": false, "16": false, "8": false }, "divert-keys": { "183": 0, "186": 0, "189": 0, "190": 0, "199": 0, "200": 0, "209": 0, "210": 0, "211": 0, "212": 0, "213": 0, "214": 0, "228": 0, "229": 0, "230": 0, "231": 0, "232": 0, "233": 0 }, "fn-swap": true, "gesture2-gestures": { "1": true, "10": true, "2": true, "30": true, "34": false, "4": true, "42": true, "43": true, "45": false, "5": true, "84": false }, "gesture2-params": { "4": { "scale": 256 } }, "multiplatform": 3 }, "_version": "1.0.5" }
pfps commented 3 years ago

Strange. Solaar show has Zoom2FingerStateless as True, but the config file has 84 (which is its number) as false.

Try this. Kill Solaar. Delete the config file. Run solaar show and report back the lines

            Gestures: {'1': True, '2': True, '4': True, '5': True, '30': True, '10': True, '45': False, '42': True, '43': True, '84': True, '34': False}   

and

     Zoom2FingerStateless       Enabled (   9): True

and the line in the config file

      "84": true

(The T/F values might not be the same as here, of course.)

Then start Solaar, change the zoom setting, quit Solaar, and report back the same information.

Then turn your keyboard off and on and report back the same information.

What you should see is that the first reports all have one value, and the second and third all have the other value.

pfps commented 3 years ago

Here is the expected behaviour, just in case the problem is partly due to a misunderstanding.

Most Logitech devices have several settings that can be changed by Solaar. Logitech devices forget most of these changed settings when they are turned off or when they go into power-saving mode. Solaar keeps the settings that it has seen for a device in ~/.config/solaar/config.json and updates this file whenever it changes a setting. While the Solaar GUI is running (even with the main Solaar window closed), whenever a Logitech device connects (because it was turned on, comes out of power-saving modes, its receiver was plugged in, the device was plugged in, or the device changed hosts) Solaar takes the settings it remembers and applies them to the device. The Solaar GUI also does this for devices that are connected when it starts up.

So what should happen is that if you use the Solaar GUI to change a setting and you keep Solaar running that change will appear to persist. However if you quit Solaar, the next time the device forgets its settings and then reconnects the changed setting will revert back to its default value (unless it is one of the few settings that persist on the device). If you later start up the Solaar GUI, Solaar will apply settings from its config.json file and change the setting back to what it remembers.

If a setting is changed by some other means, such as via solaar config or from the device itself, the Solaar GUI might not notice the change and when it applies its remembered settings the Solaar GUI will apply the setting value it remembered, not the more-recently-changed setting value.

acornblue commented 3 years ago

Yes we are on the same page. Solaar works properly when the K600 is using the unified receiver. However when connected via bluetooth, it does not apply the saved settings when the keyboard is turned on. Restarting solaar will apply the saved settings when on bluetooth.

pfps commented 3 years ago

If you are running with PR #1105 and starting with no ~/.config/solaar/config.json then there is probably still some sort of bug remaining in Solaar. Please respond with the sequence of events that exhibits the bug, e.g., kill Solaar, remove config.json, turn keyboard off and on, connect keyboard via receiver, start Solaar, change setting, switch keyboard to bluetooth, notice that setting has changed to something else. Also provide a screenshot of the Solaar main screen and the contents of ~/.config/solaar/config.json at the point that you notice the problem.

pfps commented 3 years ago

I just saw a similar problem. This was due to my keyboard not responding correctly, but wasn't reproduceable. Fortunately, the output of Solaar in PR #1105 showed what was going wrong, so please also post the output of Solaar, particularly the GET IDS lines.

pfps commented 3 years ago

I found something wrong in Solaar - two threads are trying to talk to the same device. This may be causing your problem, so only provide information if you want. I'll try to produce a fix for the problem that I have found.

pfps commented 3 years ago

I think I have fixed the bug. Could you download PR #1105 again and see whether your problem is still around? I've left in some debugging statements so if you encounter the bug, just post the output from Solaar.

pfps commented 3 years ago

@acornblue Have you had a chance to try the updated PR?

pfps commented 3 years ago

Closing as the fix as already been merged and there is no response from submitter.