How to switch keycluster trackball into vertical-only mode or disable it completely

I know there should be some information about it somewhere but I haven’t found it yet.

How do I turn off keycluster trackball completely?

Also, when using trackball sometimes it scrolls up and down, but sometimes it doesn’t. I assume it’s because it starts trying to scroll left-to-right instead. Is there a way to lock it to only vertical axis so it will always scroll up and down?

I also think that would be a useful option. I almost never need to scroll sideways and when the mini-trackball could be configured to scroll down when the thumb motion is to the right or down and vice versa for scrolling upwards that would make the scrollball way more useful for me. I have not used it much now, because of the precision it needs to scroll down, while the motion to the side would be ergonomically much more pleasing.

+1 to being able to disable horizontal scroll as a feature.

I couldn’t find anything in the firmware docs that would do this as a built in feature. One approach I thought of but didn’t try was to remap the media or zoom actions to mouse wheel scroll, but only for vertical, and remap horizontal to no action. I couldn’t work out how to map to mouse scroll actions though.

I used a similar approach for mapping the trackball to Mac screen magnifier, but this mapped to keyboard shortcuts.

Do you mean this or to translate horizontal thumb motions to vertical scrolling like I suggested? I see the benefit of a disable option, but I do not see any disadvantage of a “translate” option which I think would serve two purposes in once. That would also work for people who would just want to disable horizontal scrolling, wouldn’t it?

  • native vertical-only mode is not possible. As Robbie suggests, it should be possible to bind some configurable navigation mode to macros, which would then contain scroll actions. I am not sure I recommend it, as native scroll mode handles scroll events as a continuous property - can add multiple activations into the mouse report at once, while macro solution is strictly discrete.

  • disabling is possible via set module.keycluster.navigationMode.LAYERID none


thanks! I have tried setting

set module.keycluster.navigationMode.base none

but my keycluster trackball still works. what am I doing wrong? tried both on $onInit and by running a macros by key press

That should work. Could you perhaps share your UserConfig?

yeah I see the base layout has “base” id so it should’ve worked

Do you mean this or to translate horizontal thumb motions to vertical scrolling like I suggested?

I think disabling an axis is probably more useful, but allowing configuration of axes independently would cover both options and be ideal IMO.

I agree. In the mean time – I have the UHK just a few days – I tried a bit and now think that for myself just switching the axis is perfect: set module.keycluster.swapAxes 1, which is already one of the options in the smart macro reference one just has to select (and add to $onInit).

Then I still can access both scrolling directions and I do not have a disadvantage, because I get no error triggers when “swiping” left/ right which gets nicely translated to up/ down. :slight_smile:

1 Like

It should be command action, not write text action (or it has to be prefixed by a dollar in case you are using old fork firmware).

Ah thanks! makes sense. I haven’t noticed the command item because even when “type text” is selected the smart macros help tutorial on the right is showing up so I thought it’s showing up because you’re supposed to write the macros there. Apparently it just shows up always doesn’t matter what you choose.

Yes, now it’s disabled :slight_smile:

1 Like

Wow, I was wondering why the trackball would seemingly randomly not work for scrolling in Slack and I now realise, that is the reason. Maybe knowing about this will already mitigate the situation for me, but I will also try out swapping the axis, thanks for the suggestion @rpnfan.

Tried out the swap directly, works like a charm :slight_smile: