Skip to content

VPadConnect 0.2.1 Beta 1

Choose a tag to compare

@ArvinNotDev ArvinNotDev released this 29 Oct 21:24

VPadConnect 0.2.1 Beta 1

First public beta under the VPadConnect pre-1.0 version line.

VPadConnect is a Windows desktop app for physical HID controller mapping, virtual Xbox/XInput output, mouse control, hotkeys, and a browser-based companion.

Beta notice: Controller and Windows compatibility can vary. Back up important profiles before testing and report reproducible issues. Automated regression checks do not replace testing with each controller model.

What's new

Responsive Settings and accessibility

  • Device, UI, and Developer sections scroll independently and behave better in compact windows.
  • Added a persistent Reduce interface animations preference.
  • Added an adjustable physical-controller mouse deadzone; its default is 10%.

Live Raw HID terminal and developer logs

  • Added a live terminal in Settings → Developer for timestamped hexadecimal HID reports.
  • Displays packet count, receive rate, last report size, and controller name.
  • Supports pause/resume, clear, copy latest report, save capture, and auto-scroll.
  • Bounds terminal history and limits delivery to the UI to 30 reports per second; delivery stops while the terminal is hidden.
  • Added functional developer logging with rotating log files and controls to choose, open, and clear the log file or folder.
  • Made Raw HID timestamp formatting use an explicit UTC-to-local conversion for Windows compatibility.

Mouse responsiveness

  • Removed the redundant cursor-position query from the relative mouse movement hot path.
  • Retained fail-safe recovery for movement attempted from the emergency screen corner.

Web Companion

  • Improved mobile gamepad, touch mouse, scrolling, and PC Remote controls.
  • Uses a persistent authenticated WebSocket input stream when available, with an HTTP state fallback.
  • Releases held inputs when a browser session disconnects or ends.

Driver requirements

  • Virtual Xbox/XInput output requires the system-level ViGEmBus driver, which is not bundled with the application.
  • Mouse control and Web Companion features that do not use virtual XInput do not require ViGEmBus.

Installation

  1. Download VPadConnect.exe from the release assets.
  2. Save it in a writable folder and launch it; Python is not required.
  3. Install ViGEmBus separately only if you want virtual Xbox/XInput output.
  4. Connect a controller, then use Controller Emulation → Add Controller to select its HID interface and configure a mapping.

Release assets

  • VPadConnect.exe — Windows x64 PyInstaller one-file build.
  • SHA256SUMS.txt — SHA-256 checksum for verifying the executable.

System requirements

  • Windows 10 or later, 64-bit x86-64.
  • A writable folder for application settings and profile data.
  • ViGEmBus installed separately for virtual XInput emulation only.

Validation

The local Windows release preparation used Python 3.12.6. These automated checks passed:

  • python -m compileall -q core ui tests main.py — passed.
  • python -m pytest -q — 92 passed.
  • node --check ui/web/static/app.js — passed.
  • node --test tests/test_web_frontend.cjs — 32 passed.

Automated checks do not claim that every controller has been manually tested. No manual hardware compatibility claim is made.

Known limitations

  • Physical-controller-to-keyboard mapping is not currently available. Web Companion remote keyboard input is a separate, permission-controlled feature.
  • Virtual XInput depends on a working ViGEmBus installation; mouse and PC Remote features that do not use virtual XInput can run without it.
  • Controller HID interfaces vary by model, and compatibility should be confirmed with the specific device.
  • Web Companion uses a local HTTPS certificate; compare its fingerprint with the desktop app before continuing past a browser certificate warning.
  • main.py starts the desktop GUI. The project does not currently provide a separate headless CLI remapping application.

See the README for source, test, and build commands and the changelog for earlier history.