Skip to main content

Visualizes the state of your nova instance inside of [rerun.io](https://rerun.io). This is intended to be used alongside the [nova python lib](https://github.com/wandelbotsgmbh/wandelbots-nova).

Project description

nova rerun bridge

Visualizes the state of your nova instance inside of rerun.io. Rerun is a tool to quickly visualize time series data. Instructions for navigation within the Rerun Viewer. This is intended to be used alongside the nova python lib. You will need a running nova instance. Register on wandelbots.com to get access.

The bridge supports:

  • robot (see a list of supported robots)
  • trajectory
  • dh parameters of robot
  • collision model of robot
  • safety zones of the robot controller
  • collision objects defined in the collision store

Install the app with the nova cli tool by running:

nova catalog install rerun

to use it on your nova instance.

https://github.com/user-attachments/assets/ab527bc4-720a-41f2-9499-54d6ed027163

rerun desktop app

Setup

Adjust the WANDELAPI_BASE_URL and NOVA_ACCESS_TOKEN in the .env file to your instance URL (e.g. https://unzhoume.instance.wandelbots.io) and access token. You can find the access token in the developer portal.

Run the following command to install the dependencies:

poetry install

Run

There are two script which can be run to feed the data to the rerun desktop app:

  • run python scripts/populate.py to start a service which periodically polls the nova instance for new planned trajectories
  • run python scripts/stream_motion_groups.py to start a service which streams the state of the active motion groups

Development

Deploy on local instance

  • use the kubeconfig from your nova instance and run export KUBECONFIG=kubeconfig

  • you can use skaffold to build the image and change the deployment

skaffold dev --cleanup=false --status-check=false

Tools

  • code formatting and linting is done with [ruff]
poetry run ruff check scripts/. --fix
poetry run ruff format

Build

To build the package locally, run the following command

poetry build

This will create a dist/ directory with the built package (.tar.gz and .whl files).

Installation

pip install wandelbots

Install a development branch in Poetry

nova-rerun-bridge = { git = "https://github.com/wandelbotsgmbh/nova-rerun-bridge.git", branch = "feature/branchname" }

Issues

  • rerun is able to run behind reverse proxy and the viewer can connect via web
  • rerun sdk is not able to connect to rerun which is hosted behind reverse proxy
    • client communicates just via sockets
    • intermediate solution is socat
brew install socat
socat TCP4-LISTEN:6666,fork SYSTEM:"curl -X POST -d @- http://172.30.2.224/some/rerun/sdk/"

{ echo "load_module /usr/lib/nginx/modules/ngx_stream_module.so;"; cat /etc/nginx/nginx.conf; } > temp_file && mv temp_file /etc/nginx/nginx.conf

Project details


Download files

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

Source Distribution

nova_rerun_bridge-0.9.0.tar.gz (29.1 kB view details)

Uploaded Source

Built Distribution

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

nova_rerun_bridge-0.9.0-py3-none-any.whl (35.1 kB view details)

Uploaded Python 3

File details

Details for the file nova_rerun_bridge-0.9.0.tar.gz.

File metadata

  • Download URL: nova_rerun_bridge-0.9.0.tar.gz
  • Upload date:
  • Size: 29.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for nova_rerun_bridge-0.9.0.tar.gz
Algorithm Hash digest
SHA256 1ebaab84bf6a8d8301d9e0c4d2bd2e3e369f8ced9d6b2d7c7c7be98a850a7e64
MD5 ce5be443f7105eff392467227976dec7
BLAKE2b-256 992dc34a7a7ee6dd8b6e6575ba0c311b5c10f32f7ff2371213082676b7c215e0

See more details on using hashes here.

File details

Details for the file nova_rerun_bridge-0.9.0-py3-none-any.whl.

File metadata

File hashes

Hashes for nova_rerun_bridge-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a4c5298e87ebc6578c58b998792b8a130bd90d93a75bf9716f971bdb57e6b8d4
MD5 85009f4646100add9de316850a9cc9db
BLAKE2b-256 15ea50306002587ee38870f26e752e7afe27ff4ac26993c11d43eddc50f21ec1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page