fleet/agents/r1/.env.example

68 lines
3.6 KiB
Plaintext

# sanad_api_r1 — copy to .env and fill in. docker compose reads it automatically.
# ── fleet server (REQUIRED — YS Lootah gives you these two) ──────────────────
SERVER_URL=https://fleet.example.com
DEVICE_TOKEN=REPLACE_WITH_DEVICE_TOKEN
# ── identity ─────────────────────────────────────────────────────────────────
# This robot's fleet id, sent in the telemetry body as "sn". Set the real R1 id.
SN=r1_0000
# ── DDS (reading robot state) ────────────────────────────────────────────────
# The R1 backpack link is eth10 (SanadR1 default). Use the interface that sees
# the robot's DDS traffic. Domain 0 unless your robot is configured otherwise.
DDS_INTERFACE=eth10
DDS_DOMAIN=0
# Which NIC's MAC to report as the robot identity (defaults to DDS_INTERFACE).
# MAC_INTERFACE=eth10
# ── status / position options ────────────────────────────────────────────────
# Read the loco FSM for a richer status (READ-ONLY GET RPC, never commands
# motion). 0 = derive status from battery + joint motion only (safe default).
R1_READ_FSM=0
# Position source: none (default) | rosbridge. The R1 localizes with stereo VSLAM
# on the ROS side; set 'rosbridge' + ROSBRIDGE_URL to report x,y from /odom.
R1_POSITION_SOURCE=none
ROSBRIDGE_URL=ws://127.0.0.1:9090
# ── fault thresholds ─────────────────────────────────────────────────────────
LOW_SOC=15
MOTOR_TEMP_MAX=85
# ── cadence / transport ──────────────────────────────────────────────────────
POLL_INTERVAL=2
VERIFY_TLS=1
HTTP_TIMEOUT=10
# ── robot identity card (shown on the dashboard) ─────────────────────────────
ROBOT_BRAND=unitree
ROBOT_TYPE=humanoid
ROBOT_MODEL=r1
# Optional: Sanad data dir whose size is reported in storage (as /host/<path>
# when the installer's read-only /:/host mount is used). Empty = omit.
STORAGE_DATA_PATH=
# ── map sync (uploaded ONCE per content; status shown in telemetry "map") ────
# The installer mounts the robot's real maps dir at /data/maps (probed on the
# robot: rtabmap*.db / slam_toolbox yaml+pgm sets). Fallback = agent's own dir.
MAPS_DIR=/data/maps
DATA_DIR=/data/web_data
STATE_DIR=/data/state
MAP_SELECT=all
MAP_UPLOAD_MODE=multipart
MAP_POLL_INTERVAL=30
# ── logs + alerts ─────────────────────────────────────────────────────────────
# agent log lines shipped to /{sn}/logs every LOGS_INTERVAL; new faults POSTed
# to /{sn}/alert immediately (rising edge).
LOGS_INTERVAL=60
# ── project logs (shared alongside agent logs) ───────────────────────────────
# auto (default) = find a RUNNING Sanad project container (sanadr1, sanad-p4,
# sanad*) via the /host mount and tail its docker json-log, labeled
# "<name>-logs" in the shipped lines; telemetry shows project_logs (null=none).
# Or pin a container name / an explicit log file (PROJECT_LOG_PATH, via /host).
PROJECT_LOG_CONTAINER=auto
PROJECT_LOG_PATH=
PROJECT_LOG_LABEL=