Gaming Input Peripherals Device Firewall for Windows.

Overview

HidHide


⚠️ Compiling a signed BETA release is in the works, please be patient! ⚠️


Build status

Introduction

Microsoft Windows offers support for a wide range of human interface devices, like joysticks and game pads. Associating the buttons and axes of these devices with application specific behavior, such as Fire, Roll, or Pitch is however left to the individual application developers to realize.

While there are good examples of applications allowing a user to customize the controls to their liking, other applications are less sophisticated or lack just that feature a user is looking for. This is where utilities like vJoy and Joystick Gremlin come to the rescue. These utilities aren't limited by a vendor lock-in and attempt to move certain features back into the domain of the operating system. Once properly arranged, a feature becomes universally available for a wide range of applications.

A technique used by these utilities is to use a feeder application that listens to the physical devices on a system, and in turn controls one or more virtual devices where the game or application is listening to. Mapping physical devices to a virtual device allows for e.g. dual joystick support in games that only support a single joystick, or enable multiple devices to bind to the one and same function in a game that only supports single controller bindings.

While this approach offers a lot of advantages, it also comes with a side effect. Most applications record the user interactions while binding a function with a control or button press. When a virtual device is used, the application receives input from two devices simultaneously. It will be notified by both the physical device triggered, and the virtual device that acts in turn! Some feeders have an option to spam the application repeatedly; however, that approach is cumbersome and error prone.

With HidHide it is possible to deny a specific application access to one or more human interface devices, effectively hiding a device from the application. When a HOTAS is preferred for a flight-simulator one can hide the game pads. When a steering wheel is preferred for a racing game, one can hide the joysticks, and so on. When, as mentioned above, a feeder utility is used, one can use HidHide to hide the physical device from the application, hence avoiding multiple notifications while binding game functions and device controls.

Package content

HidHide is a kernel-mode filter driver available for Windows 8.1 or higher (KMDF 1.13+). It comes with a configuration utility via which the driver is configured and controlled. The filter driver starts automatically and runs unattended with system privileges. A system reboot may be triggered after driver installation or removal. The configuration utility runs in the least privileged mode and doesn't require elevated rights.

User guide

The configuration utility allows you to:

  • Enable or disable the service
  • Specify which applications may look through the cloak
  • Specify the human interface devices that should be hidden from ordinary applications

The main dialog of the configuration utility offers two main tabs. Screen capture of applications tab

The Applications tab shows all white-listed applications that are allowed access to the hidden devices. Typically listed here are vendor-specific utilities for configuring the human interface devices, and feeder utilities. Entries can be added to the list by pressing +. Select one or more entries with the shift and/or control key and press - to remove entries from the list. Notice that the client replaces a logical drive letter by a full path. This is intentionally and offers some resilience for changes in logical drive mapping.

Screen capture of devices tab

Per default, the Devices tab lists all Gaming devices currently connected to the system. The list refreshes automatically when a new device is detected. The dialog offers two check boxes for filtering.

Via Filter-out disconnected one can extend the list with devices that were connected earlier to the system but are currently not present. With Gaming devices only one can limit the list to game pads and joysticks only. This feature relies on proper information from the device vendors. Some vendors however use vendor-specific codes. Be sure to switch off this filter should you notice that your gaming device seems absent in the list. The filters are ignored for devices that are selected for hiding, so that one has a complete overview on the hidden devices.

Last but not least, the Enable device hiding check box provides control over the HidHide service. When enabled it blocks access to the black-listed devices unless the application is explicitly white-listed. When disabled, all applications are granted access to all devices.

An entry in the list can be expanded to reveal the composite devices associated with a device and offers fine-grained control over a device. HidHide uses the selection also for a secondary purpose. Some legacy applications ignore the human interface device layer offered by the operating system and instead interact with the underlying device driver. Access to the underlying driver will be blocked when a device only has composite HID devices, and all are selected.

The expanded list may mark entries as absent or denied. absent entries appear when the device characteristics are altered. These are residual entries in the caches of the operating system, and can be cleaned-up using utilities like Device Cleanup Tool. denied entries appear for hidden devices when the configuration utility itself is not whilelisted.

Bugs & Features

Found a bug and want it fixed? Feel free to open a detailed issue on the GitHub issue tracker!

