Skip to main content

AI Teammate ROS2 Device Bridge

Project description

AI Teammate Robot Bridge

Connects ROS2 robots to AI Teammate Device Gateway via WebSocket.

Features

  • rclpy native — DDS 직접 참여, rosbridge 불필요
  • Sensor data streaming (IMU, odometry, battery, temperature)
  • Command reception (MOVE, TURN, STOP) → ROS2 cmd_vel publish (10Hz continuous)
  • Auto-reconnect on disconnect
  • Simulator mode for non-ROS2 environments

Quick Install

curl -sL "https://ai-teammate.net/api/b2b/install/DEVICE_ID?key=YOUR_API_KEY" | bash

Get your API key from Control Tower > Devices > + button.

Manual Setup

pip3 install websockets psutil

cat > .env << EOF
DEVICE_ID=my-robot-01
GATEWAY_URL=wss://ai-teammate.net/gw
API_KEY=dk_YOUR_API_KEY
CONNECTION_MODE=rclpy
STATUS_REPORT_INTERVAL=1.0
CMD_VEL_TOPIC=/base_controller/cmd_vel_unstamped
IMU_TOPIC=/imu/data
ODOM_TOPIC=/odom
EOF

# ROS2 환경 source 후 실행
source /opt/ros/humble/setup.bash
python3 device_bridge.py

Environment Variables

Variable Default Description
DEVICE_ID required Unique device identifier
GATEWAY_URL required Device Gateway WebSocket URL
API_KEY required Device API key (dk_xxx)
CONNECTION_MODE rclpy rclpy for ROS2 native, simulator for fake data
STATUS_REPORT_INTERVAL 1.0 Sensor data send interval (seconds)
CMD_VEL_TOPIC /cmd_vel ROS2 velocity command topic
IMU_TOPIC /imu/data ROS2 IMU topic
ODOM_TOPIC /odom ROS2 odometry topic

Prerequisites

  • Python 3.8+
  • ROS2 Humble (optional — simulator mode works without)
  • rosbridge 불필요 — rclpy로 DDS 직접 통신

Architecture

Robot                          AWS
┌─────────────────┐           ┌─────────────────┐
│ device_bridge.py │──WSS────▶│ Device Gateway   │
│   ├─ send sensor │          │ (port 8003)      │
│   └─ recv cmd    │◀─WSS────│   └─ /ws/stream  │──▶ Control Tower
│                  │          └─────────────────┘
│ rclpy (native)   │
│   ├─ cmd_vel pub │  DDS direct (no rosbridge)
│   ├─ odom sub    │
│   └─ imu sub     │
└─────────────────┘

Systemd Service

설치 스크립트가 자동으로 등록합니다. 수동 관리:

sudo systemctl status ai-teammate-bridge
sudo systemctl restart ai-teammate-bridge
journalctl -u ai-teammate-bridge -f

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

ai_teammate_ros2_bridge-2.1.3.tar.gz (26.2 kB view details)

Uploaded Source

Built Distribution

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

ai_teammate_ros2_bridge-2.1.3-py3-none-any.whl (29.1 kB view details)

Uploaded Python 3

File details

Details for the file ai_teammate_ros2_bridge-2.1.3.tar.gz.

File metadata

  • Download URL: ai_teammate_ros2_bridge-2.1.3.tar.gz
  • Upload date:
  • Size: 26.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for ai_teammate_ros2_bridge-2.1.3.tar.gz
Algorithm Hash digest
SHA256 4378e8b8598f950654a5c04af514ce30b78ebb4f82a656ca3d9a71ec4e0be6e7
MD5 b0f1adff8e06e609b8b1f4f642a5f3a7
BLAKE2b-256 d0b1184b7b2c713eb9a07c67f6ad3c9c13c88f1ffb8103dbba33f3167790be95

See more details on using hashes here.

File details

Details for the file ai_teammate_ros2_bridge-2.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for ai_teammate_ros2_bridge-2.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9d439ec3e2d2f680abc572e9525d4a002160a6d2319e807a8221f24e91380cac
MD5 e6d9fe321d52836909192b4d7f0d09a2
BLAKE2b-256 4da6e1c41b64676b9046746454700246367691c62e1185c2d2ca97540ffbf287

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