awesome-repositories.com
Blog
MCP
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
zmkfirmware avatar

zmkfirmware/zmk

0
View on GitHub↗
4,124 Stars·4,001 Forks·C·MIT·7 Aufrufezmk.dev↗

Zmk

ZMK ist ein modulares Firmware-Framework auf Basis von Zephyr RTOS für drahtlose Tastaturen. Es fungiert als programmierbares System zur Definition benutzerdefinierter Keymaps, Layer und Eingabeverhaltensweisen und agiert als HID-Geräte-Emulator für Tastatur- und Mauseingaben auf Computern und Mobilgeräten. Es bietet eine Controller-Lösung zur Synchronisierung zweier separater Tastaturhälften über drahtlose oder kabelgebundene Verbindungen.

Das Projekt zeichnet sich durch den Fokus auf Bluetooth Low Energy (BLE) aus, inklusive Multi-Device-Pairing und der Möglichkeit, zwischen mehreren gespeicherten Host-Profilen zu wechseln. Es enthält ein fortschrittliches Power-Management zur Optimierung der Akkulaufzeit durch Deep-Sleep-Zustände und Peripherie-Stromsteuerung sowie Unterstützung für sicheres drahtloses Pairing.

Die Firmware deckt eine breite Palette an Eingabefunktionen ab, einschließlich komplexer Tastenverhalten wie Hold-Taps, Combos und Tap-Dances, neben Makro-Ausführung und Layer-Management. Sie integriert diverse Hardware wie Drehgeber, Zeigegeräte sowie OLED- oder ePaper-Displays. Zudem bietet sie Tools für das Management der Hardware-Topologie, das Umschalten physischer Layouts und Runtime-Keymap-Updates.

Das System nutzt eine Build-Pipeline, die den Kompilierungsstatus in einer Remote-Umgebung überwacht, um kompilierte Firmware-Binaries abzurufen und auf Hardware-Boards zu flashen.

