Problems with mouse buttons on the key cluster

I suspect that my key cluster is malfunctioning, but before I buy another, I want to understand if I’m right, as changing the module is quite expensive.

Basically, this is an issue I’m able to notice only when I use both the key cluster and the trackpoint together. If I press the key cluster left button (mapped as left mouse button) and I drag the trackpoint, everything works as expected, but if I press the right button (mapped as right mouse button) or the trackball button (mapped as middle mouse button) and I drag at the same time, it seems like some of the “inputs” are completely lost. Depending on the application, I can even stuck the mouse button I’m pressing, as if it was still pressed, if I release it during one of the blocks, and I have to press it again to unstuck it. The blocks are unpredictable. Sometimes I’m able to drag my pointer for a few seconds before it stucks, and sometimes it stucks almost immediately. I don’t have a similar problem with the buttons on my trackpoint module.

I don’t think it’s a contact problem, in fact, even if I keep the module in place with other fingers, or if I press it towards the contact, pressing as light as possible, nothing changes.

I tried multiple things, I tried with older firmwares (I tried firmware 10 with the default configuration, it’s even worse, everything is even less responsive); I tried with the default configuration (the default configuration is slightly better, it requires more time before it becomes not responsive, and rarely I can drag for tens of seconds without issues. Still, after a while, the problem represents itself again); I also tried to lower the keyboard bandwidth (it seems that there is some minor effect, similar to use the default configuration, the responsivity improves but the problem is still there).

I also decided to swap left and right buttons in the key cluster with the agent. It does not matter which button is mapped on which key, the key physically on the left is always ok, while the one on the right is giving troubles. I also tried to use the left half of the keyboard to press the mouse buttons, with a key combination. In that case I have no problems.

I already had some contact issues in the past with this module, caused by some loose screws, that I fixed simply tighten them, but in my opinion that’s not the problem, because, as I already told you, I have the problem even pushing the module towards the contact and having it not moving. I also tried to disassemble and then reassemble the module, just to be sure that all the screws were tight, but nothing changed.

Which inputs exactly are lost?

Given the above, I would suspect either a switch issue, or some bad contact somewhere caused by mechanical stress caused by pressing the module down and bending the entire left+module assembly.

Here is the general troubleshooting guide, maybe it will give you some ideas:

Hi, thanks for the fast reply!

Every input is lost, at least from the dragging and the key pressed. I’m unable to drag the trackpoint anymore for a time (0.5-2 seconds, normally), unless I release the button.

I’ll try some of those solutions, even if I already tried the fast ones just now, without any success.

EDIT:

I also tried to log the keyboard I2c recovery during the dragging. Every time the keyboad get stuck, the I2cRecovery increases, by at least 1, but I noticed that often it increases by 3 (the value changes though).

The log of the right half only shows messages like these when this happens:

Module 0 initialized: protocol version 4.3.0, firmware version 17.2.0, git tag v17.2.0, git repo UltimateHackingKeyboard/firmware, firmware checksum f7eff9129a79ab50833a98b3aac8de37
Module 1 initialized: protocol version 4.3.0, firmware version 17.2.0, git tag v17.2.0, git repo UltimateHackingKeyboard/firmware, firmware checksum 2779cb75710d7abb4382b67e7ee3d9ed
Module 2 initialized: protocol version 4.3.0, firmware version 17.2.0, git tag v17.2.0, git repo UltimateHackingKeyboard/firmware, firmware checksum 806b9d781fc0c526e27c6d37f0bd6731

and nothing else, so I suppose that the problem is that the keyboard resets itself for some reason?

I tried to drag pressing the left key cluster key, but I have no errors in that case. I also have no errors if I drag the pointer using the key cluster trackball while I press the key cluster right key, or if I press any button in the trackpoint (both dragging with the trackpoint or the key cluster trackball). I have problems only with this combination: moving the trackpoint + pressing one of those two buttons in the key cluster.

Could it be a contact problem between the module and the left half due to slightly different mechanical load on the connection and pins when you press on the button?

My reading is that the keyboard has resetted the i2c bus. I don’t think the keyboard has fully rebooted based on above. (Of course, feel free to verify it - e.g., set different keymap as your default. On boot, the keyboard will boot into the default one.)

My reading is that this is still consistent with bad contacts, or power issues.

You definitely could be right, I tried to reduce the backlight from 255 to 127 and I’m not able to replicate the issue anymore. But I don’t understand why, though, because I’ve also tried a powered hub, and I have the same problem with the maximum backlight anyway.

Anyway, in case there’s no other solution, it’s fine to keep my backlight at 127. I’ll continue monitoring the issue, to see if I have it the next days. Still it’s pretty strange to me, as there should be plenty of power supplied.

1 Like