Installation Guide

This guide will help you install and set up ROBIN on your system.

Requirements

System Requirements

  • Operating System: Ubuntu 20.04+ / macOS 10.15+ / Windows 10+

  • Python: 3.12 or higher

  • Memory: Minimum 4GB RAM (8GB recommended)

  • Storage: At least 5GB free space

  • Docker & Docker Compose: For FIWARE services

Software Dependencies

  • Docker & Docker Compose (for FIWARE stack)

  • Poetry (for Python dependency management)

  • Git for version control

  • curl and jq for quickstart/API validation commands

Hardware Dependencies

The default reviewer quickstart and no-hardware demos do not require industrial hardware. They run with Docker services, mock measurements, and the hardware-neutral API/dashboard stack.

The physical ROBIN welding demonstrator profile is optional and deployment-specific. It was validated with a Linux/NVIDIA workstation and the project welding-cell setup, including UR10e, Fronius TPS320i, WAGO/OPC UA, and Garmo Garline equipment. Those devices, cell network details, credentials, safety procedures, and hardware acceptance steps are not required for the open module quickstart and are not bundled as portable dependencies.

Simulation and Mock Dependencies

For the basic no-hardware hello world, the simulation/mock path requires only:

  • Docker Compose services for Orion-LD, MongoDB, TimescaleDB, Mintaka, the Process Intelligence API, and the dashboard;

  • curl and jq for the documented API checks;

  • the CLI inside the robin-alert-processor container.

For the optional ROS 2 live simulation, use the bundled Vulcanexus container (vulcanexus / vulcanexus-bridge). The lite simulation uses synthetic skill behavior and does not require Gazebo, MoveIt, controllers, GPU access, or physical robot hardware.

Installation Methods

Method 2: Using pip

# Clone the repository
git clone https://github.com/3D-Components/open-robin.git
cd open-robin

# Create a virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -e .

Method 3: Docker Installation

# Clone and build the repository-local Docker images
git clone https://github.com/3D-Components/open-robin.git
cd open-robin
docker compose build

# Run the stack with FIWARE services
docker compose up -d

The default Compose stack is hardware-neutral. It is intended for the reviewer quickstart, API/dashboard/FIWARE checks, and no-hardware demo paths. It does not require NVIDIA GPU access, X11 forwarding, /dev/dri, /dev/input, the physical robot, or the industrial cell network.

For macOS/Docker Desktop networking compatibility, use the macOS override:

docker compose -f docker-compose.yaml -f docker-compose.macos.override.yaml up -d

For the full physical ROBIN demonstrator profile on the validated Linux/NVIDIA workstation, add the Linux GPU override:

docker compose -f docker-compose.yaml -f docker-compose.linux-gpu.override.yaml up -d

The Linux GPU override enables NVIDIA runtime settings, X11/GUI forwarding, and Linux host device mounts used by the physical robot/cell setup. It is not needed for reviewer/demo runs.

FIWARE Services Setup

Manual Installation

# Start Orion-LD Context Broker
docker run -d --name orion-ld -p 1026:1026 fiware/orion-ld:1.8.0

# Start MongoDB
docker run -d --name mongo-db -p 27017:27017 mongo:4.4

# Start TimescaleDB (example, minimal config)
docker run -d --name timescaledb -e POSTGRES_DB=orion -e POSTGRES_USER=orion -e POSTGRES_PASSWORD=orionpass -p 5433:5432 timescale/timescaledb-ha:pg15-latest

# Start Mintaka (reads Orion-LD temporal store in TimescaleDB)
docker run -d --name mintaka -p 9090:8080 \
  -e DATASOURCES_DEFAULT_URL=jdbc:postgresql://host.docker.internal:5433/orion \
  -e DATASOURCES_DEFAULT_USERNAME=orion \
  -e DATASOURCES_DEFAULT_PASSWORD=orionpass \
  -e MINTAKA_BROKER_URL=http://orion-ld:1026 \
  -e MICRONAUT_MULTITENANCY_TENANTRESOLVER_HTTPHEADER_ENABLED=true \
  -e MICRONAUT_MULTITENANCY_TENANTRESOLVER_HTTPHEADER_NAMES_0=NGSILD-Tenant \
  fiware/mintaka:latest

Verification

Test Installation

# Check system status
poetry run robin status

# Test FIWARE connections
curl -X GET 'http://localhost:1026/version'

# Test Mintaka temporal API
curl -X GET 'http://localhost:9090/temporal/entities?limit=1'

Environment Setup

The FIWARE services will be accessible at:

Troubleshooting

If you hit issues during installation, see the Troubleshooting Guide guide for common problems and solutions.

Next Steps

After installation, proceed to the Quick Start Guide guide to begin using ROBIN.