Repository navigation
nav tooling
Andrew Lauer edited this page Sep 4, 2026
·
30 revisions
Lidar -> *Lio -> Raycaster -> Mapper -> Navigation
DIMOS_NAV_RECORD=1 RECORD_PCAP=1 dimos --build-native --rerun-host 0.0.0.0 run unitree-go2-nav-3d
# after being finished recording
latest_recording="$(ls -dt ~/.local/state/dimos/recordings/*/mem2.db | head -1)"
uv run python -m dimos.navigation.nav_3d.mls_planner.utils.plan_rrd "$latest_recording"https://github.com/dimensionalOS/dimos/blob/main/dimos/mapping/utils/cli/dataset_validation.md
build
uv run maturin develop --uv --release -m dimos/mapping/ray_tracing/rust/py/Cargo.toml && uv run maturin develop --uv --release -m dimos/navigation/nav_3d/mls_planner/rust/py/Cargo.tomlrun
uv run python -m dimos.navigation.nav_3d.mls_planner.utils.plan_rrd mid360_athens_stairs --robot-height 0.4 --lidar-stream pointlio_lidar --odom-stream pointlio_odometry- Record mid360 with PCAP enabled (or use tcpdump), see the
go2_mid360.mddoc (in dimos) - Use
pcap_to_db.pyto generate alternative lidar/odom outcomes - renders to rerun
You can see/edit the default Point-LIO config here.
python -m dimos.hardware.sensors.lidar.pointlio.scripts.pcap_to_db --pcap mid360_shake_stairs/mid360_shake_stairs.pcap --db stairs.dbwill open up rerun with aggregated map + odom path create a new db file with the pointlio stream
generate a global map from this via
dimos map global --lidar pointlio_lidar --pgo-tol=0 --no-carve
dimos run relocalize-mid360 --dataset go2_mid360_sf_office_outdoors_2026-05-29 --map-file go2_mid360_sf_office_outdoors_2026-05-29
dimos run relocalize-mid360 --dataset go2_mid360_china_office_2026-06-12 --map-file go2_mid360_china_office_2026-06-12
china dataset starts in an unmapped area so reloc takes a bit, this is on purpose, test against false positives add --skip 60 not to wait
The module aliases the synthetic IPs onto lo0, which needs sudo. A tty-less
worker can't prompt, so set up the interface by hand, then pass
--no-network-setup:
sudo ifconfig lo0 alias 192.168.1.5 netmask 255.255.255.0
sudo ifconfig lo0 alias 192.168.1.155 netmask 255.255.255.0
sudo route -n add -host 224.1.1.5 -interface lo0
sudo route -n add -host 255.255.255.255 -interface lo0
python -m dimos.hardware.sensors.lidar.pointlio.scripts.pcap_to_db \
--pcap "$PCAP" --no-network-setup