Alpha Release #8.1.0
Pre-releaseImportant Notes
This release marks an important milestone for PSMoveService.
The first major change is the switch to a C-99 style client interface. This won't mean much to most of you, but this is important because it makes it easier for us to write bindings for other programming languages. cboulay has already written a python wrapper. We're planning on making a C# binding next since that will enable a more tools. I'm going to be working over the few weeks to do a documentation pass, starting with the new C-99 client interface. Also if you use PSMoveFreePIEBridge you'll need to update to release 12 since it uses the new client interface.
https://bitbucket.org/hawkinse/psmovefreepiebridge/downloads/PSMoveFreepieBridge-Release12.zip
The other major change coming soon has to do with VR system integration. SteamVR has currently had a privileged status in the PSMoveService project. This made sense as we were getting this project off the ground. However there are a have been many other VR system plugin options we've wanted to support at some point. As such this will be the last release of PSMoveService that contains the SteamVR plugin. But worry not! The SteamVR plugin will live on at it's new location:
https://github.com/HipsterSloth/PSMoveSteamVRBridge
If you are a SteamVR user this new repository will most likely be where you want to go get new releases. It will include the needed PSMoveService binaries so you won't need to go to two different repos. I'll post an annoucement in the google group and update the README here once PSMoveSteamVRBridge is open for business.
Updated openvr plugin to OpenVR 1.0.6 (was previously using 1.0.5)
- Probably want to make sure your SteamVR install is up to date
Created a C-99 style interface for PSMoveService (by cboulay/hipstersloth)
- Use PSMoveClient_CAPI.h, PSMoveClient_CAPI.lib/PSMoveClient_CAPI.dll
- See test_console_CAPI.cpp for example of using blocking API (a.k.a. easy mode)
- See driver_psmoveservice.cpp or PSMoveConfigTool for example of async API (a.k.a classic mode)
- More documentation coming soon!
Removed old C++ client interface for PSMoveService (by hipstersloth)
- Added PSMoveClient.h/.cpp that implements client backend (replaces ClientPSMoveAPI interface)
- Updated PSMoveClient_CAPI.h to use new PSMoveClient interface
- Deleted ClientPSMoveAPI.h/.cpp
- Deleted ClientGeometry.h/.cpp
- Deleted ClientHMDView.h/.cpp
- Deleted ClientControllerView.h/.cpp
- Deleted ClientTrackerView.h/.cpp
Created python wrapper for C-API using python CFFI library (by cboulay)
- Created sample psmoveclient.py
Created matlab framework for test SRUKF kalman filter (by cboulay)
- See filter_datafiles.m
Battery status work now shows correctly in SteamVR (by Zelmon)
- Hover over controller icon in steamvr status window to see battery level / charging status
PSNavi D-pad up/down mapped to HMD alignment / orientation recenter (by Zelmon)
If the PSMove controller has a PSNavi child the HMD alignment and
controller orientation recenter are triggered by D-pad up and down
(after being held for one second) if there is nothing mapped to them
in steamvr.vrsettings.
The defaults for PSNavi D-pad up / down have been changed to button id (by Zelmon)
10 and touch direction none so that they do not conflict.
Add a quick link between color calibration and test tracking (by Zelmon)
To more easily see if the coolour calibration is good, links have been
added to switch between the color calibration window and the test
tracking tracker video feeds. This includes an extra button to see the
tracking video feed with all controllers enabled.
Added the option to assign a button to the diagonals of the touchpad (by Zelmon)
The button mapping options for the touchpad directions was limited to
up/down/left/right. This adds the diagonal combinations as possible
mapping options.
Assorted UI tweaks (by hipstersloth)
- Fixed un-initialized m_gotoTrackingVideoALL variable
- Updated calibration and test screens with more specific menu header labels
- Fixed some menu sizings
- Renamed "Test Tracker Video Feed" to "Test Video Feed"
- Renamed "Test Tracking" to "Test Tracking Pose"
- Renamed "Video Feed" to "Test Tracking Video"
Assorted UI fixes for magnetometer calibration (by hipstersloth)
- Initialize bounding box correctly when only one sample is available
- Handle ellipsoid fit error computations when one axis has zero-extents
Fixing 32-bit build (by hipstersloth)
- The platform device api used to query CL-eye driver status got refactored and I never updated the dependent code