vision-rs / Cross-Compilation & Deployment
Deploying to the Device
Copying the package over
cargo teeny deploy \
--package ./dist/yolo26-orin \
--host <user>@<orin-host> \
--dest /home/<user>/vision-rs-yolo26
- Uses
rsync -aover SSH; set up key-based auth on the device first, or it’ll prompt for a password interactively (stdio is inherited, so that works too). - By default, re-running
deployonly copies files that aren’t already on the remote — safe to re-run after a partial transfer. Pass--overwriteto force a full re-sync, e.g. after rebuilding/repackaging with changes. --ssh "ssh -p <port>"if the device uses a non-default SSH port.
Running on the device
ssh <user>@<orin-host>
cd /home/<user>/vision-rs-yolo26
data/ was scaffolded empty by package — populate it before running
anything that needs a model/dataset, either by:
- letting the binary download it directly on the device (if it has
internet access):
./bin/yolo26 download --dataset assets/datasets/coco128.toml - or
rsync-ing pre-downloaded models/datasets from your host’s$MODELS_CACHE_DIR/$DATASETS_CACHE_DIRintodata/on the device instead.
Then run a smoke test, e.g. the same throughput/latency benchmark used in development (see Benchmarking & Profiling):
./bin/yolo26 bench \
--model ultralytics/yolo26n \
--dataset assets/datasets/coco128.toml \
--skip-map \
--warmup 10 \
--runs 100
See the project’s CLAUDE.md for the full set of yolo26 subcommands
(view, verify, train, validate, …).