You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adds minimal Azoteq IQS9151 trackpad support using RMK's existing pointing input-device path.
This PR intentionally keeps the scope small:
I2C address 0x56
product number check for 0x09bc
active-low RDY wait with polling fallback
minimal runtime event setup
coordinate-frame read
relative X/Y parsing
PointingEvent publishing
keyboard.toml / split codegen support
documentation for [[input_device.iqs9151]]
Out of scope
This does not include gestures, tap/drag, scrolling, pinch, dynamic scaling, virtual key positions, split custom transport, storage persistence, Vial user key integration, or panel-specific Azoteq configuration images.
Those features can be added later once the minimal driver shape is reviewed.
cargo nextest run iqs9151 --no-default-features --features=split,vial,storage,async_matrix,_ble
cargo test test_iqs9151_input_device_config from rmk-config/
bash scripts/test_all.sh
Notes
This is intended as a reviewable first step for generic IQS9151 support. It avoids copying large gesture/storage/split-specific logic from downstream keyboard firmware and does not include device-specific configuration byte arrays.
Hardware validation is still needed, especially around the minimal runtime setup and RDY/polling behavior.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds minimal Azoteq IQS9151 trackpad support using RMK's existing pointing input-device path.
This PR intentionally keeps the scope small:
0x560x09bcPointingEventpublishingkeyboard.toml/ split codegen support[[input_device.iqs9151]]Out of scope
This does not include gestures, tap/drag, scrolling, pinch, dynamic scaling, virtual key positions, split custom transport, storage persistence, Vial user key integration, or panel-specific Azoteq configuration images.
Those features can be added later once the minimal driver shape is reviewed.
Validation
sh scripts/format_all.shcargo check --no-default-features --features=split,vial,storage,async_matrix,_blecargo nextest run iqs9151 --no-default-features --features=split,vial,storage,async_matrix,_blecargo test test_iqs9151_input_device_configfromrmk-config/bash scripts/test_all.shNotes
This is intended as a reviewable first step for generic IQS9151 support. It avoids copying large gesture/storage/split-specific logic from downstream keyboard firmware and does not include device-specific configuration byte arrays.
Hardware validation is still needed, especially around the minimal runtime setup and RDY/polling behavior.