libsurvive
libsurvive copied to clipboard
Need to physically reconnect watchman between runs
Describe the bug
Everything is working fine on the first run, but after interrupting (with Ctrl-C), and re-launching the same command, libsurvive seems stuck at the Info: Cleanup config for WM0 at 0.000000. The problem is specific to the dongle, when the tracker is wired everything is working fine.
Steps to reproduce :
- Every hardware is up and running, tracker v2 is connected via official dongle.
-
./bin/survive-cli - Ctrl-c
-
./bin/survive-cli
Data First attempt , ok Second attempt, failed :
virgile@pop-os:~/ws/libsurvive$ ./bin/survive-cli --record unsuccessfull.rec.gz -v 100
Info: Config file is /home/virgile/.config/libsurvive/config.json
Info: Config file switched to /home/virgile/.config/libsurvive/unsuccessfull.rec.gz.json
Info: Adding LH 0 mode: 0 id: 02f97e98
Info: Adding LH 1 mode: 1 id: 431a55fd
Info: Recording to 'unsuccessfull.rec.gz' Compression: 1
Info: Available Posers:
Info: Dummy
Info: KalmanOnly
Info: *MPFIT
Info: BaryCentricSVD
Info: Totals 4 Posers.
Info: Using 'MPFIT' for poser
Info: Available Disambiguators:
Info: *StateBased
Info: Totals 1 Disambiguators.
Info: Using 'StateBased' for disambiguator
Info: usb-hz-output: -1
Info: Successfully enumerated Watchman (1) 28de:2101
Info: Successfully enumerated Watchman 28de:2101
Info: report-ignore-start: 0
Info: light-required-obs: 16
Info: use-adaptive-imu: 0
Info: use-adaptive-lightcap: 0
Info: use-adaptive-obs: 0
Info: min-report-time: -1.000000
Info: light-error-threshold: +0.100000
Info: light-ignore-threshold: +1.000000
Info: report-ignore-threshold: +1.000000
Info: imu-acc-variance: +0.000050
Info: imu-gyro-variance: +0.010000
Info: obs-pos-variance: +0.020000
Info: obs-rot-variance: +0.010000
Info: light-variance: +0.000001
Info: process-weight-acc: +10.000000
Info: process-weight-vel: +0.000000
Info: process-weight-pos: +0.000000
Info: process-weight-ang-vel: +1.000000
Info: process-weight-rot: +0.000000
Info: kalman-moving-acc-scale-alpha: +0.000000
Info: kalman-stationary-acc-scale-alpha: +0.005000
Info: Tracker config for WM0
Info: min-report-time -1.000000e+00
Info: light-error-threshold 1.000000e-01
Info: light-ignore-threshold 1.000000e+00
Info: report-ignore-threshold 1.000000e+00
Info: imu-acc-variance 5.000000e-05
Info: imu-gyro-variance 1.000000e-02
Info: obs-pos-variance 2.000000e-02
Info: obs-rot-variance 1.000000e-02
Info: light-variance 1.000000e-06
Info: process-weight-acc 1.000000e+01
Info: process-weight-vel 0.000000e+00
Info: process-weight-pos 0.000000e+00
Info: process-weight-ang-vel 1.000000e+00
Info: process-weight-rot 0.000000e+00
Info: kalman-moving-acc-scale-alpha 0.000000e+00
Info: kalman-stationary-acc-scale-alpha 5.000000e-03
Info: Adding tracked object WM0 from HTC
Info: Requesting config for WM0 0x556d11e0d690 0
Info: Attaching IMU/Lightcap/Buttons(0x81) for WM0
Info: All enumerated devices attached.
Info: Loaded drivers: HTCVive
Info: Position found for LH 0(ID: 02f97e98, mode: 0) -0.000000e+00 +6.852080e-01 +1.116777e+00 +1.113700e-01 +1.970100e-02 +4.600989e-01 +8.806348e-01
Info: Position found for LH 1(ID: 431a55fd, mode: 1) -1.708342e+00 -3.814430e-01 +1.070258e+00 -5.313102e-01 -3.650621e-01 +3.839291e-01 +6.610882e-01
Info: Config done in 0.993610 sec for WM0
Info: Device WM0 has watchman FW version 1541806442 and FPGA version 531/7/2; named 'RUNNER-WATCHMAN$runner-watchman'. Hardware id 0x84020006
Info: Read config for WM0
Info: Version done in 1.020921 sec for WM0
Info: Submitting magic vive_magic_protocol_super_magic at 1.020930 sec for WM0 - Watchman
Info: Gen2 reason: WM0 sweep called
Info: Detected LH gen 2 system.
Info: Submitting magic vive_magic_rf_raw_mode_0 at 1.022554 sec for WM0 - Watchman
Info: LightcapMode (WM0) 0 -> 2
Info: max-error: +0.010000
Info: failures-to-reset: -1
Info: successes-to-reset: -1
Info: disable-lighthouse: -1
Info: sensor-variance-per-sec: +0.000000
Info: sensor-variance: +1.000000
Info: Submitting magic vive_magic_protocol_switch at 1.025681 sec for WM0 - Watchman
Info: Magics done in 1.029603 sec for WM0 Watchman
Info: Cleanup config for WM0 at 0.000000
^CWarning: Libusb poll failed. -10 (LIBUSB_ERROR_INTERRUPTED)
Info: Button events processed: 0
Info: Cleaning up interface on 3 IMU/Lightcap/Buttons
Info: Cleaning up transfer on 3 IMU/Lightcap/Buttons
Info: MPFIT stats for WM0:
Info: meas failures 0
Info: total iterations 0
Info: avg iterations 0.000000
Info: total fevals 0
Info: avg fevals 0.000000
Info: total runs 0
Info: avg error 0.0000000000
Info: avg orig error 0.0000000000
Info: Status MP_OK_CHI 0
Info: Status MP_OK_PAR 0
Info: Status MP_OK_BOTH 0
Info: Status MP_OK_DIR 0
Info: Status MP_MAXITER 0
Info: Status MP_FTOL 0
Info: Status MP_XTOL 0
Info: Status MP_GTOL 0
Info: Status MP_OK_NORM 0
Info: MPFIT overall stats:
Info: meas failures 0
Info: total iterations 0
Info: avg iterations 0.000000
Info: total fevals 0
Info: avg fevals 0.000000
Info: total runs 0
Info: avg error 0.0000000000
Info: avg orig error 0.0000000000
Info: Status MP_OK_CHI 0
Info: Status MP_OK_PAR 0
Info: Status MP_OK_BOTH 0
Info: Status MP_OK_DIR 0
Info: Status MP_MAXITER 0
Info: Status MP_FTOL 0
Info: Status MP_XTOL 0
Info: Status MP_GTOL 0
Info: Status MP_OK_NORM 0
Info: seed runs 0 / 0
Info: error failures 0
Info: Statistics for WM0 (driver HTC)
Info: Extent hits 0
Info: Naive hits 0
Info: Extent misses 0
Info: Extent min 0.0000
Info: Extent max 0.0000
Info: IMU WM0 tracker statistics:
Info: state_cnt 19
Info: avg hz -nan
Info: late imu 0
Info: late light 0
Info: Dropped poses 0 of 0 (-nan%)
Info: Mean reported variance -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan
Info: Mean dropped variance -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan -nan
Info: Obs error -nan ( 0 integrations)
Info: Lightcap error -nan ( 0 integrations)
Info: IMU error -nan ( 0 integrations -nanhz)
Info:
Info: gyro bias +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: Lightcap R +1.000000e-06
Info: Gyro R +5.000000e-05 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +5.000000e-05 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +5.000000e-05 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +1.000000e-02 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +1.000000e-02 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +1.000000e-02
Info: Observation R +1.000000e-02 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +1.000000e-02 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +1.000000e-02 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +1.000000e-02 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +2.000000e-02 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +2.000000e-02 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +2.000000e-02
Info:
Manually disconnecting and reconnecting the dongle, then running successfully :
virgile@pop-os:~/ws/libsurvive$ ./bin/survive-cli --record successfull.rec.gz -v 100
Info: Config file is /home/virgile/.config/libsurvive/config.json
Info: Config file switched to /home/virgile/.config/libsurvive/successfull.rec.gz.json
Info: Adding LH 0 mode: 0 id: 02f97e98
Info: Adding LH 1 mode: 1 id: 431a55fd
Info: Recording to 'successfull.rec.gz' Compression: 1
Info: Available Posers:
Info: Dummy
Info: KalmanOnly
Info: *MPFIT
Info: BaryCentricSVD
Info: Totals 4 Posers.
Info: Using 'MPFIT' for poser
Info: Available Disambiguators:
Info: *StateBased
Info: Totals 1 Disambiguators.
Info: Using 'StateBased' for disambiguator
Info: usb-hz-output: -1
Info: Successfully enumerated Watchman (1) 28de:2101
Info: Successfully enumerated Watchman 28de:2101
Info: report-ignore-start: 0
Info: light-required-obs: 16
Info: use-adaptive-imu: 0
Info: use-adaptive-lightcap: 0
Info: use-adaptive-obs: 0
Info: min-report-time: -1.000000
Info: light-error-threshold: +0.100000
Info: light-ignore-threshold: +1.000000
Info: report-ignore-threshold: +1.000000
Info: imu-acc-variance: +0.000050
Info: imu-gyro-variance: +0.010000
Info: obs-pos-variance: +0.020000
Info: obs-rot-variance: +0.010000
Info: light-variance: +0.000001
Info: process-weight-acc: +10.000000
Info: process-weight-vel: +0.000000
Info: process-weight-pos: +0.000000
Info: process-weight-ang-vel: +1.000000
Info: process-weight-rot: +0.000000
Info: kalman-moving-acc-scale-alpha: +0.000000
Info: kalman-stationary-acc-scale-alpha: +0.005000
Info: Tracker config for WM0
Info: min-report-time -1.000000e+00
Info: light-error-threshold 1.000000e-01
Info: light-ignore-threshold 1.000000e+00
Info: report-ignore-threshold 1.000000e+00
Info: imu-acc-variance 5.000000e-05
Info: imu-gyro-variance 1.000000e-02
Info: obs-pos-variance 2.000000e-02
Info: obs-rot-variance 1.000000e-02
Info: light-variance 1.000000e-06
Info: process-weight-acc 1.000000e+01
Info: process-weight-vel 0.000000e+00
Info: process-weight-pos 0.000000e+00
Info: process-weight-ang-vel 1.000000e+00
Info: process-weight-rot 0.000000e+00
Info: kalman-moving-acc-scale-alpha 0.000000e+00
Info: kalman-stationary-acc-scale-alpha 5.000000e-03
Info: Adding tracked object WM0 from HTC
Info: Requesting config for WM0 0x5603ce171690 0
Info: Attaching IMU/Lightcap/Buttons(0x81) for WM0
Info: All enumerated devices attached.
Info: Loaded drivers: HTCVive
Info: Position found for LH 0(ID: 02f97e98, mode: 0) -0.000000e+00 +6.852080e-01 +1.116777e+00 +1.113700e-01 +1.970100e-02 +4.600989e-01 +8.806348e-01
Info: Position found for LH 1(ID: 431a55fd, mode: 1) -1.708342e+00 -3.814430e-01 +1.070258e+00 -5.313102e-01 -3.650621e-01 +3.839291e-01 +6.610882e-01
Info: Config done in 0.997805 sec for WM0
Info: Device WM0 has watchman FW version 1541806442 and FPGA version 531/7/2; named 'RUNNER-WATCHMAN$runner-watchman'. Hardware id 0x84020006
Info: Read config for WM0
Info: Version done in 1.024547 sec for WM0
Info: Submitting magic vive_magic_protocol_super_magic at 1.024552 sec for WM0 - Watchman
Info: Submitting magic vive_magic_rf_raw_mode_0 at 1.026720 sec for WM0 - Watchman
Warning: WM0 handle_input needed 1 bytes but had 4294967295
Info: max-error: +0.010000
Info: failures-to-reset: -1
Info: successes-to-reset: -1
Info: disable-lighthouse: -1
Info: sensor-variance-per-sec: +0.000000
Info: sensor-variance: +1.000000
Info: Submitting magic vive_magic_protocol_switch at 1.029844 sec for WM0 - Watchman
Warning: No channel specified for sweep
86 cf fe 01 02 db 47 a8 f1 87 00 21 00 76 b4 c5 c7 00 00 13 02 07 02 0a 40 13 01 6a de 02 66 ea 3b 0f 76 fe fb ff 09 00 21 00 76 b4 c5 c7 00 00 13 02 07 02 0a 40 00 00 00 00 00 00 00 00 00 a7 ee 24 bf 3c 7f 00 00 03 00 00 00 00 00 00 00 17 91 25 bf 3c 7f 00 00 64 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Info: Magics done in 1.032722 sec for WM0 Watchman
Info: Cleanup config for WM0 at 0.000000
Info: Gen2 reason: WM0 no OOTX pulses detected
Info: Detected LH gen 2 system.
Info: LightcapMode (WM0) 1 -> 2
Info: max-error: +0.010000
Info: max-cal-error: +0.000100
Info: Setting min report time for WM0 to 4.000000 ms
^CWarning: Libusb poll failed. -10 (LIBUSB_ERROR_INTERRUPTED)
Info: Button events processed: 0
Info: Cleaning up interface on 3 IMU/Lightcap/Buttons
Info: Cleaning up transfer on 3 IMU/Lightcap/Buttons
Info: MPFIT stats for WM0:
Info: meas failures 0
Info: total iterations 3098
Info: avg iterations 3.442222
Info: total fevals 6436
Info: avg fevals 7.151111
Info: total runs 900
Info: avg error 0.0007127724
Info: avg orig error 0.0019018948
Info: noisy meas cnt 0 / 37703 (0.00%)
Info: dropped lh cnt 0 / 1796 (0.00%)
Info: Status MP_OK_CHI 0
Info: Status MP_OK_PAR 896
Info: Status MP_OK_BOTH 0
Info: Status MP_OK_DIR 0
Info: Status MP_MAXITER 0
Info: Status MP_FTOL 0
Info: Status MP_XTOL 0
Info: Status MP_GTOL 0
Info: Status MP_OK_NORM 4
Info: MPFIT overall stats:
Info: meas failures 0
Info: total iterations 3098
Info: avg iterations 3.442222
Info: total fevals 6436
Info: avg fevals 7.151111
Info: total runs 900
Info: avg error 0.0007127724
Info: avg orig error 0.0019018948
Info: noisy meas cnt 0 / 37703 (0.00%)
Info: dropped lh cnt 0 / 1796 (0.00%)
Info: Status MP_OK_CHI 0
Info: Status MP_OK_PAR 896
Info: Status MP_OK_BOTH 0
Info: Status MP_OK_DIR 0
Info: Status MP_MAXITER 0
Info: Status MP_FTOL 0
Info: Status MP_XTOL 0
Info: Status MP_GTOL 0
Info: Status MP_OK_NORM 4
Info: seed runs 29 / 900
Info: error failures 0
Info: StateBased Disambiguator statistics:
Info: sync_time_error 0
Info: confidence_resets 0
Info: drop_sweeps 0
Info: sweep_hit_count 0
Info: sync_count[0] 0
Info: drop_syncs[0] 0
Info: sync_count[1] 0
Info: drop_syncs[1] 0
Info: Statistics for WM0 (driver HTC)
Info: Extent hits 0
Info: Naive hits 0
Info: Extent misses 0
Info: Extent min 0.0000
Info: Extent max 0.0000
Info: LH 0
Info: Syncs: 463
Info: Skipped Syncs: 0
Info: Sync resets: 0
Info: Bad Syncs: 0
Info: Hits: 5435
Info: Drops: 0
Info: Rejected Data: 0
Info: LH 1
Info: Syncs: 465
Info: Skipped Syncs: 0
Info: Sync resets: 0
Info: Bad Syncs: 0
Info: Hits: 6055
Info: Drops: 0
Info: Rejected Data: 0
Info: IMU WM0 tracker statistics:
Info: state_cnt 19
Info: avg hz 159.764478
Info: late imu 0
Info: late light 0
Info: Dropped poses 30 of 1439 (2.08%)
Info: Mean reported variance +4.540152e-06 +5.093939e-06 +1.018723e-05 +3.758541e-05 +3.678884e-05 +4.821831e-05 +5.052064e-05 +1.292577e-03 +1.365488e-03 +1.732551e-03 +1.154839e-02 +1.034369e-02 +1.200422e-02 +1.102958e+122 +3.996849e-311 +4.095588e-311 +1.464240e-310 +5.854743e-310 +4.065276e-311
Info: Mean dropped variance +1.369411e-04 +1.506026e-04 +1.554922e-04 +5.079189e-05 +5.092340e-05 +6.333781e-05 +6.692808e-05 +1.430795e+00 +1.432020e+00 +1.432387e+00 +1.594823e+00 +1.594873e+00 +1.594931e+00 +1.614085e+121 +0.000000e+00 +4.934443e-313 +5.921347e-312 +7.361244e-312 +6.417069e-312
Info: Obs error 1.925742e-02 ( 900 integrations)
Info: Lightcap error 3.573417e-03 ( 10377 integrations)
Info: IMU error 9.790698e-03 ( 2207 integrations 250.248548hz)
Info:
Info: gyro bias -5.530876e-03 +9.411267e-03 +3.505849e-02
Info: Lightcap R +1.000000e-06
Info: Gyro R +5.000000e-05 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +5.000000e-05 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +5.000000e-05 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +1.000000e-02 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +1.000000e-02 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +1.000000e-02
Info: Observation R +1.000000e-02 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +1.000000e-02 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +1.000000e-02 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +1.000000e-02 +0.000000e+00 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +2.000000e-02 +0.000000e+00 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +2.000000e-02 +0.000000e+00
Info: +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +0.000000e+00 +2.000000e-02
Info: Lighthouse 0
Info: Avg error 3.340617e-03
Info: Count 4903
Info: Current error 3.500212e-03
Info: Lighthouse 1
Info: Avg error 3.781934e-03
Info: Count 5474
Info: Current error 4.323342e-03
Info:
Hardware setup 2 x Basestation v2 1x tracker v2 (2018) with official dongle.
Desktop (please complete the following information):
- OS: Linux
- Version ubuntu 20.04
- Kernel: 5.11.0-7612-generic