Skip to main content

OpenRoIS

Open-source middleware for the OMG RoIS Framework 2.0

What is OpenRoIS?

OpenRoIS lets operator applications control robots, avatars, and digital agents over the internet through a single SDK. The host paradigm is hidden behind a gateway. A scenario written once can drive a ROS 2 robot, a Unity avatar, or a distributed AI service without code changes.

The primary demonstrated path is a Unity operator application controlling a ROS 2 robot over WebSocket. The same interfaces also drive in-process avatars and distributed services.

What OpenRoIS provides

RoIS Interfaces

Transport-independent types derived from the OMG IDL. Authored as Python (Pydantic), exported to JSON Schema, generated into C# and TypeScript.

RoIS Engine + Gateway

Bus-independent runtime (Python) that manages components and exposes them remotely over WebSocket.

RoIS BusAdapters

Pluggable bindings: ROS 2 (robot), InProcess (avatar), gRPC (services). All implement one four-method contract.

RoIS Components

The 17 basic HRI components with per-paradigm backends (YOLO, MediaPipe, Whisper, Nav2, Piper).

RoIS Client SDKs

C# for Unity (primary), TypeScript for web, Python for scripting. Identical behavior regardless of host paradigm.

Status

Alpha, pre-1.0, unstable API. The interface types (M0) are complete and stable. The engine, gateway, bus adapters, components, and SDKs are under construction.

MilestoneThemeStatus
M0Paradigm-Neutral Interfacesdone
M1Engine and In-Process Bustodo
M2Remote Gatewaytodo
M3ROS 2 Bus Adaptertodo
M4Mock ROS 2 Robot Componentstodo
M5SDK and Robot MVP (v0.1.0)todo
M8Real Component and Mixed Paradigmtodo
M9Auth and Bus Securitytodo
M10WebRTC Mediatodo
M11Full Component Library (v1.0)todo

License

Apache-2.0. The normative files retain their upstream copyright (JARA, ETRI, KAR, OMG) and are not modified.

Read the White Paper