Monado OpenXR Runtime
Data Fields
psmv_device Struct Reference

A single PlayStation Move Controller. More...

Collaboration diagram for psmv_device:
Collaboration graph
[legend]

Data Fields

struct xrt_device base
 
struct os_hid_devicehid
 
struct xrt_tracked_psmvball
 
struct os_thread_helper oth
 
struct {
   int64_t   resend_time
 
   struct xrt_colour_rgb_u8   led
 
   uint8_t   rumble
 
wants
 What should be set. More...
 
struct {
   struct xrt_colour_rgb_u8   led
 
   uint8_t   rumble
 
state
 What is currently set on the device. More...
 
struct {
   union {
      struct psmv_parsed_calibration_zcm1   zcm1
 
      struct psmv_parsed_calibration_zcm2   zcm2
 
   } 
 
   struct m_imu_pre_filter   prefilter
 
calibration
 
struct {
   struct os_mutex   lock
 Lock for last and fusion. More...
 
   struct psmv_parsed_input   last
 Last sensor read. More...
 
   struct {
      struct xrt_quat   rot
 
      struct xrt_vec3   rotvec
 
      struct imu_fusion *   fusion
 
      struct {
         struct xrt_vec3   accel
 
         struct xrt_vec3   gyro
 
      }   variance
 
   }   fusion
 
}; 
 
struct {
   struct xrt_vec3   accel
 Last adjusted accelerator value. More...
 
   struct xrt_vec3   gyro
 Last adjusted gyro value. More...
 
read
 
uint16_t pid
 
bool print_spew
 
bool print_debug
 
struct {
   bool   control
 
   bool   calibration
 
   bool   last_frame
 
   bool   fusion
 
gui
 

Detailed Description

A single PlayStation Move Controller.

A note about coordinate system. If you stand the controller in front of you so that the ball is pointing upward, buttons towards you. Then think of the ball as a head that is looking away from you. The buttons then are is it's back, the trigger the front.

Translated to axis that means the ball is on the Y+ axis, the buttons on the Z+ axis, the trigger on the Z- axis, the USB port on the Y- axis, the start button on the X+ axis, select button on the X- axis.

Field Documentation

◆ accel

struct xrt_vec3 psmv_device::accel

Last adjusted accelerator value.

◆ gyro

struct xrt_vec3 psmv_device::gyro

Last adjusted gyro value.

◆ last

struct psmv_parsed_input psmv_device::last

Last sensor read.

◆ lock

struct os_mutex psmv_device::lock

Lock for last and fusion.

◆ state

struct { ... } psmv_device::state

What is currently set on the device.

◆ wants

struct { ... } psmv_device::wants

What should be set.


The documentation for this struct was generated from the following file: