The open source OpenXR runtime

a/vive + d/survive + d/vive: Add Bigscreen Beyond detection + refine Index detection

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2585>

authored by

Beyley Cardellio and committed by
Marge Bot
d85ca13d 4d8d91a4

+9 -1
+4 -1
src/xrt/auxiliary/vive/vive_common.c
··· 22 22 { 23 23 enum VIVE_VARIANT variant = VIVE_UNKNOWN; 24 24 25 - if (strcmp(model_number, "Utah MP") == 0) { 25 + if (strcmp(model_number, "Utah MP") == 0 || strcmp(model_number, "Index") == 0) { 26 26 variant = VIVE_VARIANT_INDEX; 27 27 U_LOG_D("Found Valve Index HMD"); 28 28 } else if (strcmp(model_number, "Vive MV") == 0 || strcmp(model_number, "Vive MV.") == 0 || ··· 36 36 strcmp(model_number, "VIVE_Pro 2 PV") == 0 || strcmp(model_number, "Vive_Pro 2 PV") == 0) { 37 37 variant = VIVE_VARIANT_PRO2; 38 38 U_LOG_D("Found HTC Vive Pro 2 HMD"); 39 + } else if (strcmp(model_number, "Beyond") == 0) { 40 + variant = VIVE_VARIANT_BEYOND; 41 + U_LOG_D("Found Bigscreen Beyond HMD"); 39 42 } else { 40 43 U_LOG_W("Failed to parse Vive HMD variant!\n\tfirmware.model_[number|name]: '%s'", model_number); 41 44 }
+1
src/xrt/auxiliary/vive/vive_common.h
··· 45 45 VIVE_VARIANT_PRO, 46 46 VIVE_VARIANT_INDEX, 47 47 VIVE_VARIANT_PRO2, 48 + VIVE_VARIANT_BEYOND, 48 49 }; 49 50 50 51 #define HTC_VID 0x0bb4
+3
src/xrt/drivers/survive/survive_driver.c
··· 956 956 case VIVE_VARIANT_PRO: snprintf(survive->base.str, XRT_DEVICE_NAME_LEN, "HTC Vive Pro (libsurvive)"); break; 957 957 case VIVE_VARIANT_INDEX: snprintf(survive->base.str, XRT_DEVICE_NAME_LEN, "Valve Index (libsurvive)"); break; 958 958 case VIVE_VARIANT_PRO2: snprintf(survive->base.str, XRT_DEVICE_NAME_LEN, "HTC Vive Pro 2 (libsurvive)"); break; 959 + case VIVE_VARIANT_BEYOND: 960 + snprintf(survive->base.str, XRT_DEVICE_NAME_LEN, "Bigscreen Beyond (libsurvive)"); 961 + break; 959 962 case VIVE_UNKNOWN: snprintf(survive->base.str, XRT_DEVICE_NAME_LEN, "Unknown HMD (libsurvive)"); break; 960 963 } 961 964 snprintf(survive->base.serial, XRT_DEVICE_NAME_LEN, "%s", survive->hmd.config.firmware.device_serial_number);
+1
src/xrt/drivers/vive/vive_device.c
··· 1206 1206 case VIVE_VARIANT_PRO: snprintf(d->base.str, XRT_DEVICE_NAME_LEN, "HTC Vive Pro (vive)"); break; 1207 1207 case VIVE_VARIANT_PRO2: snprintf(d->base.str, XRT_DEVICE_NAME_LEN, "HTC Vive Pro 2 (vive)"); break; 1208 1208 case VIVE_VARIANT_INDEX: snprintf(d->base.str, XRT_DEVICE_NAME_LEN, "Valve Index (vive)"); break; 1209 + case VIVE_VARIANT_BEYOND: snprintf(d->base.str, XRT_DEVICE_NAME_LEN, "Bigscreen Beyond (vive)"); break; 1209 1210 case VIVE_UNKNOWN: snprintf(d->base.str, XRT_DEVICE_NAME_LEN, "Unknown HMD (vive)"); break; 1210 1211 } 1211 1212 snprintf(d->base.serial, XRT_DEVICE_NAME_LEN, "%s", d->config.firmware.device_serial_number);