# Optional absolute path override for the companion repo. # By default the scripts assume: # OmniSocketGo -> current repo # robot-command-center -> sibling directory next to OmniSocketGo # Example: # ROBOT_COMMAND_CENTER_ROOT="$HOME/Documents/robot-command-center" CONTROL_SIDE_OMNISOCKET_SERVER_ADDR="192.168.41.144:10909" # Local LAN hub CONTROL_SIDE_OMNISOCKET_RELAY_VIA="" # No relay ROBOT_SIDE_OMNISOCKET_SERVER_ADDR="192.168.41.144:10909" # Local LAN hub ROBOT_SIDE_OMNISOCKET_RELAY_VIA="" # Direct LAN # Log one normal relay packet out of every N packets. Drop events still log immediately. OMNI_RELAY_PACKET_LOG_SAMPLE_EVERY="200" CONTROL_WS_ALLOWED_ORIGINS="http://127.0.0.1:5173,http://localhost:5173" VITE_API_BASE_URL="http://127.0.0.1:8001" PYTHON3_BIN="python3" PYTHON_VENV_PATH="${OMNISOCKETGO_ROOT}/.venv" BACKEND_HOST="0.0.0.0" BACKEND_PORT="8001" OMNISOCKET_TELEMETRY_PEER_ID="peer-a-telemetry" OMNISOCKET_TELEMETRY_INTERVAL_MS="1000" OMNISOCKET_TELEMETRY_STALE_AFTER_MS="3000" OMNI_NETWORK_SUMMARY_LOG_ENABLED="1" OMNI_NETWORK_SUMMARY_LOG_PATH="${OMNISOCKETGO_ROOT}/logs/a-network-summary.jsonl" OMNI_NETWORK_SUMMARY_LOG_INTERVAL_MS="1000" OMNI_NETWORK_SUMMARY_LOG_REQUEST_TIMEOUT_SEC="3" FRONTEND_HOST="0.0.0.0" FRONTEND_PORT="5173" ROS_DISTRO="jazzy" ROBOT_RECEIVER_TRANSPORT="unix_dgram" ROBOT_RECEIVER_SERVER_ADDR="${ROBOT_SIDE_OMNISOCKET_SERVER_ADDR}" ROBOT_RECEIVER_RELAY_VIA="${ROBOT_SIDE_OMNISOCKET_RELAY_VIA}" ROBOT_RECEIVER_PEER_ID="ros-bridge-ctrl" ROBOT_RECEIVER_EXPECTED_SENDER="" ROBOT_RECEIVER_LOCAL_SOCKET_PATH="/tmp/omnisocket-b-side-cmd.sock" ROBOT_RECEIVER_OUTPUT_TOPIC="/hric/robot/cmd_vel" ROBOT_RECEIVER_FRAME_ID="pelvis" ROBOT_RECEIVER_WATCHDOG_TIMEOUT="0.5" ROBOT_RECEIVER_PUBLISH_RATE_HZ="100.0" OMNI_VIDEO_PEER_ID="peer-b-video" OMNI_VIDEO_TARGET_PEER="peer-a-video" OMNI_GPSD_HOST="127.0.0.1" OMNI_CAMERA_HEAD_DEVICE="/dev/video26" OMNI_CAMERA_WAIST_DEVICE="/dev/video18" OMNI_CAMERA_SOURCE="ros2" OMNI_CAMERA_ACTIVE="head" OMNI_PROC_MANAGER_SERVICE="proc_manager.service" OMNI_PROC_MANAGER_AUTO_START="0" OMNI_CAMERA_START_SERVICES="1" OMNI_CAMERA_HEAD_SERVICE="orbbec_head.service" OMNI_CAMERA_WAIST_SERVICE="orbbec_waist.service" OMNI_ROS2_HEAD_RGB_TOPIC="/ob_camera_head/color/image_raw" OMNI_ROS2_WAIST_RGB_TOPIC="/ob_camera_waist/color/image_raw" OMNI_ROS2_HEAD_SHM="/dev/shm/omnisocket-rgb-head" OMNI_ROS2_WAIST_SHM="/dev/shm/omnisocket-rgb-waist" OMNI_ROS2_MAX_FRAME_BYTES="8294400" OMNI_ROS2_BRIDGE_AUTO_START="1" OMNI_CAMERA_PROFILE="day" OMNI_CAMERA_BRIGHTNESS="" OMNI_CAMERA_CUSTOM_CTRL="" OMNI_CAMERA_VERIFY="0" OMNI_VIDEO_SERVER_ADDR="${ROBOT_SIDE_OMNISOCKET_SERVER_ADDR}" OMNI_VIDEO_RELAY_VIA="${ROBOT_SIDE_OMNISOCKET_RELAY_VIA}" OMNI_VIDEO_SOFT_BACKPRESSURE_SEGMENTS="256" OMNI_VIDEO_HARD_BACKPRESSURE_SEGMENTS="1024" OMNI_VIDEO_HARD_BACKPRESSURE_HOLD_MS="5000" OMNI_VIDEO_FRAME_STALL_RECONNECT_MS="30000" OMNI_CONTROL_PEER_ID="peer-b-ctrl" OMNI_CONTROL_EXPECTED_SENDER="peer-a-ctrl" OMNI_CONTROL_SERVER_ADDR="${ROBOT_SIDE_OMNISOCKET_SERVER_ADDR}" OMNI_CONTROL_RELAY_VIA="${ROBOT_SIDE_OMNISOCKET_RELAY_VIA}" OMNI_CONTROL_UNIX_SOCKET_PATH="${ROBOT_RECEIVER_LOCAL_SOCKET_PATH}" OMNI_CONTROL_ACK_PEER_ID="peer-b-ctrl-ack" OMNI_CONTROL_ACK_TARGET_PEER="peer-a-ctrl-ack" BLITZ_CONTROL_ACK_SAMPLE_MOD="10" BLITZ_VIDEO_STAGE_LOG_ENABLED="1" BLITZ_VIDEO_STAGE_LOG_SAMPLE_MOD="10" OMNI_CONTROL_SERVER_IDLE_RECONNECT_MS="30000" # A-side backend video freshness guard. Used by scripts/dev/start-backend.sh. OMNI_VIDEO_MAX_FRAME_AGE_MS="1000" B_SIDE_OMNID_USE_SUDO="1"