Skip to navigation

Safety User Interface (SUI)

View as Markdown

SUI is not implemented. Safety Core has no operator interface of its own. The capabilities below are planned for future releases.

Planned capabilities

Safety User Interface is designed to serve the following three purposes:

  • Real-time monitoring — Operational parameters of Safety Core
  • Query — Registered safety events, system health, security alerts, operational status
  • Configuration — Parameters for SIPP and SEI (e.g., safety event thresholds, add/remove safety conditions)

Showing the decision today

Until SUI exists, the decision can be seen in these places:

WhereWhat it showsFed by
Command receiver consoleSafe-state latch, clear and release events. The Proximity Monitoring receiver also prints the action it applies.The reference command receivers; see Command receivers
VST on-video overlayThe forklift safety function state, on the camera video in the VST UIForklift safety function command packets, sent to VST over UDP
VST halo overlayA normal, reduced or stop halo around forkliftsA copy of every proximity_sdm command packet, sent to VST over UDP

The VST overlays are part of VSS, not of Safety Core. Safety Core sends them the same 64-byte command packets it sends to a command receiver.

Forklift safety function overlay

VST listens for forklift safety function packets on the UDP port set by halo_safety_udp_port in the VSS 2D VST configuration (vst_config.json). It ships as -1, which disables the overlay. Set it to a free port and restart VST. Then send the packets to that port in one of two ways:

ArrangementSettingsNotes
atl_sdm sends straight to VSTMake VST the SDM’s command endpoint: --cmd_rx_ip <vst-host>, and --cmd_rx_port equal to halo_safety_udp_port. With the launcher, use --cmd-rx-ip and --cmd-rx-port.No command receiver runs. The SDM accepts a safe-release request only from its command endpoint, which here is VST.
The ATL command receiver relays to VSTRun atl_sdm_cmd_receiver with --vst_ip <vst-host> and --vst_port equal to halo_safety_udp_port.The receiver keeps the operator release path. It relays the CMD_MUTE, CMD_UNMUTE, CMD_HW_ERROR and CMD_SW_ERROR packets that pass its checks. A relay failure is logged once and does not affect command handling.

Use the relay arrangement when an operator must be able to release a latched safe state from the command receiver. In both arrangements the destination port must equal halo_safety_udp_port. The base deployment profile uses port 12345 for the overlay. When the command receiver and VST run on the same host, give the receiver a different listen port (-p).

Proximity Monitoring halo overlay

proximity_sdm can send a copy of every command packet, including heartbeats and release responses, to a VST halo listener:

OptionDefaultMeaning
--halo_ip <IP>noneAddress of the VST halo listener. Setting it turns the copy on.
--halo_port <PORT>12346Listener port, 1–65535.

With the launcher, pass --halo-ip and --halo-port. The launcher accepts them only when the --app value runs exactly one Proximity Monitoring SDM. The copy goes out on its own non-blocking socket that is never read, so it does not affect acknowledgements or the safe state. Send failures are logged at most once a second.