zmkfirmware / zmk

ZMK Firmware Repository
https://zmk.dev/
MIT License
2.77k stars 2.8k forks source link

Zephyr usbip server not compatible with hold-tap behavior #1444

Open manna-harbour opened 2 years ago

manna-harbour commented 2 years ago

The Zephyr usbip server used by the native_posix_64 board does not register a tap if the press is immediately followed by the release. With a delay of 100ms between press and release the events are registered reliably.

The issue does not appear to be in the usbip client as hold-tap works reliably with ZMK over USB and a usbip server on the host.

It could be fixed in the usbip server or in the hold-tap behavior, but fixing the behaviors will support other remote systems, see https://github.com/zmkfirmware/zmk/issues/1443.

manna-harbour commented 2 years ago

A work-around is to substitute macros with a delay between press and release in place of &kp in hold tap.

manna-harbour commented 2 years ago

Here's a demonstration of this issue: https://github.com/manna-harbour/xmk/discussions/3.

manna-harbour commented 2 years ago

A work-around is to substitute macros with a delay between press and release in place of &kp in hold tap.

This has been added as an option to Miryoku ZMK: https://github.com/manna-harbour/miryoku_zmk#tap-delay.