Have an idea for a new feature? Let's have a chat about your request on Discord or the community forums.

HidHide provides both logging and tracing. Logging can be found the Event Viewer under Windows Logs and System. Tracing can be found under Applications and Services Logs and Nefarius after enabling Show Analytic and Debug Logs. Extended tracing is available but switched off per default for performance reasons. Tracing is controlled using the wevtutil utility which is an integral part of the operating system. To enable extended tracing, open a command shell, and enter the following;

wevtutil set-log Nefarius-Drivers-HidHide/Diagnostic /e:false
wevtutil set-log Nefarius-Drivers-HidHide/Diagnostic /k:5
wevtutil set-log Nefarius-Drivers-HidHide/Diagnostic /e:true

Tracing adjustments remain in affect after a reboot. Restore tracing to its default level using the above sequence with /k:1 instead. Tracing to the debug console is enabled with /k:3 and /k:7 respectively.

Questions & Support

Please respect that the GitHub issue tracker isn't a help desk. Look at the community support resources.

Donations

Creating a utility like this requires time and dedication. Should you like to express your gratitude, consider a pledge for a game I'm rather fond of; the biggest crowd funded game currently in development Star Citizen. Be sure to apply a referral code at account creation as it gives a bit more in-game currency and can't be applied later on. My referral code is STAR-K6S5-KPY7 should you seek one. Have fun and see you in the verse!

