Finishing up support the the ZCM2 PSMove controller#372
Merged
Conversation
* Added "authenticate controller" step using BluetoothAuthenticateDeviceEx
* Parse gyro and accelerometer calibration values (new calibration format for ZCM2) * Separated ZCM1 vs ZCM2 input packet handling cases - psmove_connect_internal (magnetometer initialization) - psmove_poll - psmove_get_ext_data - psmove_get_buttons - psmove_is_ext_connected - psmove_send_ext_data - psmove_get_temperature - psmove_get_trigger - psmove_get_half_frame - psmove_get_accelerometer - psmove_get_gyroscope - psmove_get_magnetometer * psmove_orientation_new will default OrientationFusion_MadgwickIMU for the ZCM2 (since it doesn't have a magnetometer)
|
You mean union of PSMove_ZCM1_Data_Input and PSMove_ZCM2_Data_Input, right? |
Contributor
Author
|
@yuripourre Oops! Yes "union of PSMove_ZCM1_Data_Input and PSMove_ZCM2_Data_Input". Sorry that was a typo on my part. |
Handle unknown errors from BluetoothAuthenticateDeviceEx. Not handling these errors could cause a hang. Fixed an incorrect cast of the callback parameters in bluetooth_auth_callback.
Fixed bugs in bluetooth authentication of ZCM2U on Windows
Allow BluetoothAuthenticateDeviceEx errors to fall through again.
Owner
|
Thanks a lot for working on this, @HipsterSloth 👍 |
Contributor
Author
|
Happy to help! |
|
i get this message in my CECH-ZCM1E unit
is ok? greetings |
Collaborator
|
Please continue the discussion in issue #452. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I've been working with @nitsch to get the new ZCM2 PSMoveController working in PSMoveService. I wanted to port the relevant subset of that work over to psmoveapi. Specifically the controller calibration parsing, input packet parsing, and controller pairing in Windows. I've done some preliminary testing on Windows to verify controller pairing and verifying that the orientation work in the test_opengl programs and also updated the calibration dumping code to show ZCM2 calibration fields we are currently interpreting. Given that this is a big enough change I would love any feedback on the implementation.
The single biggest question I have is if you are ok with the PSMove_Data_Input getting turned into a union of two structs (PSMove_ZCM1_Data_Input and PSMove_ZCM1_Data_Input) or if you would prefer the common fields shared in PSMove_Data_Input and only the differences in the union. This would simplify some changes, but make some sizeof()s a bit more tricky.