Skip to content
ROS Discourse — Community updates· peter_pasha·· 3 hours agoSignalEditorial score75

plynth: connect every robot to every building

plynth: connect every robot to every building

Summary

Peter Pasha introduces plynth, a new open-source API and ROS 2 toolkit designed to simplify the integration of robots with building infrastructure such as elevators and doors. The tool aims to standardize interactions between robots and various building systems, reducing the need for custom integrations at each new site. It includes Python clients, ROS 2 nodes, and adapters for Open-RMF, allowing robots to request passage through doors and ride elevators under rules set by building owners. A sandbox environment is available for testing without sign-up, and the project seeks feedback from robot teams before deploying in real buildings.

Editorial context

Plynth is an open-source API and ROS 2 toolkit designed to standardize robot integration with building infrastructure like elevators and doors, aiming to reduce site-specific integration friction.

Source: ROS Discourse — Community updates · Read original article ↗

Article text · Original source · English

Hi everyone,

I'm Peter, an architect in New York. I've spent my career at the intersection of architecture and robotics (Toyota Woven City, 3D Printed Construction, etc.). Lately I keep hearing the same thing from robot teams: the robot drives fine, and the building is the hard part. Every new site has a different elevator company, a different door and badge system and its own IT review, so the robot waits in the lobby while someone builds one more integration.

So I'm building **plynth**: one API between robots and a building's elevators and doors. Your robot asks to ride or to go through; the building's gateway calls the car or opens the door, or says no with a reason, under rules the owner sets (which robots, where, when). The idea is that you integrate once, and each new building is our work, not yours.

**[Try the sandbox](https://sandbox.plynth.build/docs)** · **[plynth.build](https://plynth.build)**

You can try it now against a test building. One click on the docs page gives you a key for a day, no sign-up, and the Python kit has nothing to install. With the key loaded, a door passage is:

```python
import os, uuid
from plynth.client import RobotClient

robot = RobotClient(os.environ["GATEWAY_URL"], os.environ["GATEWAY_ROBOT_ID"], os.environ["GATEWAY_ROBOT_SECRET"])
trip = str(uuid.uuid4())                  # a new ID for each trip; sending it again is safe
print(robot.request(trip, "door"))        # state OPEN_COMMANDED: go through
print(robot.report(trip, "passed"))       # state PASSED, done: true, final: true
```

`python3 -m plynth.hello` checks your key, and `python3 -m plynth.conformance` rides the elevator, goes through the doors and reports what passed. Underneath is a plain HTTPS API: requests signed with HMAC-SHA256, a stream for following a ride, and a reason code on every refusal. The docs have the signing recipe in shell, Python, JavaScript and C++.

The test building has an elevator bank, a door and a badge door, plus doors and elevators that fail on purpose: a jammed door, a slow car, fire service recall mid-ride, a car that drops off Wi-Fi. The point is to write the handler for each one before a site visit, not during it.

**For ROS 2** (Jazzy):

- `plynth_ros_example`: one node that goes through a door, then rides an elevator.
- `plynth_rmf_adapter`: an Open-RMF lift and door adapter. Each lift session and door request becomes a passage the building approves or refuses.
- `plynth_node`: the building's holds on `/plynth/stop`, as a twist_mux lock. This one needs a company key.

The kit, the conformance check and the ROS 2 packages are Apache-2.0, on GitHub at `plynthbuild/plynth-robot-kit`. plynth itself is a commercial service; the sandbox is free. There's no live building yet. I'm looking for a few robot teams to try it, tell me what's wrong, and go into the first buildings with us.

If you've run robots on real elevators, I'd especially like to hear what broke that a simulator wouldn't show, and what building owners asked for before they said yes.

Peter

What the source reports

Publisher-reported claims, with original evidence. These results have not been independently verified by RoboSignal.

  • paper: not_reported
  • weights: not_reported
  • dataset: not_reported
Source excerpts and review record

Automatically extracted; no manual editorial approval recorded.

tps://sandbox.plynth.build/docs)** · **[plynth.build](https://plynth.build)** You can try it now against a test building. One click on the docs page gives you a key for a day, no sign-up, and the Python kit has nothing to install. With the key loaded, a door passage is: ```python import os, uuid from plynth.client import RobotClient robot = RobotClient(os.environ["GATEWAY_URL"], os.environ["GATEWAY_ROBOT_ID"], os.env

Open source S4

Source:ROS Discourse — Community updates · discourse.openrobotics.org

Timezone · UTC

Article dates follow your selected timezone. Briefing editions use Hong Kong time (UTC+8).