Comments
  • Feature Request: Blacklist for applications

    Feature Request: Blacklist for applications

    Would it be possible to have a toggle for the application list to operate as either a blacklist or a whitelist. Currently there's only one program I'd like the devices to be blocked in and having a blacklist would be easier. I currently just keep it blank and just toggle the device hiding as needed.

    enhancement 
    opened by JellyJones 27
  • Disable Xbox One controller in UWP apps like Windows Store and Start Menu

    Disable Xbox One controller in UWP apps like Windows Store and Start Menu

    Hi,

    pls take a look here: https://superuser.com/questions/1173133/disable-xbox-one-controller-in-uwp-apps-like-windows-store

    Could this program stop windows from doing that? Would everything else still work? Looks like a blacklist would be better for such usecase than a whitelist, I would not like to have to whitelist everything else.

    It needs a service to run? Is there a performance impact (input latency)?

    Best regards

    opened by KoB-Kirito 12
  • Fix invalid JSON format

    Fix invalid JSON format

    Noticed that the JSON format of the CLI is invalid when listing devices.

    Here is sample JSON output as of current version 1.1.50 from the CLI command "--dev-gaming":

     [ { "friendlyName" : Controller (Xbox One For Windows)" , "devices" : [
    { "present" : true ,
    "gamingDevice" : true ,
    "symbolicLink" : "\\?\hid#vid_045e&pid_0b00&ig_00#7&2f3ffc5e&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" ,
    "vendor" : "" ,
    "product" : "Controller (Xbox One For Windows)" ,
    "serialNumber" : "" ,
    "usage" : "Gamepad" ,
    "description" : "Xbox One Wireless Controller" ,
    "deviceInstancePath" : "HID\VID_045E&PID_0B00&IG_00\7&2f3ffc5e&0&0000" ,
    "baseContainerDeviceInstancePath" : "USB\VID_045E&PID_0B00&IG_00\00&00&0000728AB982ED7E" ,
    "baseContainerClassGuid" : "{745A17A0-74D3-11D0-B6FE-00A0C90F57DA}" ,
    "baseContainerDeviceCount" : 1 } ] } ]
    

    Note the JSON syntax errors highlighted in this code block. In particular, the friendlyName value only has an end quote but is missing its beginning, and none of the JSON strings are escaped, which is particularly problematic for symbolicLink, deviceInstancePath and baseContainerDeviceInstancePath as all of these values are expected to contain backslashes, which must be escaped. Compounded, these issues render the output from --dev-gaming or --dev-all impossible to parse by any standard JSON library.

    This pull request is a C++ novice's attempt to fix these JSON formatting errors by simply inserting the beginning quote for friendlyName and adding a simple escape_json method that I got off stackoverflow for use when outputting string data.

    Needs testing, please feel free to make modifications as needed.

    opened by toebeann 11
  • Terminating with

    Terminating with "Something unforseen has happened..." in Device tab of HidHide Configuration Client

    • [x] I have searched open and closed issues for duplicates
    • [x] I am submitting a bug report for existing functionality that does not work as intended
    • [x] I have read https://vigem.org/Community-Support/
    • [x] This isn't a feature request or a discussion topic

    Bug description

    When switching from the "Applications" tab to the "Device" tab in the HidHide Configuration Client, an error is produced: "Something unforseen has happened which cannot be recovered from. Program execution has to be terminated. Sorry for the inconvenience."

    Steps to reproduce

    • Install HidHide according to the guide, including prerequisites.
    • Make sure that conflicting software is removed or inactive.
    • Open HidHide Configuration Client
    • Switch tab to "Devices"

    Actual result: "Devices" tab is displayed alongside mentioned error, preventing further interaction with the client and then terminates. Expected result: "Devices" tab is displayed, showing active devices and allowing options to be enabled or disabled.

    Screenshots

    image "Applications" tab including whitelisted apps.

    image "Devices" tab displaying the mentioned error.

    image Windows Event Viewer log of the error.

    Machine info

    Microsoft Surface Laptop 3

    "Device Specifications" Device name LAPTOP-2MD7FKAQ Processor Intel(R) Core(TM) i5-1035G7 CPU @ 1.20GHz 1.50 GHz Installed RAM 8.00 GB (7.60 GB usable) Device ID Probably not important Product ID 00342-23779-84602-AAOEM System type 64-bit operating system, x64-based processor Pen and touch Pen and touch support with 10 touch points

    "Windows Specifications" Edition Windows 10 Home Version 21H1 Installed on ‎ 12/‎27/‎2021 OS build 19043.1415 Serial number 025769604257 Experience Windows Feature Experience Pack 120.2212.3920.0

    HidHide Configuration Client v1.1.50.0

    Controller connected: DS4 v.2 via USB

    Any other helpful information

    https://github.com/ViGEm/HidHide/blob/ada5cc1dc997ebbe9e4776c1855edbef404bdc66/HidHideClient/src/HidHideClient.cpp#L155 https://github.com/ViGEm/HidHide/blob/ada5cc1dc997ebbe9e4776c1855edbef404bdc66/HidHideCLI/src/HID.cpp#L286

    I made this issue, even though there are 2 other similar issues on the repo for two reasons:

    • There are no open issues related to mine.
    • I believe the root of my issue is unique, since the Event Viewer produces different logs of the error compared to similar issues.
    bug 
    opened by Dgrif12 10
  • HidHide starts, but does nothing

    HidHide starts, but does nothing

    The first time I tried it, it worked, but now it just won't, even though I have disabled my antivirus, and I have no idea why :( ... prerequesites are installed

    opened by machomuchacho 10
  • Does not work for multiple Windows user accounts

    Does not work for multiple Windows user accounts

    • [x] I have searched open and closed issues for duplicates
    • [x] I am submitting a bug report for existing functionality that does not work as intended
    • [x] I have read https://vigem.org/Community-Support/
    • [x] This isn't a feature request or a discussion topic

    Bug description

    HidHide is unable to function in a situation where two people use the software on different user accounts.

    Steps to reproduce

    • Install HidHide for User 1
    • User 2 is unable to launch the configuration utility
    • Reinstall for User 2
    • Installation is now broken for User 1

    Actual result: Only one user is able to use HidHide on one PC. Expected result: Both users are able to use HidHide.

    Machine info

    CPU-Architecture: x86-64 Windows version: Windows 11 21H2 Software/driver version(s): 1.1.50

    bug 
    opened by hensez 7
  • HidHide stops hiding controllers that have been re-paired

    HidHide stops hiding controllers that have been re-paired

    To reproduce, use a bluetooth controller that has been previously paired on Windows and checked as hidden on HidHide, and manually remove it in "Windows Settings > Devices > Bluetooth & other devices". Then, pair it again by clicking "Add device" in the same Windows settings area.

    HidHide will still show that controller as checked in its configuration wizard, although it'll not actually hide the controller. Turning the controller off and on again still won't make HidHide hide the controller, neither will a system restart. Also notably, the controller name no longer shows as the generic "HID-compliant game controller", but instead whatever it has when it's not hidden.

    This was tested with a Dualshock 4 and DualSense controller. I have to manually uncheck and check the controller again in the configuration wizard to fix this. I come across this a lot because I need to pair my controllers again after using it in a different device, otherwise Windows won't use it.

    opened by Geroyuni 7
  • Devices Tab in Config Client Stops Responding

    Devices Tab in Config Client Stops Responding

    I installed HidHide with no issues and hid the controllers I wished to when I first started up the configuration client. However, any subsequent time I try to navigate into the Devices tab on the config client, the client freezes and windows says it's stopped responding. I've noticed that a few times it will actually load after several minutes, but many times it simply seems to not work at all.

    Additionally, though the Applications tab loads fine when starting the config client, it will freeze when trying to navigate back to it if the Devices tab does indeed load after a couple minutes of not responding. Tried uninstalling/reinstalling the client to no avail.

    opened by Kenpari 6
  • The name of a hidden device will change after refreshing the HidHide device list.

    The name of a hidden device will change after refreshing the HidHide device list.

    Using HidHide to hide my DualSense after allowing DS4Windows through so it's set as an Xbox 360 emulated controller. (To prevent double controller connections on games, as expected.) However, it changes the name to HID-compliant Game Controller after reopening the app or swapping in-app tabs.

    This isn't a big deal if you only have one controller connected like myself, but this could become a mess if you have two or more in use at the same time. I'd like to see it save the original name and use that at all times for that device.

    PS: Noting if a controller is connected via cable or bluetooth may help as well, if you have multiple controllers of the same type connected in different ways.

    Before: image

    After: image

    documentation enhancement 
    opened by Serfrost 5
  • Multiple feature requests/suggestions regarding client UI

    Multiple feature requests/suggestions regarding client UI

    1 It would be good to add the drag and drop of files to add them to the list.

    2 Added the possibility of assigning a keyboard shortcut to activate or deactivate the device of our choice, or if it is easier to deactivate hidhide with a shortcut and re-use the same shortcut to reactivate hidhide.

    3 Added the ability to start with windows in the notification area.

    4 Added the possibility of deactivating hidhide by clicking on the hidhide icon in the notification area and when you click on it again it activates. And if you want to access the interface again added the possibility to right click on the icon and choose open or parameter or something like that.

    5 Add the possibility to export the whitelist.

    6 Add the possibility to choose if you want to enable hide a device for an element that has been added to the whitelist, because there are games that detect the controller when 'enable hide device' is checked and other games which does not need that 'enable hide device' to be checked for it to work, otherwise it will become a problem and must each time manually activate this checkbox, so the best is to create a profile for each element of the list which chooses which device element to be checked, but for the moment there is only 'enable hid device' which poses a problem for some games.

    7 Add update search and a notification to say there is a new update

    I think these are interesting things

    enhancement 
    opened by AAide 4
  • Feature Request: Per game/app configuration

    Feature Request: Per game/app configuration

    Great stuff! My games (mostlys flight sims) are usually limited in the # of game device and I use different devices for different games. So a per game config would be great to hide different devices for different games automatically.

    documentation enhancement 
    opened by NoSie 4
  • Can't open HidHide Configuration at all. Crash on line 91 of the file

    Can't open HidHide Configuration at all. Crash on line 91 of the file "FilterDriverProxy.cpp".

    • [x] I have searched open and closed issues for duplicates
    • [x] I am submitting a bug report for existing functionality that does not work as intended
    • [x] I have read https://vigem.org/Community-Support/
    • [x] This isn't a feature request or a discussion topic

    Bug description

    Simply i can't open HidHide, i tried different versions but i always get the same error: "Something unforseen has happened which cannot be recovered from. Program execution has to be terminated. Sorry for the inconvenience." I understand that's a problem that only I have, but i dont know ho to resolve it.

    Steps to reproduce

    • Install HidHide.
    • Try to open it.

    Actual result: "Something unforseen has happened which cannot be recovered from. Program execution has to be terminated. Sorry for the inconvenience." Expected result: It should open normally.

    Machine info

    CPU-Architecture: x64 AMD Ryzen 5 2600x Windows version: Windows 10 21H2 Software/driver version(s): 1.1.50 - 1.2.98

    Any other helpful information

    I don't know much about programming and this sort of stuff, only basics, but i tried debugging with Visual Studio 2019 and i can tell that the Debug of HidHideClient crash after a breakpoint on line 91 of the file "FilterDriverProxy.cpp". Line 91: if (FALSE == ::DeviceIoControl(device, IOCTL_GET_WHITELIST, nullptr, 0, buffer.data(), static_cast(buffer.size() * sizeof(WCHAR)), &needed, nullptr)) THROW_WIN32_LAST_ERROR;

    bug 
    opened by FireLion137 1
  • Add Winget Releaser workflow

    Add Winget Releaser workflow

    This action automatically generates manifests for WinGet Community Repository (microsoft/winget-pkgs) and submits them.

    HidHide is already in Winget; this workflow will be used to update it.

    Before merging this:

    1. Add a PAT with public_repo scope as a repository secret named WINGET_TOKEN (or rename the secret name in the workflow).

    example

    1. Fork https://github.com/microsoft/winget-pkgs under @ViGEm. The action will use that fork for making a branch and creating a PR with the upstream winget-pkgs repository on every release.
    2. Sign the Contributor License Agreement for winget-pkgs as you (the PAT owner) will be a first-time contributor.
    3. Use Pull to ensure the fork is constantly updated.

    If you would like to read about this action further, the documentation and source code is available here.

    If you want to see an example of a PR created using this action, see microsoft/winget-pkgs/pulls (Pull request has been automatically created using 🛫 WinGet Releaser).

    Resolves https://github.com/vedantmgoyal2009/vedantmgoyal2009/issues/596

    opened by sitiom 0
  • HidHide hides controller from DS4Windows if it points to DS4Windows linked through a directory junction

    HidHide hides controller from DS4Windows if it points to DS4Windows linked through a directory junction

    • [x] I have searched open and closed issues for duplicates
    • [x] I am submitting a bug report for existing functionality that does not work as intended
    • [x] I have read https://vigem.org/Community-Support/
    • [x] This isn't a feature request or a discussion topic

    Bug description

    DS4Windows doesn't detect the controller if I add the application from the directory junction, meanwhile it works if I add it from the real directory

    Steps to reproduce

    • Install ds4windows from Scoop.
    • Add the DS4Windows executable to the application whitelist from the directory junction (current)
    • Hide the controller
    • Open DS4Windows

    Actual result: The controller is not detected in DS4Windows Expected result: It is supposed to access the hidden controller.

    Screenshots

    Real directory: image Junction: image

    Machine info

    CPU-Architecture: x64 Windows version: Windows 11 21H2 Software/driver version(s): 1.2.98

    Additional Information

    From https://forums.vigem.org/topic/579/hidhide-hides-controller-from-ds4windows-if-it-points-to-ds4windows-linked-through-a-directory-junction/3

    opened by sitiom 0
  • When HidHide is installed,  Logitech LG HUB uses high cpu when the Logitech G29 wheel is connected

    When HidHide is installed, Logitech LG HUB uses high cpu when the Logitech G29 wheel is connected

    • [x] I have searched open and closed issues for duplicates
    • [x] I am submitting a bug report for existing functionality that does not work as intended
    • [x] I have read https://vigem.org/Community-Support/
    • [x] This isn't a feature request or a discussion topic

    Bug description

    When HidHide is installed, Logitech LG HUB uses high cpu (~30% on my pc) when the Logitech G29 wheel is plugged in. When HidHide is not installed, cpu usage is normal.

    Steps to reproduce

    • Have HidHide v1.1.50 Installed
    • Have Logitech G HUB v2022.5.263319 installed and running
    • Connect Logitech G29 racing wheel to G HUB

    Actual result: CPU usage of G HUB rises to a high level and stays there while the wheel is connected Expected result: CPU usage of G HUB should remain roughly the same as before connecting the wheel

    Machine info

    CPU-Architecture: x64 Windows version: Windows 10 21H2 Software/driver version(s): 1.1.50

    Any other helpful information

    This could very well be a problem with Logitech G HUB, but it only happens when HidHide is installed. G HUB is not the best software. Getting the wheel to connect often requires restarting the software, or replugging the wheel. But the high cpu usage only happens when HidHide is installed so there must be some sort of conflict there.

    bug 
    opened by fragmental 4
