[tools] Add UnifiedMocapRouter (#3598)

* Replace NatNet with UnifiedMocapRouter
* Safeguard + install
* Remove warning in make clean
* Subproject update: readme about smaller install and make clean
This commit is contained in:
Christophe De Wagter
2026-02-17 15:49:13 +01:00
committed by GitHub
parent 2de3786485
commit 4df9b5907b
8 changed files with 52 additions and 5 deletions
+3
View File
@@ -56,3 +56,6 @@
[submodule "sw/ext/dronecan/libcanard"]
path = sw/ext/dronecan/libcanard
url = https://github.com/dronecan/libcanard.git
[submodule "sw/ext/unifiedmocaprouter"]
path = sw/ext/unifiedmocaprouter
url = https://github.com/tudelft/UnifiedMocapRouter.git
+4 -1
View File
@@ -171,6 +171,9 @@ ext:
opencv_bebop:
$(MAKE) -C $(EXT) opencv_bebop
mocap:
$(MAKE) -C $(EXT) unifiedmocaprouter
#
# make misc subdirs
#
@@ -346,6 +349,6 @@ test_full:
.PHONY: all print_build_version _print_building _save_build_version init dox ground_segment ground_segment.opt \
subdirs $(SUBDIRS) conf ext libpprz libpprzlink.update libpprzlink.install tmtc tmtc.opt generators\
static sim_static opencv_bebop\
static sim_static opencv_bebop mocap \
clean cleanspaces ab_clean dist_clean distclean dist_clean_irreversible \
test test_examples test_math test_all_confs
+11
View File
@@ -0,0 +1,11 @@
<program name="UnifiedMoCap" command="sw/ext/unifiedmocaprouter/build/mocap-router" icon="natnet.svg">
<arg flag="optitrack"/>
<arg flag="ivy"/>
<arg flag="--publish_frequency" constant="10"/>
<arg flag="--coordinate_system" constant="enu"/>
<arg flag="--coordinate_north" constant="far"/>
<arg flag="--craft_noses" constant="right"/>
<arg flag="--streaming_ids" constant="1"/>
<arg flag="--ac_id" constant="@AC_ID"/>
</program>
@@ -1,5 +1,6 @@
<control_panel name="paparazzi control panel">
<section name="programs">
<program name="UnifiedMoCap" command="sw/ext/unifiedmocaprouter/build/mocap-router"/>
</section>
<section name="sessions">
@@ -40,6 +41,16 @@
<program name="Data Link">
<arg flag="-udp"/>
</program>
<program name="UnifiedMoCap" command="sw/ext/unifiedmocaprouter/build/mocap-router">
<arg flag="optitrack"/>
<arg flag="ivy"/>
<arg flag="--publish_frequency" constant="10"/>
<arg flag="--coordinate_system" constant="enu"/>
<arg flag="--coordinate_north" constant="far"/>
<arg flag="--craft_noses" constant="right"/>
<arg flag="--streaming_ids" constant="1"/>
<arg flag="--ac_id" constant="@AC_ID"/>
</program>
<program name="Server"/>
<program name="PprzGCS">
<arg flag="--speech"/>
-1
View File
@@ -1 +0,0 @@
start.py
+21 -2
View File
@@ -35,8 +35,10 @@ include $(PAPARAZZI_SRC)/conf/Makefile.arm-embedded-toolchain
MY_PYTHON := $(shell echo `which python3`)
MY_MAVLINKTOOLS := $(shell $(MY_PYTHON) -c 'import imp; import future' 2>&1)
MY_DRONECANTOOLS := $(shell $(MY_PYTHON) -c 'import em' 2>&1)
BOOST_INSTALLED := $(shell dpkg -s libboost-program-options-dev >/dev/null 2>&1 && echo yes)
CMAKE_INSTALLED := $(shell command -v cmake 2>/dev/null)
all: chibios fatfs libsbp TRICAL hacl-c key_generator rustlink ecl matrix mavlink dronecan
all: chibios fatfs libsbp TRICAL hacl-c key_generator rustlink ecl matrix mavlink dronecan unifiedmocaprouter
# update (and init if needed) all submodules
update_submodules:
@@ -102,6 +104,23 @@ else
@echo dronecan not installed, missing package 'em'
endif
unifiedmocaprouter: unifiedmocaprouter.update unifiedmocaprouter.build
unifiedmocaprouter.build:
ifeq ($(BOOST_INSTALLED),yes)
ifeq ($(CMAKE_INSTALLED),)
@echo "cmake is not installed. Please install cmake to build unifiedmocaprouter."
else
cd $(EXT_DIR)/unifiedmocaprouter/ && \
mkdir -p build && \
cd build && \
cmake -D'MOCAPS=optitrack' -D'AGENTS=console;ivy' .. && \
make
endif
else
@echo "libboost-program-options-dev is not installed. Please install it to build unifiedmocaprouter."
endif
clean:
@@ -114,4 +133,4 @@ clean_opencv_bebop:
.PHONY: all clean update_submodules \
chibios fatfs \
mavlink.build libsbp pprzlink pprzlink.build opencv_bebop \
opencv_bebop.build clean_opencv_bebop TRICAL dronecan
opencv_bebop.build clean_opencv_bebop unifiedmocaprouter TRICAL dronecan
+1 -1
View File
@@ -1,4 +1,4 @@
all:
g++ VectorNavSetup_console.cpp -o vn_console_setup
clean:
rm vn_console_setup
rm -f vn_console_setup