Features

  • Keyboard Key Mappings - Provides a comprehensive system for defining complex key layers, macros, and specialized input behaviors.
  • Keyboard Firmware - Implements a comprehensive firmware framework for managing keyboard scanning, debouncing, and keymap processing.
  • Layered Keymaps - Defines multiple sets of key assignments (layers) that can be toggled to expand keyboard functionality.
  • Modular Hardware Composition - Combines controller boards and keyboard shields during the build process to maintain hardware compatibility.
  • Firmware Build Configuration - Provides configuration files to manage the compilation of firmware for specific hardware targets.
  • Bluetooth Connectivity - Manages wireless pairing and data exchange by advertising the device to host computers and mobile devices.
  • Bluetooth Host Profiles - Saves bonding information for multiple hosts and switches between them to direct input.
  • Device Topology Definitions - Uses a hierarchical tree structure to define the physical layout and properties of hardware and keymaps.
  • Graphical Keymap Configurators - Enables modifying keymap layers and assigning behaviors in real-time without requiring a firmware re-flash.
  • HID Emulations - Emulates Human Interface Devices to send keystrokes, mouse movements, and media controls to host systems.
  • HID Keycode Emulation - Sends specific keycodes to the connected host based on press, hold, or toggle triggers.
  • Input Logic Definitions - Creates custom input logic utilizing macros, tap dances, and time-based triggers.
  • Dynamic Layering - Dynamically switches between different sets of key mappings using momentary, toggled, or sticky activations.
  • Keyboard Layout Mappings - Maps physical keys to characters and custom behaviors through structured configuration files.
  • Board and Shield Definitions - Maps microcontrollers and PCBs into board and shield definitions to match the physical hardware layout.
  • Split Keyboard Synchronization - Synchronizes state and input coordinates between two separate microcontrollers in a split keyboard design.
  • Standard Keyboard Emulation - Assigns alphanumeric, symbol, and control characters to switches to emulate a traditional keyboard.
  • Tap-Hold Key Behaviors - Assigns two different actions to a single key based on whether the key is tapped or held.
  • HID Device Implementations - Emulates the Human Interface Device standard to send keyboard and mouse input events to host systems.
  • Wireless Split-Half Linking - Connects two sides of a split device wirelessly to transmit data between them.
  • Low-Power Wireless Connectivity - Establishes secure Bluetooth Low Energy links for energy-efficient keystroke transmission to host devices.
  • Advanced Input Behaviors - Implements advanced input behaviors like hold-taps, tap-dances, and combos to expand key functionality.
  • Input Layer Stacks - Organizes key bindings into a stack where the highest active layer takes priority.
  • Keyboard Frameworks - Utilizes a modular architecture built on Zephyr RTOS to manage keyboard shields and controller boards.
  • Battery Power Optimization - Optimizes wireless battery life through deep sleep states and granular control of peripheral power.
  • Configurable Key-to-Command Mappings - Assigns specific actions or keycodes to physical positions or sensors via configuration.
  • Global System Settings - Provides centralized interfaces for adjusting global preferences and system-wide hardware parameters.
  • Multi-Press Input Triggers - Implements triggers that execute specific behaviors based on the number of consecutive key presses.
  • Firmware Build Variants - Generates specialized firmware binaries tailored for different keyboard shields and controllers from a single codebase.
  • International Layouts - Provides specialized keycodes for non-English layouts and language-switching functions.
  • Key Sequence Patterns - Triggers a predefined list of behaviors or keycodes in a specific sequential order.
  • Pointing Device Drivers - Translates low-level events from trackballs, mice, or touchpads into standard pointer behaviors.
  • HID Mouse Emulation - Implements mouse report protocols to simulate cursor movement and clicks via keyboard inputs.
  • Input Macros - Records and plays back sequences of keystrokes to automate repetitive typing tasks.
  • Input Sequence Macros - Executes automated series of hardware inputs via macro recording and playback.
  • Hardware Integration - Bridges various PCB architectures and controller boards to ensure software compatibility across different hardware setups.
  • Physical Layout Switching - Selects between pre-defined physical key arrangements for the hardware.
  • Peripheral Hardware Controllers - Manages a variety of hardware peripherals including rotary encoders and integrated lighting.
  • Pointing Hardware Integration - Integrates physical trackpads and trackballs to provide simultaneous keyboard and pointer input.
  • Behavior Parameterization - Allows passing additional arguments to bindings to modify actions based on whether a key is tapped or held.
  • Conditional Hold Triggers - Limits the hold action of a dual-function key to trigger only when specific other keys are pressed.
  • Immediate Action Triggers - Triggers hold behavior instantly upon press and cancels it if the key resolves to a tap.
  • Input Timing Logic - Tunes the resolution of dual-function keys using tapping terms and interrupt logic.
  • Solo Release Triggers - Provides specialized logic to execute tap actions if a dual-function key is released without other interactions.
  • Wireless Peripheral Pairing - Establishes and manages connections between the keyboard peripheral and several Bluetooth hosts simultaneously.
  • Battery Power Telemetry - Sends real-time battery power levels to connected host computers and updates on-board OLED or ePaper displays.
  • Peripheral Device Pairing - Bonds central controllers to peripherals using hardware addresses to ensure automatic wireless reconnection.
  • Input Output Routing - Selects whether keystrokes are sent via USB or Bluetooth when both connections are active.
  • Split-Half Synchronization - Establishes a wireless connection between two separate halves through a simultaneous reset.
  • Power State Controllers - Provides interfaces for triggering system power events such as sleep and soft-off states to conserve battery.
  • Peripheral Power Controllers - Cuts power output to external components to eliminate parasitic battery drain.
  • Chorded Key Mappings - Triggers specific outputs when a set of keys is pressed together within a defined time window.
  • Navigation and Function Keys - Assigns directional arrows, home/end keys, and function keys to physical switches.
  • Firmware Extension Modules - Allows adding third-party modules to a repository to enable support for new behaviors and features.
  • Split-Half State Synchronization - Coordinates behaviors across split hardware halves to trigger effects either globally or locally.
  • Secure Device Pairing - Uses encryption and long term keys to ensure secure communication between the keyboard and the host device.
  • Hardware Reset Triggers - Implements low-level mechanisms to restart firmware or enter bootloader mode for flashing new images.
  • Device Power Monitors - Monitors and transmits the remaining power capacity of the device to the connected host.
  • Modifier Key Configurations - Configures modifier keys like Shift, Control, and Alt to modify the behavior of other inputs.
  • Peripheral Input Drivers - Provides drivers and abstractions for integrating rotary encoders and pointing devices as input controls.
  • Rotary Encoder Input - Processes rotational input from physical knobs to trigger specific keycodes or keyboard commands.
  • Keypad Input Behaviors - Assigns numeric keypad digits and arithmetic operations to switches for data entry.
  • Sticky Modifier Modalities - Implements sticky modifier keys that remain active until the next non-modifier key is pressed.
  • Pointer Event Processing - Modifies raw pointer events to scale speed, convert movement to scrolling, or trigger layer changes.

Star-Verlauf

