Christoph Haag
a6935dcc4b
c/main: Check surface counter flags
2022-01-13 23:07:46 +01:00
Christoph Haag
8fe465e88f
c/main: Make VkDisplayKHR from direct mode accessible in target swapchain
2022-01-13 23:07:34 +01:00
Christoph Haag
73d75aa522
c/main: cache VkDisplayKHR in wayland direct mode window
2022-01-13 23:07:16 +01:00
Christoph Haag
3eecb0f991
aux/vk: Add vkGetPhysicalDeviceSurfaceCapabilities2EXT function
2022-01-13 23:07:16 +01:00
Christoph Haag
693aceb755
aux/vk: Add VK_EXT_display_control functions
2022-01-13 23:07:16 +01:00
Christoph Haag
ec64a856b4
aux/vk: Use VK_DEBUG instead of U_LOG for vk device ext selection
2022-01-13 23:07:01 +01:00
Christoph Haag
8e020fac2d
c/main: Add and enable VK_EXT_display_control optional device ext
2022-01-13 23:06:40 +01:00
Christoph Haag
b7d179b1b3
c/main: Add display surface counter optional vk instance ext
2022-01-13 23:06:15 +01:00
Christoph Haag
ff4d492b74
c/util: add optional vk instance extensions
2022-01-13 23:05:38 +01:00
Christoph Haag
ce6339e237
c/main: Make more use of string list for device ext
2022-01-13 23:05:06 +01:00
Christoph Haag
f34816872c
c/main: Use u_string_list for vk extensions
2022-01-13 23:04:34 +01:00
Christoph Haag
171a3830b9
u/string_list: Add constructor from existing list
2022-01-13 23:04:17 +01:00
Christoph Haag
ee366e16e5
c/main: rename extensions num -> count
2022-01-13 23:03:56 +01:00
Christoph Haag
13e3db6128
aux/vk: Add vkEnumerateInstanceExtensionProperties
2022-01-13 23:03:38 +01:00
Christoph Haag
7174545ee8
aux/vk: remove duplication of vk_get_loader_functions functionality
2022-01-13 23:03:38 +01:00
Christoph Haag
1ae1e695e2
c/util: Fix device extension list comment
2022-01-13 23:03:25 +01:00
Christoph Haag
20f265d9ae
u/string_list: Add contains function
2022-01-13 22:37:25 +01:00
Christoph Haag
07ddac523c
build: Build u_string_list with meson too
2022-01-13 22:37:25 +01:00
Christoph Haag
8d5847d5a9
comp: Fix running with XRT_COMPOSITOR_XCB_FULLSCREEN=1
...
It required XRT_COMPOSITOR_XCB_DISPLAY to be set to a valid display or the
swapchain creation would fail because the requested width x height was 0x0.
Now the first display with a size other than 0x0 is selected when the current
selected display is 0x0.
fixes #148
2022-01-13 20:50:48 +00:00
Christoph Haag
77f19161fb
aux/binding: extract monado_binding earlier from list
2022-01-13 14:16:20 +01:00
Jakob Bornecrantz
d8cce715da
u/bindings: Remove duplicate paths in by_length
2022-01-13 14:01:44 +01:00
Christoph Haag
435503f2c4
aux/bindings: Further cleanup, use object members for Component
...
instead of passing json data around
2022-01-13 14:01:44 +01:00
Christoph Haag
450eb182d0
aux/bindings: Minor refactor of generator scripts
2022-01-13 14:01:44 +01:00
Christoph Haag
7917110e1c
aux/bindings: Remove unnecessary pathgroup parameter
2022-01-12 23:03:30 +01:00
Christoph Haag
595ca11c68
aux/bindings: Don't generate invalid code for missing monado_binding
...
The closing } for a binding template was not written.
2022-01-12 23:03:30 +01:00
Christoph Haag
47801859e7
aux/bindings: Replace "feature" with "component"
2022-01-12 23:02:53 +01:00
Christoph Haag
d0cdb8fcd3
st/oxr: Fix subactoin typo in comment
2022-01-12 23:02:53 +01:00
Christoph Haag
a3cd52ae8f
aux/bindings: Actually generate code to convert xrt_input_name enum
2022-01-12 23:02:53 +01:00
Christoph Haag
153280607f
aux/bindings: Split function to convert input/output enums into two
...
xrt_input_name and xrt_output_name are actual different types.
2022-01-12 23:02:53 +01:00
Christoph Haag
d36123927d
comp: avoid an unnecessary struct copy for print modes
2022-01-12 21:57:18 +01:00
Christoph Haag
3dfec5f1ab
comp: Don't omit first mode in debug print
...
Also avoid an unnecessary struct copy.
2022-01-12 21:53:47 +01:00
Christoph Haag
cce2094290
t/steamvr: Fix build on meson 0.61.0
...
Context: https://github.com/mesonbuild/meson/issues/4717
Using a directory directory as input in a custom_target was deprecated and printed the message
"This will become a hard error in the future."
It did become a hard error now.
Fixes error
../src/xrt/targets/steamvr_drv/meson.build:52:0: ERROR: File resources does not exist.
on meson 0.61.0
2022-01-11 20:23:39 +01:00
Antonio Ospite
2b456da531
c/client: make sure layer_commit passes complete frames in comp_gl_client
...
Make sure `layer_commit` passes on complete frames in `comp_gl_client.c`
even when EGL_ANDROID_native_fence_sync is not available.
The `insert_fence` function defined in `comp_egl_client.c` and passed as
argument to `comp_egl_client::client_gl_compositor_init` is only setting
up a proper fence when EGL_ANDROID_native_fence_sync is available,
resulting in a no-op otherwise.
However the fact that the insert_fence function is still valid results
in the `glFlush` workaround from
`comp_gl_client::client_gl_compositor_layer_commit` not kicking in.
To fix this define a NULL `insert_fence` function when
EGL_ANDROID_native_fence_sync is not available, and while at it turn the
`glFlush` workaround into a `glFinish` for extra safety.
This ensures that frames are always complete after
`client_gl_compositor_layer_commit` has been called.
2022-01-06 14:54:55 +00:00
Jarvis Huang
ac30e798d6
ipc/android: Extend timeout duration
2022-01-05 14:59:39 +00:00
Jarvis Huang
97100821d2
ipc/android: Add shutdown mechanism back
2022-01-05 14:59:39 +00:00
Jarvis Huang
9339e6022f
ipc/android: Refactor and cleanup IPC glue code
2022-01-05 14:59:39 +00:00
Jarvis Huang
3bb151e4bf
ipc/android: Avoid race condition/blocking main thread
2022-01-05 14:59:39 +00:00
Jarvis Huang
f575a7a1a9
ipc/android: Remove watchdog delay if surface comes from client
...
When surface comes from client, it's not reuseable after
client exits. Removing the timeout so runtime can release all the
graphcis resources associated with surface.
2022-01-05 14:59:39 +00:00
Jarvis Huang
52cb2ef123
d/android: Stop thread function when device destoryed
2022-01-05 14:59:39 +00:00
Jarvis Huang
6a61ed5695
ipc/android: Stop runtime service when no clients connected
2022-01-05 14:59:39 +00:00
Jakob Bornecrantz
ec537eb3aa
st/oxr: Refactor extension parsing and verify extensions
2022-01-04 22:04:12 +00:00
Jakob Bornecrantz
fe9191a708
st/oxr: Sort extension list
2022-01-04 18:58:35 +00:00
Moses Turner
683dc4ea56
gui: add SLAM Stereo option to calibrate gui
2022-01-04 18:19:17 +00:00
Moses Turner
17034f0283
aux/tracking: assert on fisheye mat size for fisheye path
2022-01-04 18:19:17 +00:00
Simon Zeni
8b1d432b79
d/ht_ctrl_emu: fix crash and truncation warning
2021-12-24 15:19:51 -05:00
Mateo de Mayo
7e0d93e3fb
tests: Add tests for quatexpmap interface functions and minor changes in their docs
2021-12-22 12:16:27 -03:00
Mateo de Mayo
70576c2f02
t/slam: Implement basic prediction from last tracked poses
2021-12-21 11:43:17 +00:00
Mateo de Mayo
090e465dda
external: Add semver to slam_tracker (1.0.0) and pose timestamps
2021-12-21 11:43:17 +00:00
Mateo de Mayo
88a3848b5a
d/wmr: Map wmr_source data to monotonic clock
2021-12-21 11:43:17 +00:00
Mateo de Mayo
74e149159b
t/slam: Add SLAM_SUBMIT_FROM_START envvar
...
Useful for setups that need some tuning to their sensors before sending
data to a SLAM system.
Removes the submit_frames property from wmr_camera as this replaces it.
2021-12-21 11:43:17 +00:00
Mateo de Mayo
1c7323f1c2
d/rs: Generalize laser emitter option setup to any rs option
2021-12-21 11:43:17 +00:00
Mateo de Mayo
fa431fc010
d/rs: Map all rs_hdev timestamps to monotonic clock
2021-12-21 11:43:17 +00:00
Mateo de Mayo
76d7729e4d
m/vec3: Add operator/ for scalar division
2021-12-21 11:43:17 +00:00
Mateo de Mayo
bcb4cd82cd
aux/math: Use dt in calculation of ang vel between quat diference
2021-12-21 11:43:17 +00:00
Mateo de Mayo
3e8a070e93
u/var: Add u_var_combo
2021-12-21 11:43:17 +00:00
James Hogan
7ee8d1ac5d
xrt: Revert xrt_view::display::{w|h}_pixels changes
...
Commit 749723f0ba
("xrt: Remove xrt_view::display::{w|h}_meters")
accidentally removed some references to {w|h}_pixels as well as
{w|h}_meters. This resulted in recommended view image sizes of 0px*0px.
Revert those changes without reverting the rest of the commit.
Fixes: 749723f0ba
("xrt: Remove xrt_view::display::{w|h}_meters")
2021-12-20 23:00:40 +00:00
Moses Turner
5635cd3885
ipc: fix typo - connec -> connect
2021-12-20 06:21:36 -06:00
Simon Zeni
4e4e6708bc
Revert "d/survive: ajust timestamp from button event"
...
This reverts commit b396c200d0
.
The issue has been fixed in libsurvive [1]
[1]: https://github.com/cntools/libsurvive/pull/250
2021-12-17 13:40:53 -05:00
Moses Turner
a19f13171b
meson: use cjson_include with depthai driver
2021-12-14 14:12:42 +00:00
Christoph Haag
b7c8a6faa5
d/ht_ctrl_emu: work around truncation warning
...
../src/xrt/drivers/ht_ctrl_emu/ht_ctrl_emu.cpp: In function ‘int cemu_devices_create(xrt_device*, xrt_device*, xrt_device**)’:
../src/xrt/drivers/ht_ctrl_emu/ht_ctrl_emu.cpp:439:102: warning: ‘ Left Hand’ directive output may be truncated writing 10 bytes into a region of size between 1 and 256 [-Wformat-truncation=]
439 | int ret = snprintf(cemud[i]->base.str, XRT_DEVICE_NAME_LEN, i ? "%s Right Hand" : "%s Left Hand", hands->str);
| ^~~~~~~~~~
../src/xrt/drivers/ht_ctrl_emu/ht_ctrl_emu.cpp:439:35: note: ‘snprintf’ output between 11 and 266 bytes into a destination of size 256
439 | int ret = snprintf(cemud[i]->base.str, XRT_DEVICE_NAME_LEN, i ? "%s Right Hand" : "%s Left Hand", hands->str);
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/xrt/drivers/ht_ctrl_emu/ht_ctrl_emu.cpp:439:84: warning: ‘ Right Hand’ directive output may be truncated writing 11 bytes into a region of size between 1 and 256 [-Wformat-truncation=]
439 | int ret = snprintf(cemud[i]->base.str, XRT_DEVICE_NAME_LEN, i ? "%s Right Hand" : "%s Left Hand", hands->str);
| ^~~~~~~~~~~
../src/xrt/drivers/ht_ctrl_emu/ht_ctrl_emu.cpp:439:35: note: ‘snprintf’ output between 12 and 267 bytes into a destination of size 256
439 | int ret = snprintf(cemud[i]->base.str, XRT_DEVICE_NAME_LEN, i ? "%s Right Hand" : "%s Left Hand", hands->str);
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2021-12-14 14:58:33 +01:00
Christoph Haag
2b101e6ffa
d/wmr: don't print NULL value in error message
...
In file included from ../src/xrt/drivers/wmr/wmr_config.h:15,
from ../src/xrt/drivers/wmr/wmr_config.c:16:
In function ‘wmr_config_parse_camera_config’,
inlined from ‘wmr_config_parse_calibration’ at ../src/xrt/drivers/wmr/wmr_config.c:422:8,
inlined from ‘wmr_hmd_config_parse’ at ../src/xrt/drivers/wmr/wmr_config.c:477:13:
../src/xrt/auxiliary/util/u_logging.h:84:25: warning: ‘%s’ directive argument is null [-Wformat-overflow=]
84 | u_log(__FILE__, __LINE__, __func__, level, __VA_ARGS__); \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/xrt/auxiliary/util/u_logging.h:220:38: note: in expansion of macro ‘U_LOG_IFL’
220 | #define U_LOG_IFL_E(cond_level, ...) U_LOG_IFL(U_LOGGING_ERROR, cond_level, __VA_ARGS__)
| ^~~~~~~~~
../src/xrt/drivers/wmr/wmr_config.c:22:35: note: in expansion of macro ‘U_LOG_IFL_E’
22 | #define WMR_ERROR(log_level, ...) U_LOG_IFL_E(log_level, __VA_ARGS__)
| ^~~~~~~~~~~
../src/xrt/drivers/wmr/wmr_config.c:267:17: note: in expansion of macro ‘WMR_ERROR’
267 | WMR_ERROR(log_level, "Invalid camera calibration block %d - unknown camera purpose %s", c->n_cameras,
| ^~~~~~~~~
../src/xrt/drivers/wmr/wmr_config.c: In function ‘wmr_hmd_config_parse’:
../src/xrt/drivers/wmr/wmr_config.c:267:100: note: format string is defined here
267 | WMR_ERROR(log_level, "Invalid camera calibration block %d - unknown camera purpose %s", c->n_cameras,
| ^~
2021-12-14 14:54:47 +01:00
Christoph Haag
42ae21d412
d/hdk: Remove unused variable
2021-12-14 14:19:53 +01:00
Christoph Haag
d4a491ea74
targets/steamvr: Use python stdlib to copy
...
monado/src/xrt/targets/steamvr_drv/copy_assets.py:8: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
from distutils.dir_util import copy_tree
monado/src/xrt/targets/steamvr_drv/copy_assets.py:8: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
from distutils.dir_util import copy_tree
2021-12-14 14:17:57 +01:00
Christoph Haag
8bbaf2a05b
a/tracking: Use #pragma message instead of #warning
...
Avoids warning
../src/xrt/auxiliary/tracking/t_tracker_slam.cpp:66:2: warning: #warning is a GCC extension
2021-12-14 13:51:16 +01:00
Ryan Pavlik
1203cf38f0
cmake: Fix build when we have EGL but not GLES headers.
2021-12-13 15:00:24 -06:00
Mateo de Mayo
74e79ff274
d/wmr: Add SLAM tracker
2021-12-13 10:41:55 +00:00
Mateo de Mayo
d3bde043bd
d/wmr: Forward IMU samples to wmr_source
2021-12-13 10:41:55 +00:00
Mateo de Mayo
41f42e0b3a
d/wmr: Add wmr_source with camera streams support
2021-12-13 10:41:55 +00:00
Mateo de Mayo
92c1e55c37
d/wmr: Prepare HMD for SLAM tracking
2021-12-13 10:41:55 +00:00
Mateo de Mayo
c1edfa95d7
d/wmr: Add Odyssey+ activation/deactivation functions
...
Co-authored-by: Jan Schmidt <jan@centricular.com>
2021-12-13 10:41:55 +00:00
Mateo de Mayo
7338aded9c
d/wmr: Add exposure setting
2021-12-13 10:41:55 +00:00
Mateo de Mayo
d9aaa4369f
d/wmr: Add ROI rect for WMR cameras
2021-12-13 10:41:55 +00:00
Jan Schmidt
3bb3197fec
d/wmr: Parse controller configuration
...
Extract LED and inertial sensor configuration from
controller JSON
2021-12-13 11:47:12 +11:00
Jan Schmidt
ea4836b081
d/wmr: Read controller firmware configuration blocks.
...
Implement reading and logging of controller firmware blocks.
The main JSON configuration is obfuscated. The raw block can
be dumped to disk by setting the WMR_CONFIG_DUMP env var
to point to a directory to receive controller configs
2021-12-13 11:47:12 +11:00
Jan Schmidt
4e24a1277e
d/wmr: Add pragma once to BT controller header
2021-12-13 11:47:12 +11:00
Jan Schmidt
1c67a1ff52
d/wmr: Add HP Reverb G2 controller PID
...
Recognise the HP Reverb G2 WMR controller if it is directly
connected via bluetooth (instead of tunnelled through the
headset like it normally would be).
2021-12-13 11:47:12 +11:00
Simon Zeni
b396c200d0
d/survive: ajust timestamp from button event
2021-12-12 23:07:14 +00:00
Nima01
b3e0f5bc6a
d/wmr: WMR Controller (BT): Don't waste CPU cycles when reading
2021-12-12 21:37:50 +01:00
Nima01
2d48a9bca2
d/wmr: WMR Controller (BT) 3DoF working, based on gyro and accel.
...
Tested on HP Reverb G1. Reading and applying device specific
config data is still pending.
2021-12-12 16:47:35 +00:00
Mateo de Mayo
fe4f6c6eb0
misc: Improve wmr and euroc docs, fix ht memory leak, stride for cv::Mats
2021-12-12 13:13:18 -03:00
Mateo de Mayo
cd0342c8dc
aux/util: Add u_frame_create_roi
2021-12-12 13:12:42 -03:00
Mateo de Mayo
fa88ce5f3f
u/var: Add u16 var kind
2021-12-12 13:06:04 -03:00
Mateo de Mayo
471ca9530b
m/3dof: Add reset functionality
2021-12-12 13:06:04 -03:00
Moses Turner
749723f0ba
xrt: Remove xrt_view::display::{w|h}_meters
...
It is not used anywhere.
2021-12-10 21:27:15 -06:00
Jakob Bornecrantz
59a09abf6a
d/dai: Document work around
2021-12-10 21:31:28 +00:00
Jakob Bornecrantz
775d82d728
d/dai: Work around issue in v2.13.3
2021-12-10 21:31:28 +00:00
Ryan Pavlik
5b1c60eeb0
xrt: Add unique_ptr typedef for xrt_device
2021-12-10 21:24:02 +00:00
Ryan Pavlik
26e5f6eee7
a/math: Bring the C++ wrapper for relation_history up to parity.
...
Also add tests for it too.
2021-12-10 21:06:04 +00:00
Ryan Pavlik
ef4550c268
a/math: Add a "get latest" to relation history as well.
2021-12-10 21:06:04 +00:00
Ryan Pavlik
aff7079dca
a/math: Let relation history report its size
2021-12-10 21:06:04 +00:00
Moses Turner
c66b29d117
d/wmr: use u_extents_2d_split_side_by_side instead of u_device_setup_split_side_by_side
2021-12-10 14:08:52 -06:00
timongentzsch
ba353e276d
Bugfix in solving quadratic equation for FoV calculation
2021-12-10 18:08:50 +00:00
Ryan Pavlik
e5e8451a81
a/math: Update relation history to return something from push.
2021-12-09 13:44:12 -06:00
Mateo de Mayo
b29c4ee78f
u/json: Update macro signatures to fix MSVC builds
2021-12-08 15:35:54 +00:00
Ryan Pavlik
46d095d978
comp/util: Allow enabling timeline semaphores when creating bundle.
2021-12-08 00:54:12 +00:00
Ryan Pavlik
0b11ce3a27
a/vk: Add timeline semaphore to the list of optional features.
2021-12-08 00:54:12 +00:00
Ryan Pavlik
2af3798e44
a/vk: Fix typo in physical device feature chain
2021-12-08 00:54:12 +00:00
nima01
d5d1695438
d/wmr: Hook up motion controller gyro and accel
...
Basic IMU setup with fusion. Reading and applying config callibration data from controller is still work in progress
2021-12-08 00:43:50 +00:00
Jakob Bornecrantz
98982bd25b
a/math: Fix warning in math_matrix_2x2_multiply
2021-12-07 13:30:45 +00:00
Jakob Bornecrantz
aad9b04a92
d/wmr: Fix warning and tidy
2021-12-07 13:30:45 +00:00
Jakob Bornecrantz
eee143f401
d/rs: Use long name as documentation name
2021-12-07 11:26:20 +00:00
Jakob Bornecrantz
3e38ada9a5
build: s/rs/realsense/g
2021-12-07 11:26:20 +00:00
Jakob Bornecrantz
6598217a01
u/vive: Correct Vive Pro model_name
...
Fixes #106
2021-12-06 19:43:49 +00:00
Jakob Bornecrantz
6ae52651c4
d/vive: Up max config z and json size, also tidy
2021-12-06 19:43:49 +00:00
Jakob Bornecrantz
b621955873
a/vk: Put vendor extensions last
2021-12-06 17:25:09 +00:00
Jakob Bornecrantz
5289b081c5
a/vk: Check for VK_KHR_timeline_semaphore
2021-12-06 17:25:09 +00:00
Jakob Bornecrantz
0eca48ec2b
a/vk: Add all functions for VK_KHR_timeline_semaphore
2021-12-06 17:25:09 +00:00
Jakob Bornecrantz
7d529a3dfc
a/vk: Change script to make it clang-format friendly
2021-12-06 17:25:09 +00:00
Jakob Bornecrantz
94ad966e4d
a/vive: Also correctly error on unknown controller warnings
2021-12-06 11:44:33 +00:00
Jakob Bornecrantz
aace8ff62d
a/vive: Look for model_name correctly
2021-12-06 11:44:33 +00:00
Jakob Bornecrantz
a6b4e6a830
m/3dof: Show more in the variable tracker
2021-12-05 15:30:14 +00:00
Jan Schmidt
6cc92c369a
d/wmr: Fix accel <-> gyro mixup in previous change.
...
There was a typo in the calibration bias/correction
patch that messed up accel values by accidentally
reusing the gyro value.
2021-12-06 01:45:25 +11:00
Jan Schmidt
c06c3fa782
d/wmr: Make WMR to OpenXR coordinate transform explicit
...
Instead of negating Y and Z readings from the IMU when
parsing, parse the native values, then apply the rotation
using the centerline transform before fusion.
2021-12-05 00:09:25 +11:00
Jan Schmidt
c7549c8680
d/wmr: Apply HMD IMU correction from calibration.
...
Apply the mix_matrix and bias_offsets adjustments for
IMU readings.
2021-12-05 00:06:05 +11:00
Jan Schmidt
ee030ff0c8
d/wmr: Extend config reading to include bias/mix_matrix
...
Add extraction of bias offsets and mix_matrix (rotation)
correction for IMU accel, gyro and mag configuration entries.
2021-12-05 00:06:05 +11:00
Jan Schmidt
385a3bd33d
d/wmr: Split out inertial sensor configuration
...
Inertial sensor configuration blocks are common to
both HMD and controller calibration. Factor out a
shared structure to receive them.
2021-12-05 00:06:05 +11:00
Jan Schmidt
76c18bfdc7
d/wmr: Rename wmr_config_parse to wmr_hmd_config_parse()
2021-12-05 00:06:05 +11:00
Jan Schmidt
bb5aa35c00
a/math: Add math_matrix_3x3_identity()
...
Add an initialisation function to set a 3x3 matrix
to the identity matrix.
2021-12-05 00:06:05 +11:00
Jakob Bornecrantz
971739627a
d/vive: Actually print error message to say what is going on
2021-12-03 21:13:57 +00:00
Jakob Bornecrantz
e21e28c455
u/vive: Be more verbose if we fail to parse model_[name|number]
2021-12-03 21:13:57 +00:00
Jakob Bornecrantz
12baf0ada3
st/prober: Warn when we can't get USB descriptors
2021-12-03 21:13:57 +00:00
Jakob Bornecrantz
59fccb0c38
st/prober: If we can't tell if we can open a device assume yes
2021-12-03 20:47:25 +00:00
Moses Turner
8af3a47f5a
cmake: make DepthAI driver link to aux_tracking
2021-12-03 19:22:57 +00:00
Moses Turner
31f155acbd
cmake: make xrt-external-json public for aux_tracking
2021-12-03 19:22:57 +00:00
Ryan Pavlik
85ee6379e6
ipc: Fix copy/paste typo.
...
Thanks to xdust for catching this.
2021-12-03 10:11:17 -06:00
Jakob Bornecrantz
8c04bf1274
a/math: Add C++ RelationHistory interface class
2021-12-03 14:00:37 +00:00
Jakob Bornecrantz
efde7f185c
a/math: Put m_relation_history_get out argument last
2021-12-03 14:00:32 +00:00
Jakob Bornecrantz
ed48e6d47d
a/math: Constify in argument
2021-12-03 13:53:46 +00:00
Ryan Pavlik
2b64e5b965
a/math: Extend m_relation_history to pass the tests.
2021-12-03 13:53:46 +00:00
Ryan Pavlik
217dee2ce3
a/math: Add m_relation_history_result return from m_relation_history_get
2021-12-03 13:45:43 +00:00
Ryan Pavlik
01e3d9871c
a/math: Replace RH_DEBUG for relation history with better use of logging macros
2021-12-03 13:45:43 +00:00
Jarvis Huang
27550ffa39
aux/android: Looper trick for NativeActivity with app-glue
2021-12-02 09:40:36 -06:00
Mateo de Mayo
07bd614930
t/file: Extend calibration save/load interfaces with new v2 format
2021-12-02 11:27:42 -03:00
Mateo de Mayo
1483ec32c5
t/file: Implement json save/load for v2 calibration
2021-12-02 11:26:11 -03:00
Mateo de Mayo
31f71251e0
t/util: Add dump function for single camera calibration struct
2021-12-01 18:32:16 +00:00
Jakob Bornecrantz
27f80a90d9
c/render: Make it safe to call comp_resources_close in more cases
...
Fixes #139
2021-12-01 16:08:12 +00:00
Ryan Pavlik
e9c5d34925
t/oxr_android: Fix version code format
2021-12-01 08:35:44 -06:00
Ryan Pavlik
015abd6899
st/p: Fix prober warning.
2021-12-01 08:31:28 -06:00
Mateo de Mayo
1cc80f5476
t/slam: Use euroc recorder in slam tracker
2021-12-01 13:45:18 +00:00
Mateo de Mayo
91ecbdb7fb
t/euroc: Add euroc dataset recorder
2021-12-01 13:45:18 +00:00
Mateo de Mayo
e245f4e5a9
u/sink: Allow u_sink_queue to queue more than one frame
...
Passing max_size=1 gives a similar behaviour as before, although instead
of discarding the last enqueued frame, it just ignores the new frame.
2021-12-01 13:45:18 +00:00
Simon Zeni
ba7f9d9578
d/ht_cemu: enable build if XRT_BUILD_DRIVER_HANDTRACKING is enabled
2021-12-01 05:36:05 +00:00
Simon Zeni
749792f324
d/ht_cemu: enable meson build
2021-12-01 05:36:05 +00:00
Moses Turner
6b14cc3923
d/cemu: use proper number of inputs
2021-11-30 23:32:05 -06:00
Mateo de Mayo
33d360083f
external/slam: Update slam_tracker interface to support dynamic features
2021-11-30 10:01:33 -03:00
Moses Turner
80840c4f4a
d/multi: propagate out_timestamp_ns
2021-11-30 05:56:57 -06:00
Moses Turner
f5bc81756e
d/survive: use controller emulation for hand-tracking
2021-11-30 05:56:57 -06:00
Moses Turner
0214937aa0
d/vive: use controller emulation for hand-tracking
2021-11-30 05:56:57 -06:00
Moses Turner
03359e2bfb
d/ht_ctrl_emu: Create the driver
2021-11-30 05:56:57 -06:00
Moses Turner
8cde257817
aux/math: add vec3 overloads for scalar multiplication
2021-11-29 23:23:57 -06:00
Nima01
bdf96d6810
d/wmr: Decode and handle controller buttons, thumbstick and trackpad.
2021-11-27 04:31:13 +01:00
Jan Schmidt
ce03824824
d/wmr: Comment updates for wmr_protocol.h
...
Improve the descriptions of some pieces of the WMR
protocol
2021-11-25 23:33:55 +11:00
Jan Schmidt
7f392936c6
d/wmr: Report frame source_sequence and source_timestamp
...
Extract timestamp in source 100ns units and convert to
nanoseconds, then place them in the emitted xrt_frames.
Unwrap the 8-bit frame sequence counter to 64-bits, and
add that too.
Add some comments and debug for other fields in the
incoming data.
2021-11-25 23:33:55 +11:00
Jan Schmidt
0fab912c5c
d/wmr: Add debug gain control
...
Add a control to the debug UI for adjusting the
camera gain setting when testing.
2021-11-25 20:05:10 +11:00
Simon Zeni
a090655e16
d/ht: remove old ht_models API
2021-11-24 16:42:56 -05:00
Simon Zeni
ee45be6f7b
d/ht: use new ht_model API
2021-11-24 16:42:56 -05:00
Simon Zeni
0e53b3b87f
d/ht: introduce ht_model
2021-11-24 16:42:56 -05:00
Simon Zeni
e84d948fb4
d/ht: blackar takes const input
2021-11-24 16:42:56 -05:00
Simon Zeni
32330d467c
d/ht: planarize takes const input
2021-11-24 16:42:56 -05:00
Jakob Bornecrantz
986cde6750
cmake: Build the IPC irrespectively of the service or not
2021-11-24 21:30:01 +00:00
Jakob Bornecrantz
63701511eb
d/wmr: Tidy
2021-11-24 17:12:19 +00:00
Jakob Bornecrantz
0bd38a0a0d
c/render: Error on failing to get memory type
2021-11-24 17:05:13 +00:00
Christoph Haag
01c6e4ed28
d/wmr: make wmr_config_key static
...
OpenHMD has a global variable wmr_config_key too which is exported in some
build configurations, causing Monado to fail linking openhmd and the wmr
driver together.
2021-11-24 14:36:55 +00:00
Christoph Haag
22d9d97e61
st/oxr: fix finding profiles for device
...
fixes 6627049af3
2021-11-24 01:36:25 +01:00
Christoph Haag
821c7f0f7a
st/oxr: Don't create interaction profile in xrGetInputSourceLocalizedName
...
oxr_instance::oxr_interaction_profile is used to bind interaction profiles
available on the assigned device to interaction profiles suggested by the
application.
Creating an interaction profile that has not been suggested might interfere
with the binding code.
xrGetInputSourceLocalizedName can only be called after the action sets are
attached, meaning all the interaction profiles must have already been
suggested.
2021-11-24 01:34:13 +01:00
Christoph Haag
1a9e0750c7
st/oxr: document oxr_instance::oxr_interaction_profile
2021-11-24 01:34:13 +01:00
Christoph Haag
a1c00e14fd
st/oxr: Implement a basic version of XR_FB_display_refresh_rate
2021-11-22 20:44:18 +00:00
Christoph Haag
eae7231f83
st/oxr: Add XR_FB_display_refresh_rate ext to script
2021-11-22 20:44:18 +00:00
Jakob Bornecrantz
3f98ea5595
xrt: Tidy s/ll/log_level/g
...
Also make sure all variable logging uses the right type for logging variables.
2021-11-22 14:29:10 -06:00
Christoph Haag
431857dd16
d/ohmd: use os_nanosleep for delay_after_initialization
2021-11-22 00:45:08 +01:00
Christoph Haag
8a4a09bb1b
d/ohmd: Remove duplicate delay_after_initialization code
2021-11-22 00:40:13 +01:00
Jakob Bornecrantz
839ada7115
d/wmr: Add more to the I/O
2021-11-20 18:54:16 +00:00
Jakob Bornecrantz
7fa3109e2a
d/wmr: Minimum to bind and return a pose
2021-11-20 17:44:34 +00:00
Jakob Bornecrantz
673ac5ee6c
d/wmr: Add support for Samsung Odyssey controllers
2021-11-20 17:33:25 +00:00
Ryan Pavlik
27a8ec675b
a/util: Add utility for lists of strings, like extension lists.
2021-11-20 17:21:02 +00:00
Jakob Bornecrantz
ea38309c86
d/wmr: Bracemaggedon
2021-11-20 15:37:15 +00:00
Jakob Bornecrantz
50e0e7783e
d/wmr: Shuffle and group things in camera file
2021-11-20 15:00:02 +00:00
Jakob Bornecrantz
85f79f935b
d/wmr: Tidy
2021-11-20 15:00:02 +00:00
Jakob Bornecrantz
1441453d5f
d/wmr: Add log level to variable tracking
2021-11-20 13:54:51 +00:00
Jakob Bornecrantz
4329b755a9
d/wmr: Document camera start and constify argument
2021-11-20 13:50:54 +00:00
Jakob Bornecrantz
16c75e7cc7
d/wmr: Tidy variable tracking
2021-11-20 13:29:24 +00:00
Jan Schmidt
733d463ec4
d/wmr: Use proximity sensor value in IPD message.
...
The first byte after the packet ID toggles when
the proximity sensor is activated.
2021-11-20 12:52:45 +00:00
Jan Schmidt
5efe0da713
d/wmr: Handle 0x17 packets
...
Add a debug report for 0x17 packets on Reverb G2 that
report controller statuses. The statuses seen so far
are 0x0 for unpaired, 0x1 for paired but offline, and
0x2 for online. Paired reports provide VID and PID for the
associated motion controller.
2021-11-20 12:52:45 +00:00
Jan Schmidt
7b95755f07
d/wmr: Implement bluetooth debug message handling
...
Handle the debug message packet from the bluetooth
interface on the HP G2. There might be other packet
types, but that's the only one I've seen so far.
2021-11-20 12:52:45 +00:00
Jan Schmidt
e0b5070f49
d/wmr: Rename controller related packets
...
Rename the controller and bluetooth related packets
according to their usage, and split out the
controller update handling function.
2021-11-20 12:52:45 +00:00
Jan Schmidt
e18288cc57
d/wmr: Ignore all other packets when reading config
...
Any other WMR packets can arrive while we're reading the
config block - ignore all of them, not just a few. Fixes
config reading failures.
2021-11-20 12:52:45 +00:00
Jan Schmidt
a14d6f1c2b
d/wmr: Parse and log HMD debug messages
2021-11-20 12:52:45 +00:00
Jan Schmidt
6bb2972443
d/wmr: Set default camera gain
...
Add API for gain control on headset cameras,
and use it to set a mid-range default exposure gain
2021-11-20 12:52:45 +00:00
Jan Schmidt
0da1bd74ce
d/wmr: Debug output for camera frames
...
Compute the frame size required for the cameras on a given
headset.
Copy the pixels out into an xrt_frame, then send it
to a debug sink - one for SLAM tracking exposures, and
1 for controller frames.
Based on a patch by Jakob Bornecrantz
2021-11-20 12:52:45 +00:00
Jan Schmidt
5fe935a5b0
d/wmr: Add camera reading loop
...
Calculate and configure USB transfers to read the
cameras on a WMR headset. Needs more work to
make use of the received frames.
2021-11-20 12:52:45 +00:00
Jan Schmidt
e422be89fa
d/wmr: Add camera configuration block parsing
...
Read camera configuration info from the HMD JSON
block
2021-11-20 12:52:45 +00:00
Jan Schmidt
7fb94889a8
d/wmr: Fix a small lock handling mistake
...
In the wmr handling thread, make sure lock
handling is symmetrical in all code paths.
2021-11-20 12:52:45 +00:00
Moses Turner
cef025a546
Revert "st/oxr: fix building on linux with OPENGL_GLX OFF"
...
This reverts commit d20f8f4363
2021-11-20 00:11:06 +00:00
Jakob Bornecrantz
be5b9c9d88
st/gui: Prober or tracking is no longer needed for debug sink
2021-11-19 14:38:31 +00:00
Jakob Bornecrantz
6627049af3
st/oxr: Don't hardcode profiles for devices
2021-11-19 14:38:31 +00:00
Jakob Bornecrantz
974f42f068
st/oxr: Debug print devices
2021-11-19 14:26:44 +00:00
Jakob Bornecrantz
a56ea7cad6
c/multi: Fix copy-pasto
2021-11-18 20:14:05 +00:00
Nima01
e536a02b33
d/wmr: Factor out parsing of controller messages and minor cleanup.
2021-11-18 17:19:07 +00:00
Nima01
c4db3dfccc
d/wmr: Add basic Reverb (G1, Bluetooth) motion controller support.
2021-11-18 17:19:07 +00:00
Nima01
acd8a0986e
d/wmr: Prepare for WMR motion controller driver - Change ambiguous names and traces.
2021-11-18 17:19:07 +00:00
Jan Schmidt
760e8dd3ad
meson: Add GStreamer recording support
2021-11-19 04:05:40 +11:00
nima01
70263a6b16
c/util: Use GPU index specified by XRT_COMPOSITOR_FORCE_CLIENT_GPU_INDEX
2021-11-18 14:14:32 +00:00
Ryan Pavlik
0a9b098a37
cmake: Build fix re SDL on some systems
2021-11-17 10:09:57 -06:00
Antonio Ospite
14cc4f1ba2
d/v4l2: fix building with older linux kernel like 4.15
...
Older linux kernels like 4.15 don't have V4L2_CID_DIGITAL_GAIN or
V4L2_CTRL_FLAG_MODIFY_LAYOUT, add conditional guards to build
successfully on systems with such kernels.
2021-11-13 13:48:00 +00:00
Jakob Bornecrantz
79ec1bd695
d/wmr: Add basic support for Samsung Odyssey+
...
Display start-up sequence still probably needed.
2021-11-13 12:36:25 +00:00
Ryan Pavlik
9a41a1a8be
d/ulv2: Improve source docs
2021-11-13 12:29:58 +00:00
Ryan Pavlik
0fa5876a5c
drivers: Add references to xrt_prober_found_function_t in all relevant docs
2021-11-13 12:29:58 +00:00
Ryan Pavlik
3a22c74aa6
xrt: Update some xrt_device docs
2021-11-13 12:29:58 +00:00
Ryan Pavlik
b5bcea758d
xrt: Rename a prober-related define that wasn't namespaced.
2021-11-13 12:29:58 +00:00
Ryan Pavlik
46fdb32991
xrt: Factor out a function pointer type for the prober "found" functions.
2021-11-13 12:24:15 +00:00
Antonio Ospite
d20f8f4363
st/oxr: fix building on linux with OPENGL_GLX OFF
...
When building on linux and OPENGL_GLX OFF compilation fails with the
following error:
-----------------------------------------------------------------------
../../state_trackers/oxr/libst_oxr.a(oxr_session_gfx_gl.c.o): In function `oxr_session_populate_gl_xlib':
oxr_session_gfx_gl.c:(.text+0x5c): undefined reference to `xrt_gfx_provider_create_gl_xlib'
collect2: error: ld returned 1 exit status
src/xrt/targets/openxr/CMakeFiles/openxr_monado.dir/build.make:126: recipe for target 'src/xrt/targets/openxr/libopenxr_monado.so' failed
make[2]: *** [src/xrt/targets/openxr/libopenxr_monado.so] Error 1
CMakeFiles/Makefile2:2490: recipe for target 'src/xrt/targets/openxr/CMakeFiles/openxr_monado.dir/all' failed
make[1]: *** [src/xrt/targets/openxr/CMakeFiles/openxr_monado.dir/all] Error 2
Makefile:145: recipe for target 'all' failed
make: *** [all] Error 2
-----------------------------------------------------------------------
Apparently the gl_xlib backend really depends on GLX specifically, so
fix the issue by reflecting that in the conditionally compiled blocks.
2021-11-13 12:16:29 +00:00
Ryan Pavlik
185bf61dd8
comp: Migrate num_ to _count
2021-11-13 12:04:38 +00:00
Ryan Pavlik
2e323add6f
drivers: Migrate num_ to _count
2021-11-13 12:04:38 +00:00
Ryan Pavlik
4957f6577f
st/p: Migrate num_ to _count
2021-11-13 12:04:38 +00:00
Ryan Pavlik
dfa0aba496
aux: Migrate num_ to _count
2021-11-13 12:04:38 +00:00
Ryan Pavlik
469b9d907d
st/oxr: Rename all num_ in the state tracker, too.
2021-11-13 12:04:38 +00:00
Ryan Pavlik
33c0287f8b
xrt: Rename all "num" parameters and fields to "count" (or "capacity" as appropriate)
...
This matches the OpenXR usage: the array is the plural of the element type,
and the count is the singular element type plus "count" (usually CountOutput
because of the two-call idiom)
Includes fixes to other code to match API changes.
2021-11-13 12:04:38 +00:00
Ryan Pavlik
5e55b9d992
xrt: Prober docs.
2021-11-13 12:04:38 +00:00
Mateo de Mayo
b94b7d1f52
u/json: Implement C++ wrapper for cJSON
2021-11-12 15:33:06 -03:00
Mateo de Mayo
87a1198b0a
misc: Address compilation warnings and fix u_json_get_bool
2021-11-12 15:33:06 -03:00
Ryan Pavlik
cc4007a69e
cmake: Substantial cleanups and simplifications
...
We now have a cmake-format config file.
We no longer use list variables for sources, instead using
target_sources when we need to add, in accordance with current
best practice. (This makes it a lot easier to edit too.) There's no more
include_directories(), add_definitions(), or other gently-deprecated
directory-scoped commands, nor any CMake scripts that include
a parent directory reference (named targets instead)
2021-11-12 09:48:37 -06:00
Ryan Pavlik
19947a2d27
cmake: Refactor how we build imgui
2021-11-12 09:38:50 -06:00
Jakob Bornecrantz
62ca16c70e
a/math: Make sure it's safe to pass in the result as either left or right
2021-11-12 10:27:54 +00:00
Ryan Pavlik
b180b244e3
st/oxr: Populate oxr_system's blend modes list from the system compositor, not the device.
2021-11-12 03:05:10 +00:00
Ryan Pavlik
201765d3a7
comp: Populate blend mode list in system compositor info from device
2021-11-12 03:05:10 +00:00
Ryan Pavlik
cd5ac5f1c9
xrt: Support multiple blend modes in system compositor info
2021-11-12 03:05:10 +00:00
Jakob Bornecrantz
7ecf649ac2
c/render: Use new Vulkan helpers
2021-11-10 14:22:28 +00:00
Jakob Bornecrantz
e8b0ab3b35
aux/vk: Add many more helper functions
2021-11-10 14:22:28 +00:00
Jakob Bornecrantz
5554b0fa00
st/prober: Fix warning and tidy code
2021-11-10 11:32:54 +00:00
Ryan Pavlik
35d7e85266
a/vk: Return of the justification and function rename
2021-11-09 15:36:24 -06:00
Ryan Pavlik
b816c08141
a/vk: Add to the file comments mentioning the script.
2021-11-09 11:05:15 -06:00
Ryan Pavlik
8a56046c1d
a/vk: Also generate the extension list/checking
2021-11-09 11:05:15 -06:00
Ryan Pavlik
9fc992d540
a/vk: Normalize member names in extensions
2021-11-09 11:05:15 -06:00
Ryan Pavlik
01c02897dc
a/vk: Update vulkan files: generate from script
2021-11-09 11:05:15 -06:00
Nima01
2a1e6debfb
st/prober: Support for querying of 'Product name' from Bluetooth devices.
2021-11-09 01:10:20 +00:00
Jakob Bornecrantz
a081bacc5d
aux/vk: Guard vkSignalSemaphore with VK_KHR_timeline_semaphore
2021-11-08 17:36:58 +00:00
Jakob Bornecrantz
4c4e30d875
aux/vk: Add more functions
2021-11-08 17:21:31 +00:00
Ryan Pavlik
fa308848ab
android: Update source link for licenses
2021-11-08 09:45:00 -06:00
Moses Turner
c1d4314aad
d/ht: move DEBUG_GET_ONCE_LOG_OPTION to ht_driver.cpp (NFC)
...
Fixes an annoying warning.
2021-11-08 08:11:26 -06:00
Simon Zeni
49d2d81940
d/ht: split ht_algorithm into source and header
2021-11-08 13:56:37 +00:00
Simon Zeni
39bc129564
d/ht: split ht_models into source and header
2021-11-08 13:56:37 +00:00
Simon Zeni
7618a7e34d
d/ht: split ht_nms into source and header
2021-11-08 13:56:37 +00:00
Simon Zeni
83630efc3d
d/ht: split ht_image_math into source and header
2021-11-08 13:56:37 +00:00
Simon Zeni
44b46a28bf
d/ht: split ht_hand_math into source and header
2021-11-08 13:56:37 +00:00
Jakob Bornecrantz
f10951b5ac
t/openxr: Only link against qwerty driver if built
2021-11-08 13:07:22 +00:00
Jakob Bornecrantz
551c1f19a9
st/prober: Depend on VF driver since we refer to it directly
2021-11-08 13:07:22 +00:00
Jakob Bornecrantz
42b0361852
c/main: Use Vulkan helper in util
2021-11-07 15:14:04 +00:00
Jakob Bornecrantz
7703b7104b
c/main: Tidy extensions
2021-11-06 10:51:19 +00:00
Jakob Bornecrantz
a97523591f
c/util: Add Vulkan helper
2021-11-06 10:51:19 +00:00
Jakob Bornecrantz
2a536f17d1
cmake: Remove missed source array
2021-11-05 15:56:14 +00:00
Jakob Bornecrantz
56b5918d69
c/main: Fix tab CVK_ERROR macro
2021-11-04 20:57:55 +00:00
Jakob Bornecrantz
c912c67dc6
c/main: Use comp_base
2021-11-04 20:57:53 +00:00
Jakob Bornecrantz
a1b515616a
c/render: Documentation
2021-11-04 20:56:21 +00:00
Jakob Bornecrantz
6e28533bdc
c/render: Break out into own library
2021-11-04 20:56:21 +00:00
Jakob Bornecrantz
e08c1b1f04
c/util: Add comp_base native compositor helper base class
2021-11-04 20:56:21 +00:00
Jakob Bornecrantz
c3b8810bb0
c/util: Documentation
2021-11-04 20:56:20 +00:00
Jakob Bornecrantz
029031cfd3
c/util: Break out swapchain and sync into own library
2021-11-04 20:55:48 +00:00
Jakob Bornecrantz
78936d2b4e
c/main: Use get_vk more
2021-11-04 20:54:11 +00:00
Jakob Bornecrantz
c6031a26e8
c/main: Refactor fence to be more independent
2021-11-04 20:46:09 +00:00
Jakob Bornecrantz
293d617dd5
c/main: Refactor swapchain to be more independent
2021-11-04 20:46:03 +00:00
Ryan Pavlik
3bd0a07aa2
cmake: Split out finding GLX from the rest of OpenGL on Linux.
...
Fixes #132 .
2021-11-04 15:36:58 +00:00
Ryan Pavlik
15c8414155
cmake: Un-nest a conditional
2021-11-04 15:36:58 +00:00
Jakob Bornecrantz
36765256a6
c/render: Free command buffer when closing rendering
2021-11-03 23:10:47 +00:00
Ryan Pavlik
4759ddda63
ipc: Fix it's vs its
2021-11-03 17:29:13 -05:00
Ryan Pavlik
9ab69a2c99
d/arduino/device: Fix it's vs its
2021-11-03 17:28:56 -05:00
Ryan Pavlik
85dab57936
a/util: Fix some it's vs its
2021-11-03 17:28:41 -05:00
Ryan Pavlik
7a26a2339b
comp: Fix some it's vs its.
2021-11-03 17:28:17 -05:00
Ryan Pavlik
afc2af549f
xrt: Improve docs for ref-counting functions.
2021-11-03 17:27:56 -05:00
Ryan Pavlik
334bd83619
a/tracking: Fix some it's vs its and other minor doc tweaks
2021-11-03 17:27:36 -05:00
Ryan Pavlik
f4b61d9e41
a/os: Fix some it's vs its.
2021-11-03 17:24:17 -05:00
Ryan Pavlik
a6ae6eb095
a/math: Fix some it's vs its.
2021-11-03 17:23:51 -05:00
Ryan Pavlik
86c7a27156
a/tracking: Fix doxygen warnings about invalid link requests
2021-11-03 17:13:38 -05:00
Ryan Pavlik
ebde5344a1
cmake: Make compilation of the sample driver optional.
2021-11-03 17:04:05 -05:00
Ryan Pavlik
55d16046eb
doc: Update driver writing documentation
2021-11-03 17:04:02 -05:00
Ryan Pavlik
33e367ee42
drivers: Add a sample driver intended for use as a template.
2021-11-03 17:00:28 -05:00
Ryan Pavlik
e2c6fbdd9a
cmake: Inline lists of sources for drivers, per current best practice
2021-11-03 17:00:28 -05:00
Jakob Bornecrantz
ec9cfa690d
c/render: s/rts/rtr/g
2021-11-03 13:28:15 +00:00
Jakob Bornecrantz
12bfc8b5c9
c/render: Do not depend on the compositor
2021-11-03 13:26:42 +00:00
Jakob Bornecrantz
c346d812c7
c/render: Add helpers to access the vk_bundle
2021-11-03 13:25:15 +00:00
Jakob Bornecrantz
648f49f4ef
c/render: Change argument order to object first
2021-11-03 13:25:15 +00:00
Jakob Bornecrantz
ccc4bbcf86
c/render: Remove unused disable_atw argument
2021-11-03 13:25:15 +00:00
Jakob Bornecrantz
56f4466ffa
c/render: Move shaders to render
2021-11-03 13:25:15 +00:00
Jakob Bornecrantz
8c8d72647b
c/render: Refactor out timewarp matrix into util file
2021-11-03 13:25:15 +00:00
Jakob Bornecrantz
60024efba9
c/render: If we only have a projection layer skip the layer renderer
2021-11-03 13:25:14 +00:00
Jakob Bornecrantz
4ca35b8b3c
c/render: Don't cache comp_rendering
2021-11-03 13:24:20 +00:00
Jakob Bornecrantz
847e322fe5
c/render: Remove stub function decls
2021-11-02 20:19:05 +00:00
Jakob Bornecrantz
d8a580d875
c/render: Tidy compute rendering
2021-11-02 20:19:05 +00:00
Jakob Bornecrantz
f74812f02e
c/render: Refactor rendering code so target data is it's own struct.
2021-11-02 20:19:05 +00:00
Jakob Bornecrantz
08135b6365
c/shaders: Tidy and codestyle
2021-11-02 20:19:05 +00:00
Jakob Bornecrantz
0b9bf9c772
c/main: Do not go via target for compositor
2021-11-02 20:19:05 +00:00
Jakob Bornecrantz
765feb6fe1
c/main: Refactor mesh descriptor and UBO upload
2021-11-02 20:19:05 +00:00
Moses Turner
67430358c2
ipc: add a newline at the end of ipc_protocol_generated.h (NFC)
2021-11-01 18:01:40 -05:00
Simon Zeni
c67587c066
d/ht: improve anchor data for hand detector
2021-11-01 17:54:26 -05:00
Jason McNew
fd065cca6e
d/wmr: Fix segfault if unsupported HoloLens Sensors device is present.
2021-10-31 17:07:55 +00:00
Jakob Bornecrantz
c8ee075b8d
ipc/server: Add error messages for init failures
2021-10-28 22:58:44 +00:00
Mario Kleiner
a6185490e8
c/direct: Fix direct display RandR leased output on multi-X-Screen.
...
The old code assumes the HMD is always connected to a RandR
output on X-Screen 0, but this is not neccessarily the case
on multi-X-Screen setups. Use a loop to iterate over all
X-Screens outputs until the HMD output is found.
Tested on single and dual X-Screen setups, also with Oculus
Rift CV1 connected to 2nd X-Screen.
This is rather useful for porting applications from "OpenHMD Rift
on separate X-Screen for performance" to OpenXR Monado direct
mode, so one can quickly switch between Monado and OpenHMD native
without cumbersome xorg.conf + logout + login games.
Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
2021-10-28 12:29:36 +00:00
Mateo de Mayo
f407536279
st/prober: Hook the realsense SLAM source into the prober
2021-10-28 11:40:49 +00:00
Mateo de Mayo
f84629ccbc
d/rs: Split SLAM source out of rs_hdev
...
(This temporarily disables the RealSense SLAM stream as there is
nothing starting it until the next commit)
2021-10-28 11:40:49 +00:00
Mateo de Mayo
0202cb9223
st/prober: Improve usage of SLAM tracking frameservers
...
Use a similar "hardcoded" idea as in p_factory_ensure_frameserver.
This fix usage of SLAM sources in other contexts like calibration, at the
cost of requiring a device to call create_tracked_slam at least once.
(again, similar to how psmv/psvr/hand tracking work already)
2021-10-28 11:40:49 +00:00
Mateo de Mayo
773eccad6c
docs: Move some driver entities into @addtogroup and other NFC
2021-10-28 11:40:49 +00:00
Mateo de Mayo
891842cb51
os: Change os_nanosleep parameter to int64_t
2021-10-28 11:40:49 +00:00
Christoph Haag
cbc018239b
st/gui: Fix editing tracking override when tracker is not connected
...
Fixes an assertion.
2021-10-28 11:21:58 +00:00
Christoph Haag
8da1b10010
st/gui: More consistent variable names in tracking overrides
2021-10-28 11:21:58 +00:00
Christoph Haag
9f7ef73429
st/gui: better wording for tracking override delete button
2021-10-28 11:21:58 +00:00
Ryan Pavlik
9688cd37dd
xrt: Improve doc comments in compositor header
2021-10-27 17:05:55 -05:00
Jarvis Huang
6b8349c887
ipc/android: Force client entering resume state before IPC setup
2021-10-27 13:44:20 +00:00
Jarvis Huang
c635375dc7
aux/android: Remove unused header file
2021-10-27 13:44:20 +00:00
Jarvis Huang
210a6908cd
ipc/android: Avoid deadlock on Android
2021-10-27 13:44:20 +00:00
Christoph Haag
13f7fa3b82
ipc: Pack ipc message structs to make valgrind happy
2021-10-26 23:20:28 +02:00
Moses Turner
0dee9094b3
aux/math: encourage people to use normalized inputs to math_quat_from_plus_x_z
2021-10-26 10:56:41 +00:00
Ryan Pavlik
409541427d
st/oxr: MSVC-specialized version of macro in oxr_xrResultToString
2021-10-19 16:49:23 -05:00
Ryan Pavlik
05ed361601
t/psvr: Fix some truncation warnings.
2021-10-19 16:49:13 -05:00
Ryan Pavlik
b62fb33e36
d/wmr: Fix some truncation warnings.
2021-10-19 16:11:34 -05:00
Ryan Pavlik
4ae1a1753c
util: Fix typo
2021-10-19 16:11:34 -05:00
Ryan Pavlik
d4d6a1a73f
util: Fix some truncation warnings, mostly by explicitly casting
2021-10-19 16:11:34 -05:00
Ryan Pavlik
5f8cb4e227
a/math: Fix some truncation warnings.
2021-10-19 15:31:29 -05:00
Mateo de Mayo
1095c3a2c1
d/rs: Add pose correction for Basalt
2021-10-16 17:03:02 -03:00
Mateo de Mayo
ab2da01631
build: Add Basalt as an external SLAM system
2021-10-16 17:02:27 -03:00
Ryan Pavlik
782aa11754
comp/main: Initial wiring, but don't actually allow closing the window on Windows for now.
2021-10-15 15:29:58 -05:00
Ryan Pavlik
cb3fc65f14
comp/main: Win32: Spawn a thread for our windowed output.
2021-10-15 15:13:00 -05:00
Ryan Pavlik
c47463b4eb
aux/util: Fix log message formatting on Windows.
2021-10-15 15:05:34 -05:00
Ryan Pavlik
c40553580d
util: Fix copyright typo.
2021-10-15 14:55:12 -05:00
Ryan Pavlik
d6177777e5
os: Fix os_nanosleep on Windows.
2021-10-15 13:05:18 -05:00
Ryan Pavlik
3351ef5396
os: Add new thread helper methods
2021-10-15 13:05:18 -05:00
Ryan Pavlik
793a7d659d
os: Improve docs for thread helper.
2021-10-15 11:57:44 -05:00
Ryan Pavlik
2790f6d29f
comp: Fix windows build - near and far are keywords.
2021-10-15 10:15:16 -05:00
Moses Turner
d440a23888
d/dai: rename things to either 'monocular' or 'grayscale'
2021-10-13 16:26:26 -05:00
Jakob Bornecrantz
0d07971ebb
st/gui: Make it possible to use depthAI as a stereo and single source
2021-10-13 15:47:48 -05:00
Jakob Bornecrantz
21f6842e49
st/gui: Add some debugging to the paranoia
2021-10-12 20:44:32 +01:00
Jakob Bornecrantz
be9a91fd12
d/dai: Explicitly close queue to avoid use after free errors from asan
2021-10-12 20:44:32 +01:00
Jakob Bornecrantz
6f22d4d819
d/dai: Handle cameras without calibration data
2021-10-12 15:37:42 +01:00
Jakob Bornecrantz
c5b2c5827b
d/dai: Some tidy
2021-10-11 21:45:38 +01:00
Jakob Bornecrantz
a5fc2fa49e
d/dai: Expose function to get stereo calibration
2021-10-10 00:16:39 +01:00
Jakob Bornecrantz
3fd740e6e9
d/dai: Add support for a stereo pipeline via slam_stream_start
2021-10-09 22:28:11 +01:00
Jakob Bornecrantz
344b5d9755
d/dai: Refactor out create function
2021-10-09 22:28:11 +01:00
Jakob Bornecrantz
e1dd59f749
d/dai: Refactor out pipeline setup to helper function
2021-10-09 22:28:11 +01:00
Jakob Bornecrantz
b8e2cbd9ee
d/dai: Add code to extract calibration of gray stereo cameras
2021-10-09 22:28:11 +01:00
Jakob Bornecrantz
8c242c1bc1
d/dai: Work around RGB_OV_9782 not yet being supported on main
2021-10-09 22:28:11 +01:00
Jakob Bornecrantz
c2b00ebb18
d/dai: Switch default logging to info
2021-10-09 22:28:11 +01:00
Jakob Bornecrantz
580a2f6fff
u/sink: Add u_sink_combiner helper to combine frames to stereo frames
2021-10-09 22:28:11 +01:00
Jakob Bornecrantz
e8f7f2de0a
t/util: Add function to dump a stereo camera calibration
2021-10-09 22:28:11 +01:00
Mateo de Mayo
7f247604e3
build: Use pkg-config for finding SLAM systems in CMake and other minor improvements
2021-10-07 14:33:10 -03:00
Mateo de Mayo
9b21b7d36c
t/slam: Use debug assertions and ensure timestamps come in order
2021-10-06 16:41:18 -03:00
Mateo de Mayo
df3c36ba0c
d/rs: Improve how hdev handles IMU samples
...
- Prevent race conditions with a lock
- Check that timestamps "domains" are the same across samples
- Use faster sensor to push the IMU sample instead of always gyro
2021-10-06 16:41:18 -03:00
Mateo de Mayo
67a5946778
xrt: Add units to xrt_imu_sample fields
...
After using the structure a bit more, and realizing that while different components
sometimes use different units, it is easier to force them to send the imu_samples
in a standardized unit.
2021-10-06 16:41:18 -03:00
Mateo de Mayo
5845155229
xrt: Use doubles in xrt_vec3_f64
2021-10-06 15:23:28 -03:00
Moses Turner
5abd3b3570
d/ht: Switch to new get_hand_tracking signature and update tracking
2021-10-02 23:09:36 +01:00
Moses Turner
322d5b8f2d
d/remote: Switch to new get_hand_tracking signature
2021-10-02 23:09:25 +01:00
Moses Turner
621681ffb4
d/vive: Switch to new get_hand_tracking signature
2021-10-02 23:09:14 +01:00
Moses Turner
9f0de997d1
d/ulv2: Switch to new get_hand_tracking signature
2021-10-02 23:08:12 +01:00