rpcs3 icon indicating copy to clipboard operation
rpcs3 copied to clipboard

Implement Real PS Move Handler

Open Megamouse opened this issue 1 year ago • 15 comments

Changes

  • Adds a "Real" Move handler to the IO tab in the settings (uses players 7,6,5 and 4, just like the "Fake" move).
  • Adds real PS Move camera tracking (well, as good as I was able to for now). Adds a tracker configuration dialog for setting up the correct LED colors and thresholds etc.
  • Adds a "Real" PS Move emulated USB device config similar to the "Fake" PS Move device config. This is needed because the real devices are basically also just virtual DS3s and can be mapped anyway you want.
  • Adds a new HID pad handler for the PS Move. You need to pair your PS Move on Windows first (see below). It only works properly while the device is not connected via USB. I haven't had the patience to fix that.
  • Adds support for the PS Move CECH-ZCM1 (that's the PS3 version)
  • Adds support for the PS Move CECH-ZCM2 (that's the PS4 version)
  • Adds support for the PS Move Sharpshooter (including remapping the buttons in the pad dialog if used as DS3)
  • Adds support for the PS Move Racing Wheel (including remapping the buttons in the pad dialog if used as DS3)

Pairing a PS Move on Windows

After searching for a while, I think the PS Move Api works best for pairing a PS Move on windows

  • Download the latest PS Move Api release at https://github.com/thp/psmoveapi/releases
  • For me this is: psmoveapi-4.0.12-windows-msvc2017-x64.zip
  • Unzip the file into a new directory (for example into a subdirectory of your download folder)
  • Connect your PS Move to the Windows PC via USB
  • Open the windows command prompt (or powershell) as administrator
  • Navigate to the /bin directory and Run psmove.exe pair
  • Follow all the steps in the terminal until the tool prints "Pairing of #1 succeeded!" and terminates
  • You should only have to pair the device with Windows once, unless you pair it with another device again.
  • If you have any issues, try to follow the pairing guide: https://psmoveapi.readthedocs.io/en/latest/pairing.html

PS EYE

The PS eye doesn't work on windows at the moment. So you have to connect a different camera and select the PS EYE in the IO config tab. You also have to select the Qt camera handler.

Fixes #2297

Megamouse avatar Jul 10 '24 20:07 Megamouse

First, thanks for getting this implemented. I've been waiting for this day (as a big rail shooter fan).

Hopefully, you can fix the compiling issues so testing can begin. I'm on Windows if you have a build available.

For your PS Move write-up, two notes:

  1. Run "./psmove.exe pair" gives me an error. "psmove.exe pair" works fine
  2. You have to move the dll into the exe dir else you'll get this error: 1

I got both my moves paired and ready to go! 2

I'm not clear though what to do with the PS Eye. Do I just plug it in and then it'll work?

legend800 avatar Jul 14 '24 03:07 legend800

The PS eye doesn't work on windows at the moment. So you have to connect a different camera and select the PS EYE in the IO config tab. You also have to select the Qt camera handler.

Megamouse avatar Jul 19 '24 19:07 Megamouse

Ok, got the build, followed all the instructions, rpcs3 sees the cam and move but the "PS Move Tracker" tool doesn't trigger the globe to illuminate. The game doesn't show the PS Move cali screen either like there's no move connected. If I switch Move Handler back to "Mouse", the cali screen shows up fine. Log and pics:

RPCS3.log.gz 2024-07-19 23_49_45-Configure Emulated PS Move (Real) 1 2024-07-19 23_49_04-Settings_  NPUB30760  The House Of The Dead_ OVERKILL™ Extended Cut  US DL 2024-07-19 23_49_18-PS3

legend800 avatar Jul 20 '24 06:07 legend800

You have to configure the hue and the thresholds in the tracker config dialog first.

Megamouse avatar Jul 20 '24 07:07 Megamouse

Also, it has to be player 7, as mentioned in the first sentence

Megamouse avatar Jul 20 '24 07:07 Megamouse

Got it. Ok, it's working fine in the tracker config now. Really cool app.

I saw that line but I wasn't sure what "uses players 7,6...." means. Seemed like it was more of a implementation comment vs a user step. I've used fake mouse for years and never selected anything in the "Gamepad Settings" before, so not sure what "just like the Fake move" note means. I would suggest a tweak like:

Adds a "Real" Move handler to the IO tab in the settings. You'll need to go to Gamepad Settings, select any player 4-7, select "PS Move" from the Handlers dropdown and confirm your PS Move is recognized in the Devices selector.

I only have HOD Overkill right now and while I can get the Cali screen to show and btn input is recognized, the sphere never lights up and there's no tracking. This could just be an existing issue with this game, since even with Mouse, similar behavior - buttons work but no tracking like some lib isn't getting initialize on this one. Log attached.

RPCS3.log.gz

legend800 avatar Jul 20 '24 07:07 legend800

I didn't change anything that actually improves games. This will only work if the game already works with the other move handlers

Megamouse avatar Jul 20 '24 08:07 Megamouse

This dialog goes off-screen for my TV. I'm using a 200% scale, 4k res on a 55" display image Save, close, apply do not show and I can't resize the dialog. I tried to resize and it does the Windows animation for minimum height already achieved

Darkhost1999 avatar Jul 21 '24 17:07 Darkhost1999

hello im new to github. can u please tell me how i can download your build.

hyperionxze avatar Jul 23 '24 12:07 hyperionxze

hello im new to github. can u please tell me how i can download your build.

https://github.com/RPCS3/rpcs3/blob/master/.github%2FPR-BUILD.md

thecatontheceiling avatar Jul 23 '24 12:07 thecatontheceiling

hello im new to github. can u please tell me how i can download your build.

https://github.com/RPCS3/rpcs3/blob/master/.github%2FPR-BUILD.md

tysm ♥

hyperionxze avatar Jul 23 '24 13:07 hyperionxze

image how do i get it so that the game detects my camera. also why does the light go out when i leave ps move tracker.

hyperionxze avatar Jul 23 '24 16:07 hyperionxze

It's explained in the description above. Also, the ps move needs to be actively updated every 4 seconds or the light goes out on its own.

Megamouse avatar Jul 23 '24 16:07 Megamouse

It's explained in the description above. Also, the ps move needs to be actively updated every 4 seconds or the light goes out on its own.

oh sorry about that. despite turning on the camera like mentioned it shows a green screen ingame, whereas the ps tracker works completely fine. do you know as to why?

hyperionxze avatar Jul 24 '24 10:07 hyperionxze

image i got stuck on a cutscene in lbp2 and closed as i assumed it to be a softlock, and then i got this. this is after already getting an ntdll error although idk if it was the same. something's not right though EDIT: you can skip the cutscene by clicking not now, it'll still let you through but motion seems to not be working properly. buttons do tho but if i boot up paint my cursor never moves.

skunkmommy avatar Jul 28 '24 16:07 skunkmommy

Does anyone still have this build of RPCS3? If so, please send it to me via discord: mugny

IAMASIGMite avatar Oct 30 '24 00:10 IAMASIGMite

¿Alguien todavía tiene esta compilación de RPCS3? Si es así, por favor envíamelo a través de discordia: mugny

This is not the right place to discuss this topic, nobody is going to send you the build by discord md, ask better on the RPCS3 server 👍🏼

rcv11x avatar Oct 30 '24 08:10 rcv11x

BTHPS3 may interfere with PSMove API if you have used a DualShock 3 controller before using Nefarius Software Solutions.

Screenshot 2024-11-14 105559

If working correctly you'll see a controller device with the following

Screenshot 2024-11-16 111654

Darkhost1999 avatar Nov 14 '24 17:11 Darkhost1999