Releases(v1.2.98.0)
  • v1.2.98.0(Jun 28, 2022)

    v1.2.98 HidHide changelog

    How to install

    Download the provided setup and click through it. Reboot when prompted to. Done!

    Remarks

    This release supports Windows 10/11 64-Bit Intel/AMD only.

    Bugfixes

    • Fixed a config UI crash when an enumerated device doesn't report a class GUID
    Source code(tar.gz)
    Source code(zip)
    HidHide_1.2.98_x64.exe(5.01 MB)
  • v1.2.93.0(Jun 26, 2022)

    v1.2.93 HidHide changelog

    How to install

    Download the provided setup and click through it. Reboot when prompted to. Done!

    Remarks

    This release supports Windows 10/11 64-Bit Intel/AMD only.

    Features

    • Added option to inverse application blocking behaviour (#5)
    • New setup engine including prerequisites check and automatic updater

    Bugfixes

    • Fixed driver binaries not getting removed completely on uninstall
    • Fixed v1.1.x not being removed during update
    Source code(tar.gz)
    Source code(zip)
    HidHide_1.2.93_x64.exe(5.01 MB)
  • v1.2.87.0(Jun 23, 2022)

    v1.2.87 HidHide changelog

    How to install

    Uninstall any previous version first and reboot!

    Download the provided setup and click through it. Reboot afterwards. Done!

    Remarks

    This release supports Windows 10/11 64-Bit Intel/AMD only.

    Features

    • Added option to inverse application blocking behaviour (#5)
    • New setup engine including prerequisites check and automatic updater

    Bugfixes

    • Fixed driver binaries not getting removed completely on uninstall
    Source code(tar.gz)
    Source code(zip)
    HidHide_1.2.87_x64.exe(5.00 MB)
  • v1.1.50.0(Aug 5, 2021)

    v1.1.50 HidHide changelog

    How to install

    Uninstall any previous version first and reboot!

    Make sure to have the prerequisites installed. Download the provided setup and click through it. Reboot afterwards. Done!

    The Symbol files are optional and only useful when debugging issues.

    Remarks

    This release supports Windows 10/11 64-Bit Intel/AMD only.

    Features

    • Added command line client for use in scripts and automation (#7)
    • Client UI auto-whitelists itself upon launch to avoid confusion once blocking is engaged (#11, #16)
    • Client UI now highlights application paths that have become invalid (e.g. application got deleted or moved)

    Bugfixes

    • Fixed building incorrect application path when NTFS junctions are used (#9)
    • Improved driver performance by removing redundant I/O queue (#12)
    Source code(tar.gz)
    Source code(zip)
    HidHideMSI.msi(7.10 MB)
  • v1.0.30.0(Apr 3, 2021)

  • v1.0.18.0(Apr 1, 2021)

Owner
Virtual Gamepad Emulation Framework
Projects devoted to USB input device emulation and game peripherals reverse engineering.
Virtual Gamepad Emulation Framework
A BOF to interact with COM objects associated with the Windows software firewall.

Firewall_Enumerator_BOF What is this? This is meant as a supplement to interact with the Windows firewall via COM interfaces. Did you derive inspirati

null 94 Sep 7, 2022
Application firewall PoC with filtering performed in the kernel, for Linux.

Voi Application firewall with filtering performed in the kernel, for Linux. Status Currently just scaffolding code No where near ready for a productio

Marc 7 Sep 15, 2022
BMI_automatics-faceshielding-device - this is a project utilizing STM32, MATLAB,Softmax classifier to achieve a portable face shielding(mask) device

BMI_automatics-faceshielding-device this is a project utilizing STM32, MATLAB,Softmax classifier to achieve a portable face shielding(mask) device in

Lyu Tian 2 Dec 23, 2021
Gaming meets modern C++ - a fast and reliable entity component system (ECS) and much more

EnTT is a header-only, tiny and easy to use library for game programming and much more written in modern C++. Among others, it's used in Minecraft by

Michele Caini 7.2k Sep 28, 2022
Left hand gaming keypad with a 3D printed case

GameHand Left-hand gaming keypad with a 3D printed case Case files KiCAD PCB files Gerbers for PCB production JLCPCB BOM JLCPCB CPL This work is licen

null 16 Jul 22, 2022
Add virtual monitors to your windows 10 device! Works with Oculus software, obs, and any desktop sharing software

License MIT and CC0 or Public Domain, whichever is least restrictive -- Use it AS IS - NO IMPLICIT OR EXPLICIT warranty This may break your computer,

Rashi Abramson 196 Oct 5, 2022
Bobby Cooke 287 Sep 27, 2022
Implements a Windows service (in a DLL) that removes the rounded corners for windows in Windows 11

ep_dwm Implements a Windows service that removes the rounded corners for windows in Windows 11. Tested on Windows 11 build 22000.434. Pre-compiled bin

Valentin-Gabriel Radu 19 Sep 22, 2022
Valorant cheat that abuses Logitech GHUB driver input management.

valorant-cheat Valorant cheat that uses Logitech GHUB driver input management and color detection. features Triggerbot with customizable delay (VK_SHI

null 28 Sep 20, 2022
Universal State Monitor software for home automation input devices

Universal State Monitor Copyright 2019-2021 SuperHouse Automation Pty Ltd www.superhouse.tv A binary state monitor for DIY home automation projects. T

SuperHouse Automation 3 Aug 24, 2021
Macro keypad and rotary input based on the ATmega32U4 Pro Micro board

JC-Pro-Macro Macro keypad and rotary input based on the ATmega32U4 Pro Micro Videos: Development: https://www.youtube.com/watch?v=g-XJLiv03rI Assembly

Jeremy S Cook 12 Jun 8, 2022
🖱️⌨️ Arduino Input Proxying for PC (.NET Core)

SerialProxy SerialProxy is a complete MiTM solution for modifying ??️ mouse & ⌨️ keyboard input against highly sophisticated FPS anti-cheats (ESEA/Fac

earthlion 39 Apr 22, 2022
Small and dirty header-only library that supports user input with some more advanced features than in the standard lib.

dirty-term Small and dirty header-only library that supports user input with some more advanced features than in the standard lib. This small, lightwe

null 3 Apr 24, 2022
An IOS module that fakes Wiimotes from the input of USB game controllers

fakemote An IOS module that fakes Wiimotes from the input of USB game controllers. Supported USB game controllers Device Name Vendor Name Vendor ID Pr

Sergi Granell 84 Sep 16, 2022
Amos Arcade Joystick input driver for RaspberryPi

am_joyin Amos Joystick Input Driver for Raspbrri-pi Arcade (or another SBC) am_joyin은 라즈베리파이를 이용하여 아케이드 게임기를 제작할 때 다양한 입력장치를 사용할 수 있도록 기획되고 제작되었다. 기본적

Ju, Gyeongmin 2 Mar 22, 2022
Automatic adds AFIX instructions for hydrogen atoms to SHELX input file based on geometry and residual desity

autoHFIX Adds AFIX instructions for hydrogen atoms to SHELX input files based on geometry and residual desity automatically Usage: autoHFIX.exe [-opti

Christian Hübschle 2 Oct 7, 2021
Improved Fractions Calculator using structures, user input parsing, and dynamic operator switching

Improved Fractions Calculator Program Structure: Main File: Runs fnctions from various header files. IO.h Header file containing IO functions, Interfa

Colin McCormack 1 Dec 5, 2021
A keyboard of chinese, with pinyin input method(IME)

适用于单片机的lvgl简单中文键盘拼音输入法,使用QT5.14创建,直接打开即可运行模拟器 如果QT编译提示有错误,尝试在构建设置中重设目录:QT的左边栏-"项目"->"Desktop QT5.14.2 MinGW 32-bit"->"构建设置"->"概要"->"构建目录",填入一个目录,比如“..

null 23 Jul 15, 2022
A video input (V4L2) to NDI converter that works with Raspberry Pi (32-bit and 64-bit), and Intel/AMD CPUs

V4L2 to NDI V4L2 to NDI is an application that connects to attached V4L2 devices and encodes the video signal into NDI It uses the NDI library, allowi

Luke Plassman 43 Oct 5, 2022