Comments (7)
It is probable that the scrolling signal sent isn't enough for the computer to translate to an actual scroll, since the duration that encoder sends a tap event is very short by default.
You should add tap-ms
to the sensor rotate behavior with a larger value, see https://zmk.dev/docs/config/behaviors#sensor-rotation
If that isn't enough to scroll, you might want to increase the max speed of the scroll behavior; e.g. define a larger ZMK_MOUSE_DEFAULT_SCRL_VAL
before #include
ing the mouse header or use MOVE_Y(...)
(see https://github.com/zmkfirmware/zmk/pull/2027/files#diff-96b6a313b7b2d798a719c2c62671b1244ad8a8830f1b716c7612dc4c92462dc3R47)
from zmk.
Thanks for the help!
Had to both to make it work:
tap-ms = <20>;
and
#define ZMK_MOUSE_SCRL_VAL 140
from zmk.
Would this feature also include general implementation of mouse keys?
from zmk.
Would this feature also include general implementation of mouse keys?
This and mouse keys would both rely on some of the same underlying HID changes needed, but would be implemented slightly differently, likely.
However, there is distinct API for behaviours reacting to key positions versus sensor events, so we could choice to use one behavior for both if we wanted.
from zmk.
Hi all, are there any advances on this request? If there is some test code I would like to try it.
from zmk.
I was able to leverage what was in Nick's repo: compatible = "zmk,behavior-sensor-rotate-var"
to make my own behavior that will let me use &mwh and &mmv on a rotary encoder. Got mouse scroll wheel working well on my Rollow's thumb horizontal encoders. You are more than welcome to review it in my zmk-config.
Happy to try to submit a PR but I have very limited knowledge here and don't want to mess something up
from zmk.
Trying to make this work on the new PR (#2027) as well as on top of Nick's repo (linked by @t4corun above), but the scroll wheel binding does not seem to work for me..
Here's the behavior I'm using
scroll_up_down: behavior_sensor_rotate_mouse_wheel_up_down {
compatible = "zmk,behavior-sensor-rotate";
#sensor-binding-cells = <0>;
bindings = <&msc SCRL_UP>, <&msc SCRL_DOWN>;
};
then it's defined in the keymap:
sensor-bindings = <&scroll_up_down>;
I'm obviously missing something, as the scroll works when mapped to a key, but does not work when mapped to the encoder.
from zmk.
Related Issues (20)
- Hold-tap balanced flavor diagram: the 3rd drawing the same as the 2nd one
- caps word plus mods works only in some programms in Ubuntu HOT 4
- Sticky layer documentation is unclear HOT 2
- Getting constant battery indicator notifications on Linux. HOT 5
- TRRS, nice!nanos, and the corresponding issues could be improved
- Combine Layer-tap and To Layer HOT 1
- Soft off on the right side of Corne split keyboard issues HOT 4
- Encoder does not work if only on peripheral side
- Combos with `slow-release` produce error during build HOT 2
- Fully overlapping combos always trigger one with fewer numbers of keys HOT 1
- `hold-trigger-key-positions` does not seem to work with `flavor = "balanced"` HOT 3
- Cannot get nice!view to work after recent update HOT 4
- Combo + &mt => Combo wins HOT 3
- Inconsistent behavior when using &caps_word HOT 4
- Sticky key behaviour ignores `release-after-ms` property HOT 3
- ESP32-S2 Support
- `hold-trigger-on-release` cancels effect of `hold-trigger-key-positions` with `flavor = "tap-unless-interrupted";`
- Problem with mod-morph and volume media keys HOT 5
- [Feature Request] Adjust display status screen for better dongle display
- ZMK Logo & Icon Design Requirements
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from zmk.