A little success Pairing the PSMove on Windows 8.1

636 views
Skip to first unread message

gilc

unread,
Sep 21, 2014, 5:13:09 PM9/21/14
to psm...@googlegroups.com
Ok Everyone, I don't believe I'm dreaming but I have just been able to get my PSMove connected on my Windows 8.1 x64 PC!

It has been a lot of trial and error, and I hope someone else can make this work also. The following is the final steps that I did to get my controller connected.

All these steps have to be done manually, but hopefully I can write them up to make them understandable to everyone.

I was at the point where I could get the controller to show up in the Control Panel list of devices, but it would never fully connect. Sometimes it would disappear. So you at least need to be able to get the controller to partially connect using all the old methods.

If you can get to that point then you need to check the registry for some entries.

The first Registry entries you want to check for are under HKLM\System\CurrentControlSet\Enum\BTHENUM.

You should see an entry for: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\BTHENUM\{00001124-0000-1000-8000-00805f9b34fb}_VID&0002054c_PID&03d5 
and under that one you should see another entry with the address of your controller similar to this which is MY CONTROLLER  8&219dc36b&0&00138A92A9FC_C00000000 
Highlight that Key and in the data displayed in the right panel check that the  DeviceDesc is referencing the @hidbth.inf...

If you compare the entries in this Registry section (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\BTHENUM\{00001124-0000-1000-8000-00805f9b34fb}_VID&0002054c_PID&03d5\8&219dc36b&0&00138A92A9FC_C00000000) to the same Registry key on a Windows 7 PC, you will notice some differences. 

If you have the @hidbth.inf... entry then you need to modify the following Registry Key 

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HidBth\Parameters\Devices

Under the 'Devices' parameter you may see several keys listed. Look closely at the last 12 hex digits and you should see a key that identifies your PSMove controller. For example my controller key was listed as 00190e0c740500138a92a9fc  My Controller address is 00138A92A9FC. See that value is the last digits of the Registry key name.

If you find your controller in the list of Device Parameters, highlight that key and then in the left panel you should see Key Values named ConnectionAuthenticated and VirtuallyCabled. Both values will probably be set to 0X00000000.

What you want to try is to modify the Binary Data for the VirtuallyCabled value. We want to set this to 0X00000001. But when you modify the value in the Edit Binary View you need to enter the data in reverse order.

I have attached some images of my registry to hopefully make this clearer.

AFTER MAKING THE CHANGE TO THE REGISTRY YOU NEED TO REBOOT and then try to connect your controller.

I was not able to get the magnetometer_calibration to run but I could run the example.exe.

I hope my instructions are understandable to most. If not. let me know.

Just one note, went trying to "Add Device" use the Control Panel Add Device method instead of the new Windows 8.1 screen to add a device. There definitely seems to be some differences as to how a device gets added at least for Registry entries.

This was a lot of trial and error on my part so I hope I have covered all my steps and this works for others. I'm determined to get this working!!

Good luck,

Gil


Edit_Binary_Data.png
HKLM_CCS_Enum_BthEnum.png
HKLM__CCS_Services_HidBth_Param_Devices.png

Gil

unread,
Sep 21, 2014, 5:34:28 PM9/21/14
to psm...@googlegroups.com

I forgot to mention that I am using a Targus Bluetooth Adapter and it is identified in Device Manager as a Broadcom 2046 Bluetooth 2.1 USB UHE Dongle.

--
You received this message because you are subscribed to the Google Groups "psmove" group.
To unsubscribe from this group and stop receiving emails from it, send an email to psmove+un...@googlegroups.com.
Visit this group at http://groups.google.com/group/psmove.
For more options, visit https://groups.google.com/d/optout.

Alexander Nitsch

unread,
Sep 22, 2014, 1:01:38 PM9/22/14
to psm...@googlegroups.com
> Ok Everyone, I don't believe I'm dreaming but I have just been able to get
> my PSMove connected on my Windows 8.1 x64 PC!

Great news! I hope the Windows 8 users on this list will try to
reproduce this soon.

