Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

zip_temp_layer sometimes stop working #2719

Open
jhorology opened this issue Dec 17, 2024 · 2 comments · May be fixed by #2729
Open

zip_temp_layer sometimes stop working #2719

jhorology opened this issue Dec 17, 2024 · 2 comments · May be fixed by #2729

Comments

@jhorology
Copy link
Contributor

zip_temp_layer sometimes stops working. I think the cause is that input_processor_temp_layer.c is not thread-safe. CONFIG_INPUT_MODE_THREAD is Zephyr's default, but is the pointing subsystem supposed to use CONFIG_INPUT_MODE_SYNCHRONOUS and the input driver to use the system thread?

my configuration:
https://github.com/jhorology/keyboards/blob/main/zmk_keyboards/boards/shields/libra_mini/libra_mini.overlay
https://github.com/jhorology/keyboards/blob/main/zmk_keyboards/libra_mini.keymap

petejohanson added a commit to petejohanson/zmk that referenced this issue Dec 20, 2024
* Ensure all layer operations occur on the system work queue thread.

Fixes: zmkfirmware#2719
@petejohanson petejohanson linked a pull request Dec 20, 2024 that will close this issue
5 tasks
@petejohanson
Copy link
Contributor

@jhorology Can you please give #2729 a try?

@AYM1607
Copy link

AYM1607 commented Dec 23, 2024

Just in case it serves as another useful data point, I think that this comment sheds some light on the actual problem: #2729 (comment) for me a consistent repro is invoking a &to some-layer behavior while the temp layer is active and has not yet been disabled due to the timer, it causes the temp layer to never be enabled again and requires a keyboard reset.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants