Skip to content

qyswarm/swarmdock-release

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SwarmDock ver0.2

SwarmDock is the prebuilt binary distribution of the SwarmPlug system. SwarmPlug defines the underlying versioned infrastructure and canonical naming model for heterogeneous ROS-based systems. SwarmDock provides a ready-to-run binary package for ROS1 discovery, host binding, and canonical resource listing.

Features

  • ROS1 Master discovery
  • ROS host binding helper
  • ROS topic / node / service / parameter listing
  • Canonical resource naming
  • Prebuilt binary distribution

Canonical output format:

/sp/<host_id>/<kind>/<ros_path>

Download

Please download the prebuilt package from the GitHub Releases page: https://github.com/qyswarm/swarmdock-release/releases

Current ver0.2 packages:

swarmdock_ver0.2_delivery_x86_64_*.tar.gz

swarmdock_ver0.2_delivery_arm64_*.tar.gz

Choose the package that matches your target device.

Package Target
x86_64 Desktop / laptop / server Linux
arm64 Radxa, Raspberry Pi 5 / CM5, Orange Pi, and other ARM64 Linux boards

Note: x86_64 binaries cannot run on ARM64 boards, and ARM64 binaries cannot run on x86_64 machines.

Install on x86_64 Linux

tar -xzf swarmdock_ver0.2_delivery_x86_64_*.tar.gz
cd swarmdock_ver0.2

./install.sh ~/swarmdock_ver0.2_runtime

echo 'export PATH="$HOME/swarmdock_ver0.2_runtime/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Install on arm_64 Linux (docker-ros)

This package has been tested on Radxa with ROS Noetic Docker.

tar -xzf swarmdock_ver0.2_delivery_arm64_*.tar.gz
cd swarmdock_ver0.2_arm64

./install.sh ~/swarmdock_ver0.2_runtime

echo 'export PATH="$HOME/swarmdock_ver0.2_runtime/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

Configure

Edit:

vim ~/swarmdock_ver0.2_runtime/env/device.conf

Example for x86_64 desktop:

export SP_NODE_ID=sd-001
export SP_HOST_ID=host-001
export PREFER_IP=192.168.31.133
export SUBNET_PREFIX=192.168.31

Example for ARM64 Radxa:

export SP_NODE_ID=radxa_214
export SP_HOST_ID=radxa
export PREFER_IP=192.168.31.214
export SUBNET_PREFIX=192.168.31

Configuration fields:

Field Meaning
SP_NODE_ID Current SwarmDock node ID
SP_HOST_ID Host ID used in canonical naming
PREFER_IP Preferred ROS Master IP
SUBNET_PREFIX Subnet prefix used for ROS Master discovery

Usage

Make sure ROS1 and ROS Master are available. Basic check:

rosnode list

Normal output should include at least:

/rosout

Run SwarmDock:

swarmdock host info
swarmdock --auto topics
swarmdock --auto topics --canon
swarmdock --auto nodes --canon
swarmdock --auto services --canon
swarmdock --auto params --canon

Example canonical output: /sp/radxa/node/rosout /rosout /sp/radxa/topic/rosout /rosout /sp/radxa/topic/rosout_agg /rosout_agg

You can also use auto mode:

swarmdock host info
swarmdock --auto topics
swarmdock --auto topics --canon
swarmdock --auto nodes --canon
swarmdock --auto services --canon
swarmdock --auto params --canon

Quick Demo(X64)

The following screenshot shows a basic SwarmDock ver0.2 installation and runtime check.

It demonstrates:

  • starting roscore
  • extracting the prebuilt release package
  • running install.sh
  • adding SwarmDock to PATH
  • checking host information
  • listing ROS topics

SwarmDock ver0.2 install demo

Quick Demo(Arm64)

It demonstrates:

  • SSH login to the Radxa ARM64 device
  • automatically entering the ROS Noetic Docker container
  • verifying the ROS environment:
    • ROS_NET_MODE=lan
    • ROS_IP=192.168.31.214
    • ROS_MASTER_URI=http://192.168.31.214:11311
  • checking ROS node and topic availability
  • extracting the prebuilt ARM64 release package
  • running install.sh
  • installing SwarmDock into the runtime directory
  • adding SwarmDock to PATH
  • running swarmdock --auto topics
  • listing ROS topics successfully
image

Notes

This public repository provides prebuilt binary releases only.

Source code is not included in the public release package.

License

This software is distributed as a prebuilt binary package.
See LICENSE.txt for usage restrictions.

swarmdock-release

About

SwarmDock is the prebuilt binary distribution of the SwarmPlug system.

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors