embedded-input-libs

Solid

Use when integrating, porting, configuring, or debugging embedded button/input libraries such as MultiButton or FlexibleButton

AI & Automation 22 stars 2 forks Updated 1 weeks ago MIT

Install

View on GitHub

Quality Score: 79/100

Stars 20%
45
Recency 20%
90
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# Embedded Input Libs ## Overview Use this skill for button and simple input libraries such as MultiButton and FlexibleButton. The key is to align scan period, debounce time, electrical polarity, event semantics, and callback context. ## When To Use Use this skill when: - The user wants to add or debug MultiButton, FlexibleButton, key scanning, long press, double click, or button event callbacks. - Inputs bounce, trigger twice, miss long presses, fire in the wrong order, or behave differently across boards. Do not use this skill for complex UI frameworks or touch/display systems. Use LVGL-related skills when UI event routing dominates. ## First Questions Ask for: - Library: MultiButton, FlexibleButton, or custom button helper. - Button circuit: pull-up/pull-down, active level, GPIO mode, external RC, matrix, or direct GPIO. - Scan period and where scanning runs: timer, main loop, RTOS task, or interrupt. - Desired events: press, release, click, double click, long press, repeat, hold. - Current symptom and logic analyzer or GPIO trace if available. ## Integration Checklist 1. Confirm electrical polarity. Active-low buttons with pull-ups are common; software level must match hardware. 1. Choose a stable scan period. Debounce and click timing depend on the scan tick being regular. 1. Keep callbacks lightweight. Button callbacks should post events or set flags, not block or write flash. 1. Define event semantics. Decide whether long press also emits clic...

Details

Author
easyzoom
Repository
easyzoom/aix-skills
Created
3 months ago
Last Updated
1 weeks ago
Language
Python
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category