Git Product home page Git Product logo

Comments (14)

TheDrHax avatar TheDrHax commented on August 19, 2024

UDP server is not completely implemented yet. Right now it can only send events from controller to cemuhook, but not the other way around.

I'm not even sure that cemuhook's UDP protocol supports this type of events. For example, steam-gyro-for-cemuhook implements only 3 types of incoming packets: VersionReq, ListPorts and PadDataReq. None of them seem to contain any information about feedback and all of them are implemented in this driver (although perhaps not completely).

I will try to inspect traffic between driver and Cemu using Wireshark. Maybe there are more types of packets, that are not covered by other implementations yet.

from ds4drv-cemuhook.

TheDrHax avatar TheDrHax commented on August 19, 2024

Hmm... UDP server should print a warning every time it receives a packet with unknown or incorrect header. I haven't seen any warnings during several walkthroughs of BotW. Either cemuhook doesn't support rumble or it needs to be enabled by appropriate UDP response or in one of config files.

from ds4drv-cemuhook.

barolo avatar barolo commented on August 19, 2024

Hmm... UDP server should print a warning every time it receives a packet with unknown or incorrect header. I haven't seen any warnings during several walkthroughs of BotW. Either cemuhook doesn't support rumble or it needs to be enabled by appropriate UDP response or in one of config files.

I'm totally in the dark about this. Currently I'm testing/using your driver with git dolphin and Skyward Sword [ it works surprisingly good and using DS4 as motion/steering control is.. weird ], maybe it would be easier to pull out something from this/ ask them?

from ds4drv-cemuhook.

barolo avatar barolo commented on August 19, 2024

@TheDrHax It turns out that in Dolphin you can mix and match stuff via Virtual Xinput source provided by DSU servers, and pick where rumble comes from. In other words, it works.
Thus my question seems irrelevant...

from ds4drv-cemuhook.

epigramx avatar epigramx commented on August 19, 2024

Rumble appears to work by default now! I used latest wine git (with a patch required to run vulkan, but that should be irrelevant). I believe it's a new feature of wine (for XInput emulation, select XInput in wined Cemu).

from ds4drv-cemuhook.

barolo avatar barolo commented on August 19, 2024

@epigramx I'm using wine 5 patched for vulkan_cemu, and the weird thing is that cemu only works with ds4drv for me now, rumble still doesn't seem to work though. Which game are you testing this with?

Just to be clear, Is rumble working through ds4drv for you? I need ds4drv for motion input

from ds4drv-cemuhook.

epigramx avatar epigramx commented on August 19, 2024

@barolo I only used the current wine git (I guess that version is called "devel" in some distributions) which I compiled with the default instructions (and I only applied a patch to make vulkan work which should be irrelevant for this feature). It works by selecting XInput in Cemu (Controller "2" for some reason) and then turning on the Rumble slider at the bottom. It's not very surprising since I knew wine only just recently started adding proper XInput emulation so I'm pretty sure many distributions will not have a wine with the feature yet.

from ds4drv-cemuhook.

epigramx avatar epigramx commented on August 19, 2024

There's a good chance it depends on the controller. I used a DS4 via bluetooth (simple pairing in GNOME settings). I do not know the details of wine on how far the support goes but I'm pretty sure XInput emulation is a relatively recent addition/it was being actively developed recently.

from ds4drv-cemuhook.

barolo avatar barolo commented on August 19, 2024

I'm on Gentoo, wine 5.x is very recent, I'm using Xinput in Cemu, are you sure that you're using ds4drv? Do you have both gyro/motion and rumble at once?
I'm using wired DS4 v2

from ds4drv-cemuhook.

epigramx avatar epigramx commented on August 19, 2024

@barolo As I said, only vanilla wine's XInput emulation was needed. I reported that in relation to the Cemu hook part of ds4drv-cemuhook. Cemu currently only works via wine and I know ds4drv does not have rumble support.

from ds4drv-cemuhook.

barolo avatar barolo commented on August 19, 2024

I'm not sure what you're saying; does it work together with ds4drv/motion input or not? I don't care otherwise

from ds4drv-cemuhook.

epigramx avatar epigramx commented on August 19, 2024

Of course. Cemu has an XInput option at controllers with a rumble slider at the bottom. Only caveat is that you must also use the "Also use for buttons/axes" option of Cemuhook in Cemu options to let ds4drv-cemuhook take over for the controller buttons since for some reason it always takes over the buttons of XInput emulation (though I guess ds4drv-cemuhook could be edited to not do buttons functionality at all).

from ds4drv-cemuhook.

barolo avatar barolo commented on August 19, 2024

@epigramx
It does work indeed! and I had it set up correctly.... Just that button remapping in cemu's input window doesn't work in such configuration and this mislead me/got me confused.
Thank you for the info, Star Fox Zero is much funnier now

Since it works in both Dolphin and Cemu now, guess this topic can be closed [ don't know if Citra/N3DS supports rumble ]

from ds4drv-cemuhook.

barolo avatar barolo commented on August 19, 2024

Is it possible to enable blow mic/swap screen special shortcuts in such configuration? motion from dsu + rumble from xinput? @epigramx @TheDrHax
Edit. found the solution Controler 2 takes keyboard input so it's enough to set Switch as S , Blow as B and map them to R!, R2 for example.

from ds4drv-cemuhook.

Related Issues (14)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.