Search Unity

Resolved Input System: Bluetooth Controller Vibration

Discussion in 'Input System' started by Clevertop, Jun 11, 2022.

  1. Clevertop

    Clevertop

    Joined:
    Dec 9, 2018
    Posts:
    6
    Hi All,

    I've been stuck with this problem for a few days now: Is it possible to use Gamepad.SetMotorSpeeds() on PS4 controllers connected via Bluetooth? My code (a simple
    Gamepad.current.SetMotorSpeeds(1, 1);
    ) only works when I have the controller plugged in with a USB cable and does not work when connected over Bluetooth. However the rest of the controller functions are working with Bluetooth - eg) buttons, joysticks ect

    Let me know if you need any more context/code and I can send it through
    Thanks,
    Clevertop
     
  2. Clevertop

    Clevertop

    Joined:
    Dec 9, 2018
    Posts:
    6
    bump, Still having trouble with this ^^^
     
  3. timke

    timke

    Joined:
    Nov 30, 2017
    Posts:
    408
    I'm assuming you're using Windows?

    As stated in Sony's support site, the DS4 controller is only supported on Windows via a wired USB connection; wireless or Bluetooth is not support.

    To fully utilize DS4 on Windows over Bluetooth you'll need to install 3rd party drivers. See this recent article for details.
     
    Clevertop likes this.
  4. Clevertop

    Clevertop

    Joined:
    Dec 9, 2018
    Posts:
    6
    Thankyou for the help, with DS4Windows the controllers behave as intended. Will native support be available in future versions of the input system or is this more of a problem between Microsoft and Sony?
     
  5. timke

    timke

    Joined:
    Nov 30, 2017
    Posts:
    408
    Sorry for the delay in responding, I was out on vacation :)

    This is a limitation between Microsoft and Sony: Microsoft doesn't provide built-in drivers with Windows, which make sense since it's a competing product, and Sony won't release official DS4 drivers for Windows because they don't want their controllers used on PC to play Steam games.

    It's all rather silly, and unfortunately I don't think Unity can do much to fix this because the problem is with the driver.