Just one question: After setting everything up and rebooting, did the
connection work on the first try (i.e. pressing the PS button only once)
or did you still need several attempts to actually establish the connection?


Alex

Gil

unread,
Sep 22, 2014, 2:55:47 PM9/22/14
to psm...@googlegroups.com
Yes, my PSMove will connect immediately after pressing the PS button.

When running some of the sample apps on Windows 8.1 I am getting errors like the following:

E:\psmoveapi\my_build>magnetometer_calibration.exe
[PSMOVE CRITICAL] Assertion fail in psmove_calibration_new: Could not determine serial from controller
[PSMOVE CRITICAL] Assertion fail in psmove_calibration_supported: calibration != NULL
[PSMOVE CRITICAL] Assertion fail in psmove_get_magnetometer_calibration_filename: serial != NULL
[PSMOVE WARNING] Magnetometer in (null) not yet calibrated.
Calibrating PS Move #0
Calibration done. Press the MOVE button to continue.
[PSMOVE CRITICAL] Assertion fail in psmove_get_magnetometer_calibration_filename: serial != NULL
[PSMOVE CRITICAL] Assertion fail in psmove_save_magnetometer_calibration: fp != NULL

E:\psmoveapi\my_build>

However the example.exe seems to run just fine.

Gil

gilc

unread,
Sep 22, 2014, 4:49:21 PM9/22/14
to psm...@googlegroups.com
I was testing this out further and was able to connect my second PSMove controller. I thought I would emphasize a couple of things in order to get this working.

When you are in the Control Panel and Add a device, after you select the PS controller and get it to show up in the Control Panel, go into the Properties for the controller and on the Services tab make sure the box is checked for the Drivers for keyboard, mice, etc (HID). If these drivers don't install you probably will not see the Registry entry that I mention in my previous instructions. So you may have to go through the Services tab a few times in order for it to set correctly. If you see the list Device functions (see attached image) in the Hardware tab then make sure the registry value(as described previously) is set and then reboot.

I have attached a couple more images to show what I have when device will connect.

Once you have this setup and the Registry values set and have rebooted, you should be able to press the PS button and the controller connects on the first try.

Once the controller is connected run the example.exe to check everything out.

I have seen some issues on other apps like the magnetometer_calibration.exe where it is not working on Windows 8. At least for me.

Hope this helps
Device_Properties_Services.png
Device_Properties_Hardware.png

Thomas Perl

unread,
Sep 25, 2014, 2:36:34 AM9/25/14
to psm...@googlegroups.com
Hi,

2014-09-22 22:49 GMT+02:00 gilc <gi...@mchsi.com>:
> I was testing this out further and was able to connect my second PSMove
> controller. I thought I would emphasize a couple of things in order to get
> this working.

Nice work! :)

> I have seen some issues on other apps like the magnetometer_calibration.exe
> where it is not working on Windows 8. At least for me.

That should (hopefully) be relatively easy to fix by modifying the
code that gets the controller's serial (we might be able to read it in
a different way when the controller is connected via Bluetooth, as the
input report method of getting the controller's Bluetooth address is
strictly speaking only necessary when the controller is connected via
USB).


HTH :)
Thomas

gilc

unread,
Sep 26, 2014, 3:40:30 PM9/26/14
to psm...@googlegroups.com
I have also been able to connect the PS Move to my Surface Pro running Windows 8.1 x64 using this method.

Kieran Coulter

unread,
Sep 26, 2014, 4:10:28 PM9/26/14
to psm...@googlegroups.com
This is great news,

Sounds like it's working for a few people on Windows 8.1

I'd really like to add PS Move API support to my upcoming application called GestureLab, and hopefully I can remove the PS Move.me support or leave it as a legacy option.

Having to have a PS3 for no good reason is really going to discourage people from trying out GestureLab. 

I should ask again - can anyone point to any starter code that exists for adding in support for the Nav and Sharpshooter accessories? I would like to work on all of this at the same time, getting the final OSC output from GestureLab going into Max/MSP, Unity and Unreal Engine.

