PaskaPinishkes / hid-mitm-plus

[PROJECT ABANDONED] Sysmodule forked from hid-mitm to allow gamepads to be used from the network on the nintendo switch for services such as Parsec to be usable.
GNU General Public License v2.0
18 stars 2 forks source link

Development has been abandoned in favor of a rewrite that works on Horizon 10.0. If you still want to use this sysmodule, please keep in mind that hid-mitm-plus only works on <10.0

hid-mitm-plus

Sysmodule forked from hid-mitm by jakibaki to allow gamepads to be used from the network on the nintendo switch for services such as Parsec to be usable.

Disclaimer:

This sysmodule is in beta and is a work in progress! Problems are to be expected. If you encounter any that aren't listed in the known issues section please report it here if nobody else did already. The code added in both the sysmodule and python proxy is a mess since this is my first time programming in Python and also my first time working on sysmodules, so any tips on how to fix it is welcomed!

Features

Setup

While hid-mitm will work perfectly fine on stock atmosphere and possibly reinx the recommended setup is to download the latest Kosmos since it comes preconfigured with the awesome Kosmos Toolbox which allows you to easily configure hid-mitm.

On Kosmos it's just a matter of opening the Kosmos Toolbox, enabling the hid-mitm sysmodule and rebooting.

On Atmosphere, installing hid-mitm can be done by dragging the content of the release.

This sysmodule wasn't tested on ReiNX and SX OS, so expect it to have issues on those CFW.

Usage

Custom gamepads

The way that custom gamepads work with hid-mitm is not by directly connecting the gamepad to your switch but by connecting your gamepad to your pc and then running the input_pc.py app which then in turn sends the input to your switch which will recognize it as an additional pro-controller. Right now, it is possible to emulate up to 4 controllers and in the future, 8. Please take in mind that everything in this sysmodule and script is experimental and was only tested with an Xbox controller. The android and iOS apps made for the original hid-mitm weren't tested, but are most likely unsupported due to the changes made to support more controllers.

Hid-mitm-plus can also easily be repurposed to do scripted inputs (for example a "twitch plays").
Check out the input_pc.py for some reference of how to talk to hid-mitm.

Rebinding buttons [UNTESTED AND GETTING REMOVED IN NEXT RELEASE DUE TO HORIZON 10.0 FEATURING THIS]

Simply open the Kosmos toolbox, go to the sysmodule menu and continue to the hid-mitm menu from there (it's a simple button-press explained in the bottom bar)

After that a screen will pop up in which you can select the button you want to rebind and then what you want it to rebind for.
After you're done, be sure to touch the button in the middle to save your changes.

You can also configure it manually by editing the /config/hid_mitm/config.ini file.

Known issues

Planned features

Games with issues

Support

The best way to get your questions answered is by asking me in Discord (ignacio#5841).

Please don't pollute the issue-tracker with general usage questions.

Building

To build this sysmodule, all you need to do is install libnx 3.0 and use the make command.

Credits