Skip to content

Releases: ArvinNotDev/VPadConnect

VPadConnect 0.2.1 Beta 3

Choose a tag to compare

@ArvinNotDev ArvinNotDev released this 04 Nov 19:44

VPadConnect 0.2.1 Beta 3

New Features

  • Added gyro steering support for DualShock 4.
  • Added DualShock 4 vibration and rumble support.
  • Improved DualShock 4 battery percentage and charging status detection.

Improvements

  • Improved Sony controller HID report handling.
  • Added DualShock 4-specific calibration and motion processing.
  • Preserved existing DualSense gyro, vibration, and Lightbar functionality.

Compatibility and Installer

  • Preserved existing wired DualShock 4 controls.
  • The Windows x64 Inno Setup installer continues to bundle the official
    ViGEmBus 1.22.0 installer and use the existing driver detection and
    installation flow. A working installation is detected and left in place;
    the bundled installer runs only when required.
  • The installer retains the existing selectable install folder, Start Menu
    shortcut, optional Desktop shortcut, launch option, and uninstaller. Removing
    VPadConnect does not remove the shared ViGEmBus driver.

Testing Note

DualShock 4 gyro and rumble support have not yet been tested with a physical
DualShock 4 controller.

Build and Validation

  • The project build script completed successfully with PyInstaller 6.11.1 and
    Inno Setup 6.7.4.
  • The installer includes the official ViGEmBus 1.22.0 payload. Its SHA-256
    matches the pinned project value, and its Authenticode signature is valid.
  • python -m compileall -q core ui tests main.py passed.
  • The focused DualShock 4, HID report layout, and installer orchestration
    checks passed (17 tests). The web frontend checks passed (32 tests).
  • The full Python suite reported 132 passed and 2 failed. One existing
    DualSense gyro test fixture does not set Mapper.controller_type; another
    expects the previous battery Lightbar RGB values, while the current main
    code uses the updated saturated palette.
  • Windows Sandbox is disabled in the build environment, so clean installation,
    application launch, shortcut, upgrade, and uninstall behavior could not be
    exercised in an isolated Windows environment. The installer was not run on
    the host.

VPadConnect 0.2.1 Beta 2

Choose a tag to compare

@ArvinNotDev ArvinNotDev released this 30 Oct 18:06

VPadConnect 0.2.1 Beta 2

This release adds a self-contained Windows installer. Download
VPadConnect-Setup.exe; Python and a separate ViGEmBus download are not
required.

What's new

  • Inno Setup requests administrator approval, lets you choose the installation
    folder, creates a Start Menu shortcut, and offers a Desktop shortcut and a
    launch option.
  • The installer detects a working ViGEmBus installation and installs the
    bundled official ViGEmBus 1.22.0 setup when the driver is missing.
  • Setup waits for the driver installer, checks service and Plug and Play state,
    and reports failure or a possible restart requirement. Windows is never
    restarted automatically.
  • Upgrades reuse the prior install folder and close VPadConnect before replacing
    its executable. Uninstall removes the application but preserves user data and
    never removes ViGEmBus.
  • Installed builds store settings, profiles, logs, and Web Companion keys in
    %LOCALAPPDATA%\VPadConnect. Existing legacy data is copied without replacing
    conflicts or deleting the original files.
  • The installer includes the ViGEmBus BSD 3-Clause license notice.

Requirements and limitations

  • Windows 10 or later, 64-bit x64.
  • Administrator approval is needed for setup and driver installation.
  • ViGEmBus was retired on November 2, 2023; version 1.22.0 is its final release
    and will not receive upstream updates. Compatibility with future Windows
    releases is not guaranteed.
  • If driver setup fails, virtual Xbox/XInput output is unavailable until the
    driver is installed or repaired. Mouse controls, hotkeys, and Web Companion
    remain available. A restart may be required after driver installation.
  • VPadConnect is not affiliated with or endorsed by Nefarius Software Solutions
    e.U. Uninstalling VPadConnect does not remove the shared ViGEmBus driver.

Validation

  • python -m compileall -q core ui tests main.py — passed.
  • python -m pytest -q — 100 passed.
  • node --check ui/web/static/app.js — passed.
  • node --test tests/test_web_frontend.cjs — 32 passed.
  • The PyInstaller executable and Inno Setup installer compiled successfully.
    The installer embeds the official ViGEmBus binary whose SHA-256 and
    Authenticode signature were verified.
  • Mocked Windows orchestration tests passed for existing driver, install
    success, install failure, and restart-needed paths.
  • Windows Sandbox was disabled in the build environment. The installer was not
    installed or uninstalled on the host because doing so could invoke the
    kernel-driver installer; interactive destination-page, shortcut, upgrade,
    uninstall, and real-driver scenarios therefore remain unverified.
  • The driver command-line switches match the Microsoft WinGet manifest, but the
    official ViGEmBus installer was not executed in this environment.

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.