Gateway Deployment¶
How to get the uMe Gateway running on a robot and keep it running. For the binding end-to-end procedure (commissioning, versioning, vendor updates) see Deployment Process — this page is the technical reference for the same steps.
| Board | Perception Board (runs the camera and the conversational agent) |
| SSH user | booster |
| Python | 3.10+ |
| Gateway port | 8765 (WebSocket) |
| Files | gateway_v2.py, install.sh (repo robotics-group-app, folder gateway/) |
| Service | ume-gateway.service (user-level systemd, autostart on boot) |
Step 1 — copy the files¶
scp gateway_v2.py install.sh booster@<ROBOT-IP>:~/
Step 2 — install¶
ssh booster@<ROBOT-IP>
bash ~/install.sh
The installer copies the Gateway, creates the autostart service with the
DDS/ROS environment of the current shell, enables it, and prints the status —
which must read active (running).
Use a normal login shell
The service inherits the DDS/ROS environment variables from the shell the installer runs in. In a stripped-down shell the motors will not respond.
Step 3 — verify¶
Open the Robotics Group App and connect to <ROBOT-IP>. Live camera image,
status, and control must work immediately. Alternatively test from a PC with a
WebSocket client (see Python Client).
Modes¶
| Start | Meaning |
|---|---|
python3 gateway_v2.py --mock |
Nothing moves; commands are only logged. For app/CI development. |
python3 gateway_v2.py --real |
Real control. This is what the service runs. |
Optional camera settings via environment variables: UME_CAMERA=realsense
(direct RealSense capture) or UME_CAMERA_TOPIC=<topic>.
Operations¶
- Logs:
journalctl --user -u ume-gateway -f - Restart:
systemctl --user restart ume-gateway.service - New version: copy
gateway_v2.pyover, thenbash ~/install.shagain - Autostart without login is enabled by the installer via
enable-linger
Security¶
- Change the default password on the board after commissioning (
passwd). - Prefer an SSH key over a password.
- Port
8765is LAN-only — never expose it to the internet.