Keyboard-IO is a Rust library that provides the essential components for implementing a keyboard on embedded devices. It simplifies the process of handling key presses, reporting scan codes, and sending events to your application.
Key Features:
- Scan Code Handling: Parses raw scan codes and provides a mechanism for converting them to key codes.
- Event System: Dispatches key events to your application, allowing for flexible response logic.
- Debouncing: Eliminates repeated key presses due to bouncing keys.
- Filtering: Allows you to filter out unwanted keys based on scan code or key code.
- Low-Level Access: Provides access to raw scan codes and key codes for advanced use cases.
Use Cases:
- Building a custom keyboard for embedded devices like microcontrollers.
- Integrating with existing operating systems like FreeRTOS.
- Creating keyboard-based interfaces for embedded applications.