Skip to main content

Navel Remote

This project will be deployed on the navel robot to enable remote control via ZTL

Installation

Clone the repository and set up a virtual environment:

git clone git@gitlab.com:robothouse/rh-projects/hospital-at-home/navel-remote.git
cd navel-remote
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -e .

This installs navel-remote in editable mode along with its dependencies (navel, ztl, ztl-web).

Usage

Once installed, two CLI commands are available:

navel-remote --help
navel-camera --help

Camera stream (navel-camera)

Publishes frames from the robot's head camera over ZTL.

navel-camera [-p PORT] [-s SCOPE] [--compress | --no-compress] [-q JPEG_QUALITY]
Flag Default Description
-p, --port 5665 Port to publish on.
-s, --scope /head_cam Scope to publish data under.
--compress / --no-compress --compress JPEG-compress frames before publishing. Cuts payload size roughly 10-20x, which matters over WiFi where an uncompressed ~920KB/frame stream needs ~9.2MB/s to sustain 10fps. Use --no-compress to publish raw navel.Frame objects instead (e.g. for lossless capture on a fast/local link).
-q, --jpeg-quality 80 JPEG quality (1-95) when --compress is enabled; lower values trade image quality for less bandwidth. Ignored with --no-compress.

Viewing the stream

test/display.py is a standalone script (not an installed CLI command) that subscribes to a running navel-camera and displays the stream with matplotlib. Compression is configured entirely on the publisher side (navel-camera's --compress/--no-compress, on by default); display.py has no matching flag because it doesn't need one — it inspects each incoming frame and transparently decodes whichever format was actually sent, JPEG-compressed or raw. Just point it at the remote host:

./test/display.py -r 10.0.1.184
Flag Default Description
-r, --remote navel1-1 Remote host running navel-camera to subscribe to.
-p, --port 5665 Remote port to subscribe to (must match navel-camera's --port).
-s, --scope /head_cam Scope data is published under (must match navel-camera's --scope).

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

navel_remote-0.3.3.tar.gz (21.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

navel_remote-0.3.3-py2.py3-none-any.whl (11.2 kB view details)

Uploaded Python 2Python 3

Release history Release notifications | RSS feed

This release

0.3.3 This release

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.0

2 files

0.1.5

2 files

0.0.4

2 files

0.0.3

2 files

0.0.2

2 files

0.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page