Skip to content

uMe — Humanoid and uMe SDK

One page since 12.09.2026

Until this addendum there were two pages for uMe: an Overview under faehigkeiten/interaktion/ume.md and this SDK home under faehigkeiten/interaktion/ume/index.md. Both were built to the same output address, so one silently overwrote the other and readers saw only one of them, depending on build order. The two are merged here, with the content of both kept. The old Overview address now leads to this page.

Robots for Humans. The uMe SDK is the developer kit for the uMe humanoid robot by United Robotics Group (URG). It lets you connect to the robot, read its status, and control locomotion, head, modes, predefined actions, and the conversational persona — from a tablet app or from your own code.

At the centre of the SDK is the uMe Gateway: a lightweight service that runs on the robot's on-board Perception Board and exposes the uMe on-board SDK as a simple WebSocket/JSON API. Mobile apps and scripts talk to the Gateway instead of speaking the robot's native DDS protocol directly. The Gateway is the first uGO+ building block on uMe.

Status of this release

This documentation describes the uMe Gateway v0.1 contract and the Robotics Group App (Flutter, iOS/Android) that ships with it. The Gateway currently runs in mock mode by default — it accepts and validates every command and streams live status, while the robot-side motion calls into the uMe on-board SDK are being enabled. The API contract described here is stable; see the Changelog and Roadmap.

What you can do with the uMe SDK

  • Motion control — omnidirectional walking (forward, sideways, rotation) and head control.
  • Mode switching — move the robot safely between DAMP, PREP, and WALK.
  • Predefined actions — trigger actions such as get_up, wave, or shake_hand.
  • Live status — battery, current mode, and warnings streamed once per second.
  • Persona & context — set the robot's location, role, and welcome phrase for the voice dialog.
  • Emergency stop — damp all motors instantly from a single command.

Choose your entry point

I want to… Start here
Control the robot from a phone or tablet Mobile App
Talk to the robot from my own code Gateway API (WebSocket)
Get the Gateway running on the robot Gateway Deployment
Understand how the pieces fit together Architecture
Connect and drive for the first time Quickstart

System at a glance

 Robotics Group App (Flutter, iOS/Android)
            │  ws://<robot-ip>:8765/ws   (JSON)
            ▼
 uMe Gateway (Python, on the robot's Perception Board)
            │  uMe on-board SDK (DDS)
            ▼
 uMe runtime

Where this documentation comes from

This section is the former Overview page, kept unchanged in substance.

The uMe SDK documentation exists, is complete, and is published: 22 pages covering the gateway API, motion and commands, status streams, the Python client, the C++ / on-board SDK, the ROS 2 interface and the error codes.

It is moved here unchanged, not rewritten. Rewriting working documentation is how two versions of the truth get created.

What it covers

Area Content
Getting Started installation, quickstart, mobile app
Concepts architecture, robot modes, safety
Operation robot overview, deployment, daily operation, gateway deployment, troubleshooting
API Reference gateway API, motion and commands, status and data streams, Python client, C++ / on-board SDK, ROS 2 interface, error codes

Interfaces and languages

WebSocket/JSON over the gateway; a Python client; a C++ / on-board SDK; a ROS 2 interface; DDS as the robot's native protocol; Flutter for the mobile app on iOS and Android.

Capabilities as documented: omnidirectional walking, head control, mode switching, predefined actions, live status streaming, persona settings, and emergency stop.

Current version: uMe Gateway v0.1.

Status of the move

The source is the standalone uMe SDK site; the target is this chapter. Nothing here is a second version of what is written there — where the two differ, the SDK documentation is right and this page is out of date.