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
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
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
2e323add6f
drivers: 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
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
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
2a536f17d1
cmake: Remove missed source array
2021-11-05 15:56:14 +00:00
Ryan Pavlik
9ab69a2c99
d/arduino/device: Fix it's vs its
2021-11-03 17:28:56 -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
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
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
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
Mateo de Mayo
1095c3a2c1
d/rs: Add pose correction for Basalt
2021-10-16 17:03:02 -03:00
Moses Turner
d440a23888
d/dai: rename things to either 'monocular' or 'grayscale'
2021-10-13 16:26:26 -05: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
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
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
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
Moses Turner
193dcc8776
d/survive: Switch to new get_hand_tracking signature
2021-10-02 23:08:09 +01:00
Moses Turner
bec03a09bc
d/multi: Switch to new get_hand_tracking signature
2021-10-02 23:08:06 +01:00
Moses Turner
b067d3b0c2
d/vf: Fix typo
2021-10-02 23:05:16 +01:00
Mateo de Mayo
a409ed6141
d/rs: Fix build errors and warnings when compiling without a SLAM dependency
2021-10-01 23:22:16 -03:00
Moses Turner
140a39f9c4
d/ns: move ns_hmd_create to ns_hmd.h
2021-10-01 13:54:19 -05:00
Simon Zeni
036eb19343
d/ht: fix stack overflow on hand detection
2021-09-30 14:30:22 -04:00
Jakob Bornecrantz
c8d57a4ff3
d/vive: Add some more tracing
2021-09-29 21:38:33 +00:00
Jakob Bornecrantz
98c1cb5358
d/vive: Add tracing support focusing on device message processing
2021-09-29 21:38:33 +00:00
Christoph Haag
d2e64d8b75
d/survive: Add SURVIVE_LH_GEN env var
...
On some systems libsurvive gets randomly confused and misdetects lh2 as lh1.
This causes the config to be pruned and is very annoying.
2021-09-29 23:03:20 +02:00
Mateo de Mayo
6f20b6d88f
d/rs: Add host-SLAM tracked device (hdev)
...
This device was tested on a D455 but should work on any other RealSense camera
that supports camera and IMU streams (even the T265), given that you properly
configure the external SLAM config file.
2021-09-28 16:11:42 -03:00
Mateo de Mayo
95e22ae7c8
d/rs: Implement new probing logic to choose between ddev and hdev creation
...
Also adds a rs_container to keep track of RealSense created objects that
are useful to have during execution.
2021-09-28 16:07:14 -03:00
Mateo de Mayo
961c7c8ed1
d/rs: Rename 6dof to ddev
...
This commit introduces the term `ddev` for a "Device-SLAM tracked device",
it will be useful to differentiate itself from the `hdev`
("Host-SLAM tracked device") that will be introduced in next commits.
Note that "config_realsense" json field was renamed to "config_realsense_device"
and the device's serial (used for tracking overrides) changed from
"Intel RealSense 6-DOF" to "Intel RealSense Device-SLAM".
2021-09-28 16:07:08 -03:00
Mateo de Mayo
f70752aeda
d/qwerty: Fix tracking overrides and correct multi typo
2021-09-28 16:07:03 -03:00
Mateo de Mayo
debdb11e02
t/slam: Miscelaneous NFC changes
...
- Use @todo instead of TODO for doxygen
- Improve the slam_tracker interface documentation
- Move euroc functions declared by macros into extern C
2021-09-28 12:49:36 +00:00
Mateo de Mayo
1a5af03111
t/slam: Move pose corrections into the tracked devices
...
This discards the pose correction logic used that was for the D455 not for
an euroc dataset. It will be reintroduced in a later commit with an
appropriate device.
2021-09-28 12:49:36 +00:00
Mateo de Mayo
0b7f3d92ef
d/euroc: Use new debug frame sinks
2021-09-20 14:59:18 +00:00
Jakob Bornecrantz
9bfabdf706
d/ht: Disable sink variable tracking
2021-09-17 13:39:50 +01:00
Jakob Bornecrantz
5d4adebbbe
d/euroc: Disable sink variable tracking
2021-09-17 13:39:50 +01:00
Jakob Bornecrantz
8ccd0c3dff
d/v4l2: Use u_sink_debug for debugging
2021-09-17 13:39:50 +01:00
Mateo de Mayo
6de1ab8f8e
d/euroc: Add euroc device
2021-09-15 19:03:55 +00:00
Mateo de Mayo
3c618ec20c
d/euroc: Improve euroc player
...
- Implement xrt_slam_source instead of xrt_fs
- Merge intermediate sink pointers into xrt_slam_sinks in_sinks
- Add out_sinks for downstream passage of data
- Make speed playback option a double (float was not precise enough)
- Add use_source_ts playback option to optionally use original dataset timestamps
- Fix colored datasets not working
2021-09-15 19:03:55 +00:00
Moses Turner
56f34d23b9
d/vive: Use m_relation history for HMD
2021-09-15 12:13:14 -05:00
Moses Turner
7f88583d37
d/survive: Use m_relation_history for HMD and controllers
2021-09-15 12:13:14 -05:00
Moses Turner
f9d540aee0
d/rs: Use m_relation_history for 6DOF
2021-09-15 12:13:14 -05:00
Moses Turner
7f69dc795f
d/ht; aux/util: Move ringbuffer implementation into aux/util
2021-09-15 12:13:00 -05:00
Moses Turner
ee429ac279
d/ht: make blackbar work with non-square inputs
2021-09-14 14:09:03 +01:00
Jakob Bornecrantz
5192e82948
d/ht: Tidy includes
2021-09-13 21:47:05 +01:00
Jakob Bornecrantz
4cdfadf3e0
d/ht: Tidy view creation
2021-09-13 21:47:04 +01:00
Christoph Haag
cc53994b4f
d/survive: Count ahead of time how many configs to wait for
...
On recent libsurvive versions, loading the config of the HMD takes quite
long when only a HMD is active without controllers.
Instead of adjusting the timeout value all the time, rework how we wait for
the device configs.
Previously we just waited for device configs to arrive until no new configs
arrive for a predefined timeout.
Now we count how many objects of interest libsurvive actually knows, and then
only wait until the configs for this many devices are loaded.
This should make initialization of the survive driver faster and more robust.
2021-09-04 02:35:59 +02:00
Moses Turner
d7fc516cfb
d/vive: Use hand tracking if VIVE_USE_HANDTRACKING is set
2021-09-03 21:06:18 +00:00
Moses Turner
db4a50410c
d/survive: Use hand tracking if there aren't any controllers
...
rebase-survive
2021-09-03 21:06:18 +00:00
Moses Turner
624a676f56
d/ht: Change everything
2021-09-03 21:06:18 +00:00
Moses Turner
efbc4cd9e5
d/survive: Allow users to set wait time through config_v0.json
...
Necessary for Moses - for some reason, with no controllers, his headset takes forever to probe
2021-09-03 21:06:18 +00:00
Moses Turner
815aa47ac2
d/vf: Add new format for stereo hand tracking
2021-09-03 21:06:18 +00:00
Jakob Bornecrantz
992642bdf8
d/vive: Tidy warning
2021-09-01 22:00:46 +01:00
Jakob Bornecrantz
407461fd4f
d/vive: Silence warnings from when the camera is running
2021-09-01 22:00:46 +01:00
Mateo de Mayo
97c59bd59f
d/euroc: Add EuRoC dataset reader driver.
...
A squash of the following commits.
d/euroc: Add Euroc driver initial boilerplate
d/euroc: Implement xrt_frame_node interface
d/euroc: Implement mainloop thread start flow
d/euroc: Parse samples from data.csv files
d/euroc: Determine dataset information at start
Also use that information to provide a xrt_fs mode and to know if
right camera images are available to use.
d/euroc: Produce frames for left and right sinks
d/euroc: Implement xrt_imu_sink
d/euroc: Implement playback properties
d/euroc: Implement pausing with UI state machine
d/euroc: Show IMU and progress data in UI
d/euroc: Make sure to give in nullptr or valid pointers to wrapL8
d/euroc: Unreference frames when done with them
d/euroc: Fix leaks with debug sinks, and work around free issue
d/euroc: Refactor playback to produce samples with current timestamps
d/euroc: Fix double free by separating debug sinks from downstream sinks
2021-08-27 18:38:40 +01:00
Jakob Bornecrantz
601a6832b8
d/vive: Use u_device_free to free distortion mesh data
2021-08-20 17:09:05 +01:00
Jakob Bornecrantz
df484c508d
d/vive: Tidy
2021-08-20 16:56:15 +01:00
Jakob Bornecrantz
d61cf5dc78
d/vive: Make sure to properly destroy controller
2021-08-20 16:56:15 +01:00
Jakob Bornecrantz
a89c8309c7
u/vive: Pass in logging level to parse function
2021-08-20 13:42:11 +01:00
Jakob Bornecrantz
00aca14832
u/vive: Add vive_config_teardown function to free any pointers that needs freeing.
2021-08-20 13:42:11 +01:00
Moses Turner
6dcf10a4fc
d/rs: clean up device list
2021-08-20 12:28:30 +01:00
Moses Turner
74c93f83f7
d/survive: Use u_device_free to free distortion mesh data
2021-08-20 12:28:22 +01:00
Moses Turner
e8907afeed
d/rs: Free JSON
2021-08-20 12:28:19 +01:00
Jakob Bornecrantz
003ade3006
d/ht: Don't leak when we can't create the hand-tracker tracker
2021-08-19 23:20:24 +01:00
Moses Turner
a1574312d2
d/v4l2: more paranoid logging
2021-08-18 13:17:17 -05:00
Jakob Bornecrantz
f27b50ff5a
d/dummy: Add option to rotate around up axis
2021-08-17 12:04:49 +01:00
Jakob Bornecrantz
a6bdf92fd0
d/vf: Remove debug message
2021-08-16 21:18:52 +01:00
Moses Turner
b2ef01af10
d/vf: Add trace marker
2021-08-16 21:18:46 +01:00
Jakob Bornecrantz
fb92a3f27f
d/vf: Add tracing support
2021-07-16 15:29:27 +00:00
Jakob Bornecrantz
a6a5b3dda6
d/vf: Refactor frame handling
2021-07-16 15:29:27 +00:00
Jakob Bornecrantz
f04a113693
d/vf: Tidy
2021-07-16 15:29:27 +00:00
Christoph Haag
be0b4f496a
d/ulv2: fix maybe uninitialized warning
...
../src/xrt/drivers/ultraleap_v2/ulv2_driver.cpp: In function 'void* leap_input_loop(void*)':
../src/xrt/drivers/ultraleap_v2/ulv2_driver.cpp:290:29: warning: 'hi' may be used uninitialized in this function [-Wmaybe-uninitialized]
290 | int hi; // hand index
| ^~
2021-07-15 01:35:49 +02:00
Christoph Haag
86e42858b7
d/qwerty: Add reasonable alternative code paths for asserts
...
In release builds asserts will be disabled, so we should try to handle the
assert cases reasonably.
This commit fixes several unused variable warnings when asserts are disabled.
2021-07-15 01:19:13 +02:00
Christoph Haag
2b94b2b165
d/ns: Fix may be used uninitialized warnings
2021-07-15 01:10:40 +02:00
Jakob Bornecrantz
94d029ed15
d/dai: Add tracing support
2021-07-09 20:23:49 -05:00
Jakob Bornecrantz
09513d73af
d/v4l2: Add tracing support
2021-07-09 21:43:21 +01:00
Jan Schmidt
8192e74f76
d/wmr: Compute visible region for render rectangle.
...
Use the distortion function to calculate the visible limits of the
display and then configure the rendered FoV angles accordingly.
2021-06-26 03:52:32 +10:00
Jan Schmidt
dfe932ffd7
d/wmr: Add an extensible headset map.
...
Add a mechanism for recognising known headsets and handling specific
init/deinit sequences for those that need it.
2021-06-26 03:52:29 +10:00
Dan Weatherford
6bb3577b1b
d/wmr: Implement Lenovo explorer support.
...
Recognise the Lenovo explorer device
2021-06-26 03:52:29 +10:00
Jan Schmidt
bad625965a
d/wmr: Extract JSON configuration from the firmware.
...
Pull in the WMR config obfuscation key and extract the JSON
calibration data.
Based on a patch from Dan Weatherford <sabretooth@gmail.com>
2021-06-26 03:52:26 +10:00
Dan Weatherford
3ca80e9607
d/wmr: Add functions to read raw config data
...
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2021-06-26 03:52:26 +10:00
Jan Schmidt
0cf7b4a9b3
d/wmr: Add render distortion configuration
...
Take the parameters from the headset configuration and the existing
render FoV, and use them to instantiate a distortion mesh.
TODO: Reverse the distortion in order to calculate good FoV range
that covers the full view for each headset.
2021-06-26 03:52:23 +10:00
Jan Schmidt
f663727b07
d/wmr: Add some groundwork for config parsing.
...
Sketch out some groundwork for parsing WMR config blocks,
using some hard-coded values from my headset for now. Later,
this will be parsed from the headset JSON blob.
2021-06-26 03:52:16 +10:00
Moses Turner
7461c57043
cmake: make ulv2 build a little better
2021-06-23 23:40:43 +01:00
Jakob Bornecrantz
47470cc8e2
d/ns: Use fread when reading from config file
2021-06-21 12:29:31 -05:00
Moses Turner
3569e4f2ed
d/ns: Fix 3D distortion FOV calc
...
co-authored-by: Nico Zobernig <nico.zobernig@gmail.com>
2021-06-21 12:29:31 -05:00
Moses Turner
bcadbea3aa
d/ns: Clean utility_northstar a bit
2021-06-21 12:29:31 -05:00
Moses Turner
7e385aa810
d/ns: Big refactor
2021-06-21 12:29:31 -05:00
Christoph Haag
ccb9777a47
d/vive: Set hand tracking values to actives
...
fixes !716 which introduced the need for setting hand joint active status.
2021-06-16 23:17:07 +02:00
Moses Turner
6285223fd2
d/dai: Even more tidy
2021-06-11 18:49:50 +01:00
Jakob Bornecrantz
576593010f
d/dai: Add code so we can open mono cameras with compile time option
2021-06-11 16:48:30 +00:00
Jakob Bornecrantz
96248931cc
d/dai: Refactor a bit so we can at compile time support OAK-D
2021-06-11 16:48:30 +00:00
Moses Turner
37cbbb6660
d/dai: Add simple DepthAI driver
...
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2021-06-10 14:32:07 -05:00
Jakob Bornecrantz
606b23b5c4
d/rs: Tidy code (NFC)
2021-05-18 03:48:50 +01:00
Moses Turner
5cb130cd08
d/rs: cleanup and initialize u_config_json with zero
2021-05-18 01:22:39 +00:00
Jae Lee
df9ebf261f
d/illixr: Update ILLIXR driver.
2021-05-16 22:59:32 +00:00
Moses Turner
302e72b2fe
d/rs: remove superfluous rs_update_offset; add config options
2021-05-13 17:57:34 -05:00
Jakob Bornecrantz
5c916fd77d
d/illixr: Use u_device_get_view_pose helper
2021-05-04 16:37:51 +00:00
Ryan Pavlik
348b7dff3a
d/wmr: fix doxygen warning
2021-05-04 11:21:46 -05:00
Ryan Pavlik
4ef5b65487
d/wmr: Fix typo
2021-04-30 17:57:50 -05:00
Ryan Pavlik
ad31345986
d/qwerty: Fix doxygen warnings.
...
Comments were a bit too clever to work across doxygen versions.
2021-04-30 17:34:21 -05:00
Ryan Pavlik
e82fafb186
cmake: Allow C++17 mode on all platforms, all modules.
...
Remove per-module C++17 settings.
2021-04-30 15:37:04 -05:00
Jakob Bornecrantz
daccde940e
d/wmr: Fix accel axis conversion
2021-04-28 23:26:09 +00:00
Moses Turner
f09e02c517
d/ns: fix resolution from 2880x1440 to 2880x1600
2021-04-28 18:07:07 -05:00
Ryan Pavlik
c6a3dec08e
doc: Rename sample NorthStar config for file extension reasons, and add schema
2021-04-28 21:13:34 +00:00
Jakob Bornecrantz
0c685cf7ba
d/qwerty: Use u_device_get_view_pose helper
2021-04-27 22:18:39 +00:00
Jakob Bornecrantz
b81d3138af
d/remote: Assert if st/oxr calls the wrong thing (NFC)
2021-04-27 17:34:28 +01:00
Jakob Bornecrantz
385af79e82
d/survive: Add comment and assert to get_view_pose (NFC)
2021-04-27 17:19:18 +01:00
Jakob Bornecrantz
a6b908f3ce
d/vive: Add comment and assert to get_view_pose (NFC)
2021-04-27 16:51:56 +01:00
Jakob Bornecrantz
8277df418d
xrt: Make eye_relation argument to xrt_device_get_view_pose const (NFC)
2021-04-27 01:44:13 +01:00
Ryan Pavlik
334b59f9fa
d/qwerty: Port to new unit-vector defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
48d043796c
d/vive: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
c3ce7f33a0
d/ht: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
06eab724ec
d/remote: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
fde3e631cf
d/qwerty: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
85ea0f8f78
d/oh: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
71fabf50c5
d/north_star: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
e44c6d56c7
d/wmr: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
3b0a6a558c
d/vive: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
2d47c496e6
d/survive: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
6682bb0291
d/hdk: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
52c00436c7
d/remote: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
89895be83b
d/psvr: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
7c5342efe2
d/oh: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
2774b3375f
d/north_star: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
d45e13642e
d/dummy: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Ryan Pavlik
f4a1c5344b
d/android_sensors: Port to u_device_get_view_pose
2021-04-26 22:38:42 +00:00
Jakob Bornecrantz
1ef79820e6
d/wmr: Clarify struct layout (NFC)
2021-04-23 22:48:56 +01:00
Jakob Bornecrantz
0807ce6ddd
d/wmr: Only take the lock once per received packet
2021-04-23 22:47:40 +01:00
Jakob Bornecrantz
13d127035b
d/wmr: Remove raw_accel and raw_gyro fields (NFC)
2021-04-23 19:06:05 +01:00
Jakob Bornecrantz
1b4b180e61
d/wmr: Do prediction when returning poses
2021-04-23 18:24:13 +01:00
Jakob Bornecrantz
a41a869c71
d/wmr: Rename variables and tidy code (NFC)
2021-04-23 14:50:58 +01:00
Christoph Haag
2b70189b45
d/wmr: log at least one space in trace log
...
Fixes warnings
../src/xrt/drivers/wmr/wmr_hmd.c:83:16: warning: zero-length gnu_printf format string [-Wformat-zero-length]
83 | WMR_TRACE(wh, "");
| ^~
2021-04-22 02:41:48 +02:00
Jan Schmidt
bc4661aa48
wmr: Don't start reading thread until setup is complete.
...
Make sure the headset struct is fully configured before
starting the reading thread, otherwise we can get a crash if an
IMU update arrives for processing before the 3dof fusion is
ready.
2021-04-22 03:39:16 +10:00
Ryan Pavlik
4488699e55
d/ultraleap_v2: Add missing copyright/license header, reflow, and fix markdownlint warnings.
2021-04-21 11:14:49 -05:00
Christoph Haag
885a668a03
d/oh: Fix number of inputs for generic controller
...
fixes memory corruption
2021-04-20 12:43:56 +02:00
nima01
027ce21bd5
d/wmr: Initial 3DoF WinMR driver
...
Only supports HP Reverb G1 and G2 for now.
Squash of the following commits:
Initial boilerplate code for HP Reverb G1 driver implementation
Detect and open MS HoloLens Sensors interface
Power up HMD display when headset is detected, and som general code cleanup
Add Reverb G2 PID
reverb_g1: Fix defines
reverb_g1: Run clang format
wmr: Rename Reverb G1 driver to WMR driver
d/wmr: Code style
d/wmr: Flesh out driver a bit more
d/wmr: Code style
Add basic 3dof rotational tracking
d/wmr: Code style
d/wmr: More tidy
xrt: Remove XRT_DEVICE_REVERB_G1
d/wmr: Even more tidy
d/wmr: Changes for Reverb G2
d/wmr: Fixes since last commit
wmr: Fix the meson build and auto-enable the driver
d/wmr: Sleep for compositor to get modes
d/wmr: Use os_hid for control device
d/wmr: Remove hidapi as a dependancy
d/wmr: Move sensor reading to own thread and fix locking
d/wmr: Read from control device and handle more unknown messages
d/wmr: Decode IPD value from control device
d/wmr: Remove all left over dummy driver fields
Co-author: nima01 <nima_zero_one@protonmail.com>
Co-author: Jakob Bornecrantz <jakob@collabora.com>
Co-author: Jan Schmidt <jan@centricular.com>
2021-04-19 13:33:01 +00:00
Christoph Haag
26d93c52df
d/multi: Use supplied pose input name enum
2021-04-19 12:53:47 +02:00
Christoph Haag
598c1a3b56
d/ohmd: Only set output name if there is an output
...
This needs to be revisited after OpenHMD gets a proper API for haptic feedback.
closes #119
2021-04-16 16:41:44 +02:00
Jakob Bornecrantz
0e18e1f8b0
d/qwerty: Add SDL include dirs
2021-04-15 21:27:13 +00:00
Moses Turner
7cd2a33737
drivers: switch blend mode to array
2021-04-11 04:08:49 -05:00
Christoph Haag
08e39a1a0e
d/survive: Increase device detection timeout
...
With libsurvive 20127ef1bbb9206c9b429de47b891fc71d9df355 it can take a bit longer for devices to appear.
2021-04-08 19:37:09 +02:00
Jakob Bornecrantz
98f81734c8
d/vf: Add clock overlay to videotestsource
2021-04-03 03:07:21 +01:00
Jakob Bornecrantz
1155106dc1
d/v4l2: Be more tolorant for long pipelines
2021-04-03 03:07:21 +01:00
Christoph Haag
3a60df33aa
d/openhmd: Add support for rift CV1 controllers
2021-04-02 15:48:10 +00:00
Jakob Bornecrantz
9695e90d95
d/vive: Setup the variable tracking for imu fusion
2021-04-02 16:00:42 +01:00
Moses Turner
55b86fe815
d/ulv2: Create the driver.
...
Co-authored-by: Moses Turner <mosesturner@protonmail.com>
Co-authored-by: Christoph Haag <christoph.haag@collabora.com>
2021-04-01 02:10:33 +02:00
Moses Turner
b319371500
d/survive: for now always set xrt_hand_joint_set->is_active to true
2021-04-01 02:02:26 +02:00
Moses Turner
d54b653751
d/multi: correctly override hand pose for "attached" tracking
2021-04-01 02:02:26 +02:00
Christoph Haag
4061bf7707
d/multi: Add "attached" tracking override type
...
Example usage: Leap Motion attached to a Northstar headset.
2021-04-01 02:02:26 +02:00
Mateo de Mayo
5c6158cc8b
d/qwerty: Implement controller pose reset
2021-03-29 15:42:01 -03:00
Mateo de Mayo
5e6c4b63a5
d/qwerty: Implement controller parenting to HMD
...
Although, it only works for the qwerty HMD.
2021-03-29 15:42:01 -03:00