Kieran

Alexander Nitsch

unread,
Sep 26, 2014, 4:25:12 PM9/26/14
to psm...@googlegroups.com
> Sounds like it's working for a few people on Windows 8.1

So far, only Gil got his controllers to work on different machines. It
would be great if other Windows 8 users could also give it a try.


> I should ask again - can anyone point to any starter code that exists for
> adding in support for the Nav and Sharpshooter accessories? I would like to
> work on all of this at the same time, getting the final OSC output from
> GestureLab going into Max/MSP, Unity and Unreal Engine.

I added support for handling EXT devices (such as the Sharp Shooter and
the Racing Wheel) a couple of months ago. Have a look at the
accompanying example program in examples/c/test_extension.c.

Thomas posted a link to an old, experimental patch for Navigation
support on this list. At least 1.5 years ago. I am not sure if that
really is a good starting point though.

I started working on Navigation support a while ago (nothing released
yet) but got stuck because of pairing issues on Linux.


Alex

Kieran Coulter

unread,
Sep 26, 2014, 4:28:02 PM9/26/14
to psm...@googlegroups.com
Ok I will try at some point over the next week. I suppose I could try pairing a Nav as well, just to see if it works. My application is much further along for Windows than Mac/Linux so I am trying to get a release version out for Win first.



Thomas Perl

unread,
Sep 26, 2014, 4:38:07 PM9/26/14
to psm...@googlegroups.com
There's also a WIP patch with Nav Controller support as pull request,
still needs some code review, though (hint, hint):

https://github.com/thp/psmoveapi/pull/118


HTH :)
Thomas

Kieran Coulter

unread,
Sep 26, 2014, 5:14:28 PM9/26/14
to psm...@googlegroups.com
Perfect! Does anyone know how SharpShooter support is going?

I suppose it's something that can be delayed until Nav support is completed and working well. After all, the full functionality of SharpShooter is dependent on attaching a Move and a Nav anyways. 

I will try to finally set aside some time to contribute on these two things, if other people are handling Win 8 support already :)

Alexander Nitsch

unread,
Sep 26, 2014, 5:36:23 PM9/26/14
to psm...@googlegroups.com
> Does anyone know how SharpShooter support is going?
>
> I suppose it's something that can be delayed until Nav support is
> completed and working well. After all, the full functionality of
> SharpShooteris dependent on attaching a Move and a Nav anyways.

I pointed you to the test program for EXT devices. It also covers the
Sharp Shooter. Not sure what else to add there. Maybe the pump action --
but that is just a matter of checking the Move's T button, see my
documentation in the moveonpc wiki's Sharp Shooter section [1].
Everything else is demoed in the test program. The remaining buttons are
handled just like pressing them on the Move.

The Sharp Shooter does not do anything Nav-specific. The Nav just sits
in the plastic gun, but it does not interact with the gun (unlike the Move).


Alex

[1] http://code.google.com/p/moveonpc/wiki/SharpShooter#Trigger

Kieran Coulter

unread,
Sep 26, 2014, 6:24:41 PM9/26/14
to psm...@googlegroups.com
Thanks for that info, I had only bought the hardware to prototype VR applications so I did very little with it while waiting for Oculus DK2.

Does anyone else on the list have an Oculus? I will be looking for help testing eventually.


Jason Cosgrove

unread,
Oct 3, 2014, 3:25:44 AM10/3/14
to psm...@googlegroups.com
@ kieran.coulter

 Yes I have a DK2 PS Move ,Navi  & the sharpshooter and would be happy to help test.
Ive only just joined this group but ive been trying to get my sharpshooter working on both Windows and Linux MINT without success.
Ive been as a regular of this thread for a while now AKA AlphawolF.


Im a 3D artist /game modder/Indie VR dev. 
Sold all my PS3 games around a year ago but kept the my MOVE gear purely because I loved the performance. and hoped Somebody smart would be able solve this issue of PC compatibility. 

Alexander Nitsch

