Page 1 of 1

Windows 8 + PS4 does not work

Posted: Sat Jan 17, 2015 11:46 pm
by CrendKing
Hi. I'm trying to make GIMX work on my environment, but I can't figure out where went wrong. Visited all existing posts and still no solution. I'm on Windows 8 64bit and PS4.

I bought Teensy 2.0 from http://pjrc.com/store/teensy.html. I tried 2 CP2102 converter http://www.ebay.com/itm/371046646242?_t ... EBIDX%3AIT and http://www.amazon.com/gp/product/B009T2 ... UTF8&psc=1. Here is my wiring:

Image

RXI (blue) to Teensy D3, TXO (purple) to D2 and GND (black) to GND. CP2102 to PC, Teensy to PS4. Teensy flashed EMUPS4/atmega32u4.hex from firmware 3.0. Also used Arduino to confirm CP2102 can send and receive data correctly.

Also connected DS4 controller to PC. Not sure if I should turn off the controller in PS4.

Drivers:

Image

GIMX version is 3.5. I downloaded all PS4 configs. Here I use WINDOWS_Dualshock4.xml as example.

Here is the problem: GIMX cannot find the DS4 controller. And the command line always says "WaitForSingleObject failed: timeout expired".

Image

I checked the source code, and found that the problem may come from https://github.com/matlo/GIMX/blob/mast ... ial.c#L113. GIMX writes some data to CP2102, and wait for response without using timeout. Instead it timed out. This is weird. I suspected that my first CP2102 was faulty, so bought the second one and still the same problem.

Other minor attempts include: switching USB port, switching TX and RX cable, switch USB cable.

I really appreciate if I can get some help. Thanks!

Re: Windows 8 + PS4 does not work

Posted: Sun Jan 18, 2015 6:19 am
by CrendKing
Some findings:
  • If using libusbK, Gimx-launcher says joystick not found. However if rollback to Windows stock driver, it says This config seems OK! So libusbK is not required?
  • Flash the firmware 3.0 EMUPS4 to the Teensy and plug Teensy to PC, nothing happens. Windows does not detect any new device. However, if I flash EMUPS4PAIRING, Windows finds the new device and the hardward ID is exactly the same as DS4 (054C:05C4). I thought we are supposed not use the PAIRING firmware if not bluetooth?
  • Flash EMUPS3 from firmware 3.0 to Teensy, and Windows will recognize Teensy as a PS3 controller.
  • With EMUPS3 firmware installed, if I plug both Teensy and PC2102 to PC, I can get GIMX work! I think this proves the hardware is working.
  • With EMUPS4PAIRING installed, if I plug both Teensy and CP2102 to PC, I could get "Detected USB adapter: DS4." But still I get the timeout.
  • If I plugin the real DS4 controller and the adapter, I can never get "Detected USB adapter: DS4".
To summarize, 1) libusbK is bad; 2) EMUPS4 from firmware 3.0 is bad; 3) EMUPS4PAIRING is slightly better, but not good enough; 4) GIMX seems not compatible with my PS4. I wonder if the PS4 version has anything to do with GIMX. Like if it must be a certain hardware revision.

Thanks!

Re: Windows 8 + PS4 does not work

Posted: Mon Jan 19, 2015 8:54 am
by Matlo
Hi,

The problem is that the software does not receive any response from the adapter.
https://github.com/matlo/GIMX/blob/mast ... ial.c#L167

When using the libusbK driver it is normal that the controller is not found as a joystick.

EMUPS4PAIRING can't be used for the DIY USB adapter, its only purpose is to pair a bluetooth dongle with the PS4.

Because of authentication the EMUPS4 firmware does not initialize the USB port until it is asked to do so. There's no authentication with the PS3.

I'll try to figure out what the issue is. You're not the only one to have such issues.

Re: Windows 8 + PS4 does not work

Posted: Mon Jan 19, 2015 12:11 pm
by Matlo
Could you please try this firmware: link.

Re: Windows 8 + PS4 does not work

Posted: Tue Jan 20, 2015 12:31 am
by CrendKing
Thank you Matlo for the explanation. The firmware does not work. It behaves exactly same as the EMUPS4 firmware.

But is "Detected USB adapter: DS4." orthogonal to the USB adapter firmware? Meaning no matter what CP2102 or Teensy is, if I plugin my DS4 controller, install libusbK, should it always show "Detected USB adapter: DS4"? Because currently I cannot make it appear, no matter if libusbK is installed or not. That's why I'm wondering if GIMX is only compatible with some DS4 controller revision. Maybe Sony updated the DS4 firmware.

Or is Windows 8 64bit supported? Later I can make a Windows 7 virtual machine and try out.

FYI, my DS4 model number is CUH-ZCT1U. PS4 is CUH-1115A.

Re: Windows 8 + PS4 does not work

Posted: Tue Jan 20, 2015 7:53 am
by Matlo
The "Detected USB adapter: DS4." message should be displayed when using the EMUPS4 firmware.
It should be displayed even if there's no Dualshock 4 controller connected to the PC.

Trying with Windows 7 is a good idea. You can also try with Ubuntu 14.04 as well.
This will tell if the problem is due to Windows 8 or not.

Re: Windows 8 + PS4 does not work

Posted: Thu Jan 22, 2015 7:00 am
by CrendKing
Hi Matlo. I got it working! I think the main problem was the serial cable. Very surprising to me...

I also can confirm that
  • Windows 8 64 bit works
  • Both firmware 3.0 and the one you uploaded work
  • libusbK is required
  • The "Check" button shows no detection of DS4 controller once libusbK is installed, though it works. Maybe consider it as a bug?
Thank you very much for your work!

Re: Windows 8 + PS4 does not work

Posted: Thu Jan 22, 2015 8:22 am
by Matlo
Hi,

Thanks for your feedback. I added a new section in the FAQ, and mentioned to check the USB cables.

Re: Windows 8 + PS4 does not work

Posted: Thu Jan 22, 2015 10:15 pm
by CrendKing
Thanks. Please also add checking the serial cable between CP2102 and Teensy.