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

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoServidor MCPAcerca deCómo clasificamosPrensa
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

19 repositorios

Awesome GitHub RepositoriesPeripheral Input Drivers

Drivers for collecting events from physical input hardware like touchscreens, keypads, and encoders.

Distinct from Input Controls: Distinct from Input Controls: focuses on the low-level hardware abstraction layer for input peripherals rather than the UI widgets themselves.

Explore 19 awesome GitHub repositories matching user interface & experience · Peripheral Input Drivers. Refine with filters or upvote what's useful.

Awesome Peripheral Input Drivers GitHub Repositories

Encuentra los mejores repositorios con IA.Buscaremos los repositorios que mejor coincidan usando IA.
  • shadps4-emu/shadps4Avatar de shadps4-emu

    shadps4-emu/shadPS4

    31,390Ver en GitHub↗

    shadPS4 is a C++ game emulator and hardware virtualization tool designed to replicate the PlayStation 4 system environment and hardware to run console software on a computer. It functions as a cross-platform application compatible with Windows, Linux, macOS, and FreeBSD. The project serves as a graphics debugging tool capable of dumping shaders and integrating with rendering tools for performance analysis. It provides a system for recreating the console environment through the import of official firmware files, system fonts, and the use of decrypted keys for tracking game trophies. The emula

    Maps physical controllers and keyboard inputs to original console hardware signals for accurate gameplay.

    C++cppcpp23emulation
    Ver en GitHub↗31,390
  • lvgl/lvglAvatar de lvgl

    lvgl/lvgl

    23,880Ver en GitHub↗

    This project is a high-performance, lightweight C graphics library designed for creating interactive user interfaces on resource-constrained embedded hardware. It functions as a comprehensive framework that provides a widget toolkit, a rendering engine, and hardware-agnostic drivers to support the development of graphical displays on microcontrollers and embedded systems. The framework distinguishes itself through a flexible, object-oriented widget hierarchy and a declarative layout engine that supports responsive design patterns like flexbox and grid systems. It enables developers to synchro

    Collects events from various peripherals like touchscreens, keypads, and encoders to ensure consistent user interaction.

    Ccembeddedgraphics
    Ver en GitHub↗23,880
  • darkflippers/unleashed-firmwareAvatar de DarkFlippers

    DarkFlippers/unleashed-firmware

    21,751Ver en GitHub↗

    Unleashed Firmware is a custom firmware modification for portable multi-tool devices designed to expand the capabilities of radio frequency, infrared, and contactless authentication hardware. It functions as a comprehensive platform for wireless security auditing, signal analysis, and hardware interaction, enabling users to capture, decode, and emulate signals across various communication protocols. The firmware distinguishes itself through a modular plugin architecture that allows for the dynamic addition of signal analysis and attack capabilities without requiring a full system recompile. I

    Direct interaction with hardware registers allows the firmware to manipulate low-level radio and input signals with minimal latency and high precision.

    Calternative-firmwarecfwcustom
    Ver en GitHub↗21,751
  • scottbez1/smartknobAvatar de scottbez1

    scottbez1/smartknob

    21,425Ver en GitHub↗

    Smartknob is an open-source programmable rotary interface platform that combines motor-driven feedback and sensor-based tracking to provide tactile input for digital environments. It functions as a customizable input device peripheral, utilizing a brushless motor and a magnetic encoder to translate physical rotation into precise control signals for software applications. The platform distinguishes itself through software-defined haptic feedback, which allows for the simulation of physical sensations such as clicks, springs, and hard stops. By employing closed-loop control and real-time motor

    Functions as a customizable input device peripheral for digital tools.

    C++
    Ver en GitHub↗21,425
  • rpcs3/rpcs3Avatar de RPCS3

    RPCS3/rpcs3

    18,209Ver en GitHub↗

    RPCS3 is a C++ application that functions as a software environment for executing and managing PlayStation 3 console titles on desktop operating systems. It operates by translating proprietary console hardware instructions and graphics commands into formats compatible with modern computer hardware, allowing for the execution of original game software. The emulator distinguishes itself through a comprehensive suite of tools for managing game libraries, applying software patches to modify performance characteristics, and tracking the compatibility status of individual titles. It includes integr

    Configures physical controllers and input devices to mimic original console hardware signals for accurate control during gameplay on a computer.

    C++assembly-languageccpp
    Ver en GitHub↗18,209
  • hrydgard/ppssppAvatar de hrydgard

    hrydgard/ppsspp

    13,375Ver en GitHub↗

    This project is a cross-platform, open-source emulator designed to execute handheld gaming software on modern desktop and mobile hardware. By recreating the original console environment and system libraries, it allows users to run game files without requiring original firmware. The software achieves high-performance execution through a combination of dynamic recompilation and just-in-time instruction translation, which map console-specific instructions to native host machine code. The emulator distinguishes itself by providing advanced visual and connectivity enhancements that extend beyond t

    Configures physical controllers and touch interfaces to replicate original console button layouts for responsive gameplay.

    C++emulatorsppsspppsp
    Ver en GitHub↗13,375
  • mamedev/mameAvatar de mamedev

    mamedev/mame

    9,929Ver en GitHub↗

    MAME is a vintage hardware emulation platform designed to recreate the circuitry of arcade games, computers, and consoles to run original software on modern devices. It functions as a retro gaming preservation framework for managing, verifying, and archiving ROM sets and disk images to ensure long-term software accessibility. The project features a system debugging tool for inspecting emulated memory, CPU registers, and execution flow via breakpoints and disassembly. It also includes a Lua-based automation layer that exposes core system state and hardware controls for custom behavior and anal

    Simulates non-standard external hardware interactions such as barcode scanners and cassette tape mechanisms.

    C++
    Ver en GitHub↗9,929
  • airbnb/epoxyAvatar de airbnb

    airbnb/epoxy

    8,556Ver en GitHub↗

    Epoxy is an Android library for building complex RecyclerView screens using a model-driven approach. It generates RecyclerView adapter models at compile time from annotated custom views, data binding layouts, or view holders, eliminating the manual boilerplate typically associated with view holders and adapters. The library provides a diffing engine that automatically compares model lists and applies minimal updates with animations for insertions, removals, and moves. The library distinguishes itself through its controller-based model building, where a controller class with a buildModels meth

    Automatically registers generated models with the controller after modification, reducing manual wiring.

    Java
    Ver en GitHub↗8,556
  • linux-surface/linux-surfaceAvatar de linux-surface

    linux-surface/linux-surface

    7,413Ver en GitHub↗

    This project provides a customized Linux kernel and driver suite designed to enable hardware compatibility for Surface devices. It focuses on building and patching the Linux kernel to provide driver support for proprietary hardware components that are missing from the upstream source. The system includes a secure boot kernel signing mechanism and a process for enrolling custom keys into the system firmware. This allows the execution of patched kernels while maintaining system security protections. The project covers peripheral driver support for touchscreens, styluses, and keyboards, as well

    Provides low-level drivers for touchscreens, styluses, keyboards, and touchpads.

    Shelllinuxlinux-surfacesurface-devices
    Ver en GitHub↗7,413
  • mgba-emu/mgbaAvatar de mgba-emu

    mgba-emu/mgba

    6,798Ver en GitHub↗

    mGBA is a high-accuracy Game Boy Advance emulator and hardware-level debugger designed to run handheld console ROMs on modern computers. It serves as a scriptable emulation environment that allows for the execution of portable hardware software and the simulation of associated peripherals. The project distinguishes itself through its focus on technical analysis, providing a suite of tools for retro game debugging and game logic inspection. It includes a host-client debug protocol that enables external debugger connectivity via TCP socket communication and an event-driven scripting engine for

    Replicates specialized handheld inputs and link cables to support multiplayer and original hardware features.

    Cemulatorgame-boygame-boy-advance
    Ver en GitHub↗6,798
  • cpq/bare-metal-programming-guideAvatar de cpq

    cpq/bare-metal-programming-guide

    4,730Ver en GitHub↗

    Este proyecto proporciona recursos educativos y guías técnicas para el desarrollo de firmware de microcontroladores. Se centra en escribir código C de bajo nivel que se ejecuta directamente en el hardware sin un sistema operativo subyacente, cubriendo los fundamentos de registros de hardware, mapeo de memoria y relojes del sistema. Las guías detallan la creación de capas de abstracción de hardware para envolver registros mapeados en memoria en interfaces estructuradas y proporcionan tutoriales para integrar pilas TCP/IP y servidores HTTP en entornos bare-metal. También describe la implementación de tuberías de construcción para sistemas embebidos, desde la compilación de binarios con scripts de enlazador hasta el despliegue de firmware en placas físicas. El material cubre una amplia gama de capacidades embebidas, incluyendo integración de hardware, configuración de registros de periféricos y la configuración de programación de tareas basada en interrupciones. También aborda el flujo de trabajo de depuración de microcontroladores mediante comunicación UART y redirección de E/S estándar. El repositorio incluye instrucciones para gestionar cadenas de herramientas de compilación cruzada y automatizar la construcción y despliegue de firmware.

    Implements direct memory-mapped register control using pointer-based structures for high-precision peripheral manipulation.

    C
    Ver en GitHub↗4,730
  • hxh19950701/webviewtvliveAvatar de hxh19950701

    hxh19950701/WebViewTvLive

    4,366Ver en GitHub↗

    WebViewTvLive is an integrated platform that combines a cross-device media dashboard with dynamic channel list management, hardware input mapping, HLS video streaming, and WebView-based IPTV playback for live television delivery. It functions as a WebView IPTV player that streams live television channels through an embedded webview wrapper across mobile and smart display devices, while also serving as an HLS video stream player that handles m3u8 streams directly for live television playback. The project distinguishes itself through its hardware input mapper system that translates physical rem

    Maps physical remote and numeric keypad inputs to application commands for channel switching and navigation.

    Kotlinandroidjavascriptkotlin
    Ver en GitHub↗4,366
  • tmk/tmk_keyboardAvatar de tmk

    tmk/tmk_keyboard

    4,125Ver en GitHub↗

    tmk_keyboard es un firmware de teclado para microcontroladores AVR y Cortex-M diseñado para manejar el escaneo de matrices de teclas y comunicación HID. Funciona como una biblioteca de control de hardware embebido para gestionar pines GPIO y almacenamiento EEPROM, así como un controlador que transmite datos de pulsaciones de teclas y ratón a un ordenador host mediante protocolos USB o PS/2. El proyecto cuenta con un motor de mapas de teclas basado en capas que permite asignar teclas físicas a múltiples capas virtuales. También incluye un traductor de protocolos de teclado heredado para convertir señales de estándares de hardware antiguos a interfaces de ordenador modernas. El firmware soporta una gama de configuraciones de entrada, incluyendo macros de teclas, emulación de entrada de ratón y modificadores de teclas avanzados. Proporciona capacidades para el control del sistema, como reproducción multimedia y gestión de energía, e incluye herramientas para gestionar la retroiluminación LED y depurar la comunicación del firmware.

    Implements direct register manipulation for microcontroller I/O pins to ensure low-latency keyboard input processing.

    C
    Ver en GitHub↗4,125
  • zmkfirmware/zmkAvatar de zmkfirmware

    zmkfirmware/zmk

    4,124Ver en GitHub↗

    ZMK es un framework de firmware modular construido sobre Zephyr RTOS para teclados inalámbricos. Funciona como un sistema programable para definir mapas de teclas, capas y comportamientos de entrada personalizados, actuando como un emulador de dispositivo HID para entrada de teclado y ratón en ordenadores y dispositivos móviles. Proporciona específicamente una solución de controlador para sincronizar dos mitades de teclado separadas a través de enlaces inalámbricos o cableados. El proyecto se distingue por su enfoque en la conectividad Bluetooth Low Energy, con emparejamiento multidispositivo y la capacidad de cambiar entre varios perfiles de host guardados. Incluye gestión de energía avanzada para optimizar la duración de la batería mediante estados de suspensión profunda y control de energía de periféricos, así como soporte para emparejamiento inalámbrico seguro. El firmware cubre una amplia gama de capacidades de entrada, incluyendo comportamientos de teclas complejos como hold-taps, combos y tap-dances, junto con ejecución de macros y gestión de capas. Integra hardware diverso como codificadores rotativos, dispositivos de puntero y pantallas OLED o ePaper. Además, proporciona herramientas para gestionar la topología del hardware, cambio de diseño físico y actualizaciones de mapas de teclas en tiempo de ejecución. El sistema utiliza un pipeline de compilación que monitorea el estado de compilación en un entorno remoto para recuperar y flashear binarios de firmware compilados en placas de hardware.

    Provides drivers and abstractions for integrating rotary encoders and pointing devices as input controls.

    Cbluetoothhacktoberfestkeyboard
    Ver en GitHub↗4,124
  • ther0n/unnaturalscrollwheelsAvatar de ther0n

    ther0n/UnnaturalScrollWheels

    4,113Ver en GitHub↗

    UnnaturalScrollWheels es una herramienta de periféricos de entrada y utilidad de accesibilidad para macOS diseñada para invertir la dirección de desplazamiento de las ruedas de ratón físicas. Funciona como una utilidad a nivel de sistema que modifica cómo el sistema operativo interpreta las entradas de hardware de desplazamiento. El proyecto desacopla las direcciones de movimiento del ratón y del trackpad, permitiendo a los usuarios invertir el comportamiento de desplazamiento de una rueda de ratón física sin alterar la configuración global del sistema ni afectar el comportamiento del trackpad. La utilidad gestiona esto a través de hooks de sistema de bajo nivel e interceptores de eventos que distinguen entre la rueda de desplazamiento y el hardware del trackpad para aplicar transformaciones de dirección en tiempo real.

    Provides a configuration utility that modifies how the OS interprets physical scrolling hardware inputs.

    Swift
    Ver en GitHub↗4,113
  • sypstraw/rpi4-osdevAvatar de sypstraw

    sypstraw/rpi4-osdev

    3,754Ver en GitHub↗

    This project is a tutorial for developing a custom bare metal operating system specifically for the Raspberry Pi 4. It provides the guidance and resources necessary to write software that interacts directly with hardware without the use of a pre-existing kernel. The project centers on an ARM64 cross-compilation toolchain and a build pipeline that transforms source code into raw binary images. It utilizes linker scripts to define physical memory addresses and section placements, ensuring the resulting binary loads at the correct hardware entry point. The codebase covers direct hardware interf

    Provides register-level control for high-precision manipulation of hardware peripherals via memory-mapped addresses.

    C
    Ver en GitHub↗3,754
  • d0k3/godmode9Avatar de d0k3

    d0k3/GodMode9

    2,554Ver en GitHub↗

    GodMode9 is a system-level utility for Nintendo 3DS hardware designed for booting unsigned firmware, managing files, and modifying internal memory. It serves as a custom firmware tool for booting specialized payloads and unlocking restricted system features and hardware capabilities. The project provides a low-level hardware interface for interacting with I2C registers, extracting system keys, and managing raw memory partitions. It functions as a game image dump tool to extract retail cartridges and system images, while also acting as a binary patching utility to alter software behavior via r

    Implements direct read and write access to hardware I2C registers for low-level system interaction.

    C3dsa9lhcia
    Ver en GitHub↗2,554
  • jpd002/play-Avatar de jpd002

    jpd002/Play-

    2,539Ver en GitHub↗

    Play- is a multi-system game emulator and virtual hardware emulator that simulates various console and arcade hardware to run original game files on modern devices. It functions as a retro game frontend, providing a graphical interface for organizing, launching, and managing libraries of legacy console and arcade titles. The project includes a hardware input mapper that translates modern controllers and mouse movements to simulate specialized legacy input devices, such as light guns and steering wheels. It also features a game state manager capable of capturing and restoring the exact memory

    Maps physical controllers and mouse movements to mimic original console hardware signals for accurate gameplay.

    C++cppemulationemulator
    Ver en GitHub↗2,539
  • atar-axis/xpadneoAvatar de atar-axis

    atar-axis/xpadneo

    2,539Ver en GitHub↗

    xpadneo is a Linux kernel driver that enables Bluetooth Low Energy connectivity and input support for wireless Xbox gamepads. It functions as a low-level driver for managing wireless controller connections and report descriptors via the Bluetooth protocol. The project includes an input mapper to override default button mappings and disable kernel dead zones, providing raw axis data for high-precision movement. It also features a haptic controller for managing rumble intensity and high-frequency trigger force feedback, alongside a gamepad mouse emulator that converts stick and button inputs in

    Functions as a kernel-level driver that translates raw Bluetooth gamepad packets into standardized system input events.

    Cdkmsdkms-packagesgamepad
    Ver en GitHub↗2,539
  1. Home
  2. User Interface & Experience
  3. Input Controls
  4. Peripheral Input Drivers

Explorar subetiquetas

  • Console Input Mappers1 sub-etiquetaConfigures physical controllers and input devices to mimic original console hardware signals for accurate control during gameplay. **Distinct from Peripheral Input Drivers:** Distinct from general peripheral input drivers: focuses on mapping physical inputs to specific console hardware signals.
  • Input Peripheral ConfiguratorsUtilities that modify the behavior of physical input hardware without replacing the primary driver. **Distinct from Peripheral Input Drivers:** Distinct from Peripheral Input Drivers: focuses on modifying existing input interpretation rather than providing the low-level hardware abstraction layer.
  • Peripheral Hardware SimulationSimulation of non-standard external hardware interactions like barcode scanners and tape drives. **Distinct from Peripheral Input Drivers:** Simulates a wide variety of vintage peripherals rather than just providing drivers for modern touchscreens.
  • Register-Level Controllers1 sub-etiquetaDrivers that interact directly with hardware registers for low-latency peripheral manipulation. **Distinct from Peripheral Input Drivers:** Distinct from general peripheral input drivers: focuses on direct memory-mapped register control for high-precision hardware interaction.