unread,
Oct 3, 2014, 4:59:34 AM10/3/14
to psm...@googlegroups.com
> Ive only just joined this group but ive been trying to get my
> sharpshooter working on both Windows and Linux MINT without success.

What problems have you been experiencing?


Alex

Alexander Nitsch

unread,
Jan 20, 2015, 8:37:14 AM1/20/15
to psm...@googlegroups.com
> Ok Everyone, I don't believe I'm dreaming but I have just been able to get
> my PSMove connected on my Windows 8.1 x64 PC!

Gil, since none of the Windows 8 users here seem too interested in sharing
their results in reproducing your steps, I borrowed a Windows 8 computer
from a colleague of mine and tried it myself ...


> I was at the point where I could get the controller to show up in the
> Control Panel list of devices, but it would never fully connect. Sometimes
> it would disappear. So you at least need to be able to get the controller
> to partially connect using all the old methods.

I could not even get the Move or the Navigation controller to show up in
the list of Bluetooth devices. I tried with four different Bluetooth
adapters which work properly with the controllers on every other OS I have
tried. I verified that the exact same setup is working on Windows 7, but
the controllers will simply not show up when trying to add new Bluetooth
devices.

Was there anything special required on Windows 8 to make this happen for
you? Other Bluetooth devices show up as expected.


Alex


gilc

unread,
Jan 21, 2015, 7:47:09 PM1/21/15
to psm...@googlegroups.com, nit...@ht.tu-berlin.de
I also tried several different BT adapters and ended up with the Targus (Broadcom 2046 Bluetooth 2.1 USB UHE Dongle) as listed in the second post of the thread.

But I did not do anything special to get the Bluetooth device to show up in Control Panel and in the Device Manager. I did have to try adding it several times following the old instructions. Once the BT adapter showed up, I then went into the Registry editor and set it up as I described in my post. I have been able to get the PSMove to connect without problem once this is done. As mentioned before, this even worked on my Surface Pro tablet. 

Here is the driver info from Device Manager: 
Driver Provider: Broadcom Corporation
Driver Date: 10/18/2013
Driver Version: 12.0.0.8047

Alexander Nitsch

unread,
Jan 23, 2015, 2:05:21 AM1/23/15
to psm...@googlegroups.com
> But I did not do anything special to get the Bluetooth device to show up in
> Control Panel and in the Device Manager.

I see. Guess I will have to try with another Windows 8 box then just to
see if that makes any difference.


Alex

NoxWings

unread,
Jan 24, 2015, 3:14:20 PM1/24/15
to psm...@googlegroups.com
Hi! 

I've been inactive here for quite some time, but I think I can try gils procedure next week when I get my psmoves back.

I'm interested to get this thing working to test the razer hydra emulation (enabling psmove into FreePIE) in windows 8. 


Oculus fan here too ^^ and I think psmove could be a nice cheap alternative specially knowing how much money we will have to spend on our computers to get those solid 90fps.



Alex

Chadwick Boulay

unread,
Feb 7, 2015, 5:22:23 PM2/7/15
to psm...@googlegroups.com
I have 2 machines: A desktop with an ASUS USB-BT400 and a MacBookPro in Bootcamp, both running Win 8.1 x64.

The desktop recognized the motion controller when connected by USB and showed hints of connecting an additional motion controller via bluetooth, but I did not have those same registry entries. I was not connected long enough to see if I could check a box in the services tab. I'll try again on Tuesday.

The MBP only showed "unknown" when I tried to pair over bluetooth. Then I worked on some other things (related to PS3EYEDriver and psmoveapi for 64-bit), worked in OS X a little, went back into Windows, and now Windows was recognizing the motion controller when attempting to pair in Bluetooth, and the device properties services tab had the box for keyboard, mouse hid etc checked. I then found those registry entries you mentioned and made the suggested change. I was then able to pair using psmove-pair-win. Magnetic calibration, example, etc all worked.

Note that I couldn't test tracking in MBP because the test_tracker app fails due to libusb picking up some apple tracker like my trackpad, but that's separate entirely.

