Releases: jfedor2/hid-remapper
r2025-01-17
Fixes a regression in the Bluetooth version: scroll resolution multiplier would sometimes be set incorrectly on Windows, resulting in very slow scrolling.
r2025-01-16
Fixes a regression: PS4 arcade stick mode should properly authenticate to the console again (assuming an appropriate controller or dongle is plugged in).
r2025-01-15
Fixes a regression in the previous release that broke the INPUT_STATE expression operation for analog, GPIO and MIDI inputs.
r2025-01-13
- Stick/trigger inputs are now automatically scaled to the standard 0-255 range, so for simple "Left stick X" -> "Right stick X" etc. mappings you no longer need to use expressions even if your input device uses a different range (common with Xbox controllers and some DIY joysticks).
- New expression operation
INPUT_STATE_SCALED
returns the value of the stick/trigger input scaled to 0-255 range, so you can now have expressions that will function properly with devices using different ranges for these inputs and swap devices without having to adjust the expression. - When the configuration is too complex to be saved on device, there's an error message now instead of undefined behavior.
- Bluetooth version can now access keyboard LED state, but it's still not passed on to connected devices.
- Setting keyboard LED state should now work on more devices.
- New expression operations:
DEADZONE
andDEADZONE2
make it easier to apply radial deadzones to stick inputs. For example you could map register 1 to Left stick X and register 2 to Left stick Y and use an expression like this for a 25% deadzone:
0x00010030 input_state_scaled
0x00010031 input_state_scaled
64 deadzone
2 store
1 store
r2024-12-05
- Brook Wingman FGC2 compatibility. Set the emulated device type on HID Remapper to "PS4 arcade stick" and plug it into the Wingman FGC2 adapter for compatibility with all PS5 games. Make sure to update the firmware on your FGC2 to get analog triggers working.
- Per-port mappings are now ignored if nothing is plugged into that port.
- D-pad mappings are now split into separate left/right/up/down inputs/outputs. Expressions are no longer necessary for simple button-to-d-pad or dpad-to-whatever mappings.
- If you have mappings with D-pad as the output in your current configuration, you will have to update it to use four separate mappings.
- Configurations with multiple mappings with the same stick axis output work better now. Some configurations that previously required expressions can now be done with simple mappings.
- Button-to-stick-axis mappings can now be achieved by setting the scaling parameter on a mapping to the desired stick position (0-255).
- A new setting on the configuration website lets you switch between mouse/gamepad labels on inputs. The setting is not currently stored on device, but it is preserved in exported JSON files.
- Internal state (registers, time counter) is now reset on config save, making it easier to test configurations that do one-time initialization on startup without having to unplug the device every time.
- On Pico 2 (RP2350), upgrading to this version will wipe the configuration! Export your current configuration to a JSON file before upgrading and import it afterwards.
r2024-10-29
- Fix an issue in the previous release that stopped hubs from working on single Pico variants.
- Add support for 8BitDo Lite SE 2.4G Wireless Controller for Xbox.
r2024-10-22
- Pico 2 builds for the single and dual variants.
- New expression operations:
lt
,sub
,div
,min
,max
,sign
,swap
,ifte
,time_sec
,monitor
. - Fix for an issue in the Bluetooth version that could have caused rapid inputs (like macros) to be dropped.
r2024-06-27
This release adds a new emulated device type that is meant to be used when plugging HID Remapper into USB ports on the Xbox Adaptive Controller.
Technically other device types like the Switch gamepad were already compatible, but this lets us have exactly the inputs the XAC understands with proper labels.
Please note that the labels will be correct if you plug HID Remapper into the USB port on the left side of the Xbox Adaptive Controller. On the right side USB port the sticks and buttons are swapped.
Also make sure you update the firmware on your Xbox Adaptive Controller to at least 5.21.3242.0 (released in June 2024).
r2024-05-29
- Per-device mappings are now possible on the Bluetooth version. Use the "Monitor" tab to see what virtual port was assigned to each device.
- Gamepad analog sticks and dpad now have reasonable default values, so they stay in neutral positions when nothing is mapped to them.
- Plugging in a mouse and a gamepad with analog sticks at the same time shouldn't cause issues anymore (you'll still want to map them separately with per-device mappings of course).
- When emulated device type is set to Stadia controller, we now clamp the analog stick outputs to 1-255 as that is the range the report descriptor specifies.
- The scaling parameter now works on sticky/tap/hold mappings, so mappings like Left button -> R2 axis, scaling=255, sticky=true now work as expected.
r2024-05-23
- HID Remapper now supports the boot keyboard protocol. It means it should work (as a keyboard only) in some places it previously didn't, like BIOS-es and bootloaders, especially on older computers.
- Expressions can now have
/* comments */
. They are not saved on device, so if you save the configuration to a device and then load, they will be lost. They are however preserved if you export the configuration to a JSON file and later import it. - "Switch gamepad" now emulates a Horipad controller. It should make no difference on a Switch, but on PC it should now have correct button/axis mapping by default in some places like Chrome and Steam.
- Expressions longer than 255 operations should now be saved correctly.