The open source OpenXR runtime

d/wmr: Add HP VR1000 support

authored by

Christoph Haag and committed by
Jakob Bornecrantz
196bf242 3d366b92

+11 -2
+1
src/xrt/drivers/wmr/wmr_common.h
··· 35 35 #define WMR_CONTROLLER_RIGHT_PRODUCT_STRING "Motion controller - Right" 36 36 37 37 #define HP_VID 0x03f0 38 + #define VR1000_PID 0x0367 38 39 #define REVERB_G1_PID 0x0c6a 39 40 #define REVERB_G2_PID 0x0580 40 41 #define REVERB_G2_CONTROLLER_PID 0x066a /* On 0x045e Microsoft VID */
+1
src/xrt/drivers/wmr/wmr_hmd.c
··· 90 90 91 91 const struct wmr_headset_descriptor headset_map[] = { 92 92 {WMR_HEADSET_GENERIC, NULL, "Unknown WMR HMD", NULL, NULL, NULL}, /* Catch-all for unknown headsets */ 93 + {WMR_HEADSET_HP_VR1000, "HP Reverb VR Headset VR1000-1xxx", "HP VR1000", NULL, NULL, NULL}, /*! @todo init funcs */ 93 94 {WMR_HEADSET_REVERB_G1, "HP Reverb VR Headset VR1000-2xxx", "HP Reverb", wmr_hmd_activate_reverb, 94 95 wmr_hmd_deactivate_reverb, wmr_hmd_screen_enable_reverb}, 95 96 {WMR_HEADSET_REVERB_G2, "HP Reverb Virtual Reality Headset G2", "HP Reverb G2", wmr_hmd_activate_reverb,
+1
src/xrt/drivers/wmr/wmr_hmd.h
··· 34 34 enum wmr_headset_type 35 35 { 36 36 WMR_HEADSET_GENERIC, 37 + WMR_HEADSET_HP_VR1000, 37 38 WMR_HEADSET_REVERB_G1, 38 39 WMR_HEADSET_REVERB_G2, 39 40 WMR_HEADSET_SAMSUNG_XE700X3AI,
+8 -2
src/xrt/drivers/wmr/wmr_prober.c
··· 56 56 { 57 57 switch (device->vendor_id) { 58 58 case HP_VID: 59 - if (device->product_id != REVERB_G1_PID && device->product_id != REVERB_G2_PID) { 59 + if (device->product_id != REVERB_G1_PID && device->product_id != REVERB_G2_PID && 60 + device->product_id != VR1000_PID) { 60 61 return false; 61 62 } 62 63 64 + 63 65 if (device->product_id == REVERB_G1_PID) 64 66 *out_hmd_type = WMR_HEADSET_REVERB_G1; 65 - else 67 + else if (device->product_id == REVERB_G2_CONTROLLER_PID) 66 68 *out_hmd_type = WMR_HEADSET_REVERB_G2; 69 + else if (device->product_id == VR1000_PID) 70 + *out_hmd_type = WMR_HEADSET_HP_VR1000; 71 + else 72 + return false; 67 73 68 74 *out_interface = 0; 69 75 return true;