github ItsBlurf/PoorDS4 v0.2.0
PoorDS4 v0.2.0

3 hours ago

PoorDS4 v0.2.0

This release brings together the DS4 compatibility, controller-routing and
recovery fixes made since RC51.

After connecting additional controllers, hold L1 + R1 + L2 + R2 to reset
PoorDS4 and refresh controller detection.

Changes

  • Improved emulator and homebrew input compatibility, including Eden.
  • Fixed a false-disconnect cause affecting LEGO Party and games using the
    same empty-read input pattern.
  • Corrected controller attribution and handle matching that could mix players'
    input or interfere with native DualSense input.
  • Improved DS4 multiplayer joining, including clients opened after a game starts
    and controllers connected under an already signed-in profile.
  • Fixed controller-table detection for longer library lookup loops, which could
    leave Isaac without input even after the DS4 active notification appeared.
  • Preserved controller identities during source recovery and the reset shortcut,
    avoiding unnecessary game-side disconnects.
  • Fixed inconsistent input and controller information across connection changes.
  • Improved controller-source rediscovery, application handoff and handle cleanup.
  • Fixed read-validation edge cases and recovery-shortcut controller attribution.
  • Preserved first-failure diagnostics and added optional per-controller log
    summaries to help investigate reports without changing input handling.

Files

File Purpose
PoorDS4.elf Main controller payload.
PoorDS4-status.elf Export controller and bridge diagnostics.
PoorDS4-stop.elf Stop the running bridge normally.

The matching source archive and SHA256SUMS.txt are included.

Updating

Stop any running PoorDS4 instance with PoorDS4-stop.elf before loading this
version. Connect the DS4 under the profile used by the game, load PoorDS4.elf
through your ELF loader, then start the game or homebrew application.

Compatibility

Tests for controller routing, queued reads, reconnects and recovery pass on
Windows and Linux. All three payloads build successfully.

Console logs were checked in Eden, FC26, LEGO Party and Isaac Repentance on
firmware 11.60. Earlier builds confirmed Eden input and Isaac gameplay with
a single DS4 or a DS4 + DualSense. Continuing a saved Isaac co-op run still
requires controllers for its existing players.

Mixed DS4/DualSense tests also covered both player orders, reconnecting either
controller, and reopening a saved co-op run. Both players kept independent input.

The current build was also checked in Eden on 11.60: connected input reads
continued with detailed logging enabled and disabled, and normal recovery kept
the existing game controller identity.

Multiplayer with several DS4s, other firmware versions, guest profiles and
additional connection orders need more testing.

The latest table-detection correction passes the recorded failure case on a
PS5. Live Isaac reads also receive connected DS4 input, with no handle mismatches
or disconnected output samples. Retesting gameplay in the affected tester setup
is still pending.

DS4 vibration does not work in this build. The DS4 also lacks the DualSense's
haptic actuators and adaptive-trigger hardware, so those effects are not
supported. Vibration support is a low priority for now, but ideas, technical
findings and pull requests are welcome.

Please include the firmware, application version, controller setup and fresh
diagnostics when reporting an issue.

Special Thanks

A huge shoutout to reyzinhoplayoliver-design
/ ElCauaRey on Discord for helping with a lot of testing and finding bugs!

Donations & Support

If you find PoorDS4 useful and want to support future development, please
consider donating:

  • PayPal: paypal.me/nblurf
  • Bitcoin (BTC Network): 1CW8JWSnWc5w7yKhYk7ixAFG487nU5Jrzc
  • USDT (Tron / TRC20): TRcrCeonXzgyxjR4LGzo4JdfEHYGGqD3gX

Don't miss a new PoorDS4 release

NewReleases is sending notifications on new releases.