tl;dr: It worked!

Alexander Nitsch

unread,
Feb 8, 2015, 6:42:58 AM2/8/15
to psm...@googlegroups.com
> I then found those registry entries you mentioned and made the
> suggested change. I was then able to pair using psmove-pair-win.
> Magnetic calibration, example, etc all worked.

Great news! And thanks for the feedback. It seems we are very slowly
getting to the point where pairing on Windows is not a big pain in the
ass. ;)

Do you think you could (maybe together with Gil) prepare a simple
step-by-step description of the necessary steps so that we can add that
to the README.win32? Maybe even hack a little tool that tries to
automate the procedure. That would be awesome.


Alex

Chadwick Boulay

unread,
Feb 9, 2015, 9:11:54 PM2/9/15
to psm...@googlegroups.com, nit...@ht.tu-berlin.de
I'm not sure if it is ready to be automated... but here's what I have so far.

1. I could not pair to my USB Bluetooth dongle in Windows because hid_get_feature_report could not get the device's bluetooth address (see here). It might be because I was using 64-bit binaries to get the feature report? This needs further testing.
2. I took the bluetooth dongle to my MacbookPro. OS X (at least Yosemite) disables its internal bluetooth receiver when you plug in a dongle, and activates the dongle.
3. I compiled psmoveapi for OSX and used the psmovepair tool to pair the controller to the dongle.

I used my Macbook Pro in Bootcamp Windows 8.1 Pro to generate the following images, but it was using the dongle (see first image) and I also used this same dongle in a Desktop running Windows 8.1 Pro.


At this point, when I opened the "Add Devices and Printers" window, clicked "Add Device", and pressed the PS (pair) button on the move controller, only 2 "unknown device"s were found.

If I connected the controller via USB then it did connect one motion controller, but this did not improve the success of "Add Device".

I then ran Alex's psmove-pair-win utility. I still couldn't pair, but now a sometimes solid, sometimes gray bluetooth-connected motion controller appeared in the device list.


I think I had to press the PSMove pair button to get the entry in the device properties services tab to show up. After it was available, I checked the box then clicked OK. Then I opened Regedit, and found the below entry and changed the value of VirtuallyCabled to 1.

I don't know if this next part is necessary. At this point I still couldn't pair. So I tried "Remove Device" on the USB controller when it was connected via USB. Now if I plug or unplug the PSMove controller via USB it doesn't know show up in the devices list in "Devices and Printers".

Then I rebooted. Then I ran psmove-pair-win.exe again and pressed the PS button and it paired on the first try.


Thomas Perl

unread,
Feb 15, 2015, 4:47:30 AM2/15/15
to psm...@googlegroups.com
Nice work!

The registry setup (VirtuallyCabled) we can probably automate in the pairing tool? Is the reboot always necessary, or can we - for example - shut down the Bluetooth service and restart it, like we do on Linux and OS X (and without having to reboot the whole machine)?

Great to see that we finally seem to be able to get Windows pairing to work deterministically, even if the procedure might be tedius (but it's better than playing the lottery with trial'n'error).


Thanks,
Thomas


Mehtab Alam Siddiqui

unread,
Jul 5, 2019, 12:30:40 PM7/5/19
to psmove
Hello

I spent 5 days for my psmove to pair with windows 10 Pro 1903 Fall creators 

I download 100s of bluetooth drivers on pc .. and driver updating softwares nothing seemed to work

But This little trick did the thing.. however I did not had the controller key listed as 00190e0c740500138a92a9fc so I made a key which I found on psmoveservice

then inside the key I created dword value  ConnectionAuthenticated and VirtuallyCabled and put the 0x00000001 value in virtuallycabled

and BOOM!!! my ps move is connected to the windows fall creator which I found has the bug for bluetooth as of today..

I hope there is a way to add this in psmove services I am using ZCM1U also I changed my bluetooth drivers from www.catalog.update.microsoft.com using VID AND PID on this website..

Thanks a lot for your suggestion 
Reply all
Reply to author
Forward
0 new messages