feat: WebUI settings panel (Issue #614) #622
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "sl-webui/issue-614-settings-panel"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Issue #614 — WebUI Settings and Configuration Panel
Standalone
ui/settings_panel.{html,js,css}— no build step.Tabs
PID
balance_controller: Kp, Ki, Kd, I-clamp, control rateadaptive_pid: Kp/Ki/Kd per load profile (empty/light/heavy), output bounds (min/max, Kp/Ki/Kd safety bounds)Speed
tank_driver: max linear/angular vel, max drive speed, slip factor, watchdog timeoutsmooth_velocity_controller: linear/angular accel + decel limitsbattery_speed_limiter: speed scaling factors (full/reduced/critical)Safety
safety_zone: danger_range_m (default 0.30m), warn_range_m (1.00m), forward arc, debounce frames, min valid range, publish ratepower_supervisor_node: battery % thresholds (warning/dock/critical/emergency), speed factorslidar_avoidance: e-stop distance, min safety zone, zone at max speedSensors
uwb_imu_fusion: UWB/IMU weights, publish rateSystem
/diagnosticssubscriber: CPU/GPU/board/motor temps, RAM/GPU/disk usage, WiFi RSSI + latency, MQTT status/rosapi/nodesnode list (refresh on demand)Parameter I/O
Each section has independent ↓ LOAD (
get_parametersservice) and ↑ APPLY (set_parametersservice) buttons via rosbridge WebSocket. Success/error status shown per section. Changed fields highlighted in amber.Presets
Save/load/delete named snapshots of all parameter values to
localStorage. Reset-to-defaults restores built-in defaults.Standalone ui/settings_panel.{html,js,css} — no build step. Sections / tabs: - PID: balance_controller (Kp/Ki/Kd/i_clamp/rate), adaptive_pid (kp/ki/kd per load profile, output bounds) - Speed: tank_driver (max_linear_vel, max_angular_vel, slip_factor), smooth_velocity_controller (accel/decel limits), battery_speed_limiter (speed factors) - Safety: safety_zone (danger_range_m, warn_range_m, forward_arc_deg, debounce, min_valid_range, publish_rate), power_supervisor_node (battery % thresholds, speed factors), lidar_avoidance (e-stop distance, safety zone sizes) - Sensors: boolean toggles (estop_all_arcs, lidar_enabled, uwb_enabled), uwb_imu_fusion weights and publish rate - System: live /diagnostics subscriber (CPU/GPU/board/motor temps, RAM/GPU/disk usage, WiFi RSSI+latency, MQTT status, last-update), /rosapi/nodes node list ROS2 parameter services (rcl_interfaces/srv/GetParameters + SetParameters) via rosbridge WebSocket. Each section has independent ↓ LOAD (get_parameters) and ↑ APPLY (set_parameters) buttons with success/error status feedback. Presets: save/load/delete named snapshots of all values to localStorage. Reset-to-defaults button restores built-in defaults. Changed fields highlighted in amber (slider thumb + input border). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>