Star-Verlauf für zmkfirmware/zmkStar-Verlauf für zmkfirmware/zmk

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Open-Source-Alternativen zu Zmk

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Zmk.
  • qmk/qmk_firmwareAvatar von qmk

    qmk/qmk_firmware

    20,478Auf GitHub ansehen↗

    This project is a keyboard firmware framework and programmable keyboard ecosystem designed for Atmel AVR and ARM microcontrollers. It provides the embedded software necessary to implement the USB Human Interface Device standard, allowing hardware to communicate keystrokes and mouse movements to a host computer. The framework distinguishes itself by offering a comprehensive toolchain for custom hardware development, including a command line interface for project scaffolding, firmware flashing, and configuration linting. It supports a variety of flexible configuration methods, allowing users to

    Catmel-avrcc-plus-plus
    Auf GitHub ansehen↗20,478
  • kmonad/kmonadAvatar von kmonad

    kmonad/kmonad

    5,018Auf GitHub ansehen↗

    Kmonad is a cross-platform keyboard remapper and advanced key mapping engine that intercepts physical keyboard inputs and transforms them into customized virtual output events. It functions as a programmable input wrapper and multi-layer keyboard manager, allowing users to redefine physical keys and route hardware inputs to virtual devices across different operating systems. The system distinguishes itself through a multi-layer management architecture that enables the definition of dynamic keyboard layers and overlays to change keyboard functions based on the current context. It implements co

    Haskellcross-platformhaskellkeyboard
    Auf GitHub ansehen↗5,018
  • jtroo/kanataAvatar von jtroo

    jtroo/kanata

    6,840Auf GitHub ansehen↗

    Kanata is a cross-platform keymap engine and keyboard firmware emulator that intercepts physical keystrokes to output modified signals on Windows, Linux, and macOS. It serves as a keyboard remapper and layer manager, allowing users to define custom key-map sequences and modal editing behaviors through a declarative configuration file. The system implements keyboard firmware features in software, enabling advanced behaviors such as tap-hold logic, unicode output, and dynamic macros. It utilizes a state-based layer stack to manage multiple sets of key assignments that toggle dynamically and sup

    Rustcross-platforminterception-driverkeyboard
    Auf GitHub ansehen↗6,840
  • tmk/tmk_keyboardAvatar von tmk

    tmk/tmk_keyboard

    4,125Auf GitHub ansehen↗

    tmk_keyboard is keyboard firmware for AVR and Cortex-M microcontrollers designed to handle key matrix scanning and HID communication. It functions as an embedded hardware control library for managing GPIO pins and EEPROM storage, as well as a driver that transmits keystroke and mouse data to a host computer via USB or PS/2 protocols. The project features a layer-based keymap engine that allows physical keys to be mapped to multiple virtual layers. It also includes a legacy keyboard protocol translator to convert signals from vintage hardware standards to modern computer interfaces. The firmw

    C
    Auf GitHub ansehen↗4,125
Alle 30 Alternativen zu Zmk anzeigen→

Häufig gestellte Fragen

Was macht zmkfirmware/zmk?

ZMK ist ein modulares Firmware-Framework auf Basis von Zephyr RTOS für drahtlose Tastaturen. Es fungiert als programmierbares System zur Definition benutzerdefinierter Keymaps, Layer und Eingabeverhaltensweisen und agiert als HID-Geräte-Emulator für Tastatur- und Mauseingaben auf Computern und Mobilgeräten. Es bietet eine Controller-Lösung zur Synchronisierung zweier separater Tastaturhälften über drahtlose oder kabelgebundene Verbindungen.

Was sind die Hauptfunktionen von zmkfirmware/zmk?

Die Hauptfunktionen von zmkfirmware/zmk sind: Keyboard Key Mappings, Keyboard Firmware, Layered Keymaps, Modular Hardware Composition, Firmware Build Configuration, Bluetooth Connectivity, Bluetooth Host Profiles, Device Topology Definitions.

Welche Open-Source-Alternativen gibt es zu zmkfirmware/zmk?

Open-Source-Alternativen zu zmkfirmware/zmk sind unter anderem: qmk/qmk_firmware — This project is a keyboard firmware framework and programmable keyboard ecosystem designed for Atmel AVR and ARM… kmonad/kmonad — Kmonad is a cross-platform keyboard remapper and advanced key mapping engine that intercepts physical keyboard inputs… jtroo/kanata — Kanata is a cross-platform keymap engine and keyboard firmware emulator that intercepts physical keystrokes to output… tmk/tmk_keyboard — tmk_keyboard is keyboard firmware for AVR and Cortex-M microcontrollers designed to handle key matrix scanning and HID… manna-harbour/miryoku — Miryoku is a universal mapping specification for ergonomic and orthogonal keyboards. It provides a standardized set of… peng-zhihui/helloword-keyboard — HelloWord-Keyboard is a modular keyboard hardware framework and a system for integrating interchangeable interaction…