Skip to content

fix: expose navigation settings and correct planner grid height - #255

Open
xiaolefang-dm wants to merge 8 commits into
mainfrom
xiaole/navigation-settings
Open

xiaolefang-dm wants to merge 8 commits into
mainfrom
xiaole/navigation-settings

Conversation

@xiaolefang-dm

@xiaolefang-dm xiaolefang-dm commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Changes

Operate now shows the selected current-map name using existing map metadata and opens a Navigation settings dialog. Users can choose a robot preset and edit safety radius, dilation, per-update decay factor, maximum linear/angular speeds, and camera-relative Z bottom/top. Presets supply defaults; the dialog supports restoring them and validates input.

The backend persists settings in the device database and forwards them to both planner and cmd_vel controller on startup/restart, including the legacy navigation startup path. Saving changed settings stops current navigation, clears its target, and restarts running planner/control processes; saving unchanged values leaves navigation running. Manual App velocity commands also respect the configured speed limits. Robot-type changes also restart a running Unitree adapter with the selected model, and saved model selection is used on its next startup.

Planner maintenance changes:

  • Increase the 0.05 m grid height from 10 to 40 cells (2 m total).
  • Expose the original per-update occupancy multiplier, default 0.99, in WebSim and App. No seconds conversion.
  • Forward full WebSim robot settings and display values confirmed through one combined planner configuration message.
  • Remove circle/square selection and body-radius input; use length/width rectangles consistently. Safety radius remains configurable.

Retains trajectory generation and path timestamps, goal-distance and velocity-estimation logic, the original 106 candidates, and controller tracking behavior from main. No added test or Markdown files are included.

Validation

  • Flutter Web build succeeds; new settings dialog analyzer reports no issues. Existing Operate code still has pre-existing deprecation/info notices.
  • Backend/API checks cover defaults for five robots, persisted values, environment propagation, invalid-value rejection, restart requests, current-map name, unchanged-save behavior and manual speed clamping.
  • UI verified against an isolated mock backend: current-map display, robot preset selection, editable decay, save and readback.
  • Python syntax and whitespace checks pass.
default.mov

@github-actions

Copy link
Copy Markdown
cloc github.com/AlDanial/cloc v 2.04 T=0.41 s (119.8 files/s, 335739.8 lines/s)
Language files blank comment code
JSON 3 8 0 129481
Python 16 775 384 4297
Markdown 4 155 6 426
C++ 4 60 38 409
CSS 1 58 0 342
Bourne Shell 16 42 9 281
Dockerfile 1 31 32 205
HTML 1 6 0 107
make 1 20 15 62
TOML 1 4 0 59
CMake 1 4 0 17
-------- -------- -------- -------- --------
SUM: 49 1163 484 135686

@xiaolefang-dm
xiaolefang-dm marked this pull request as ready for review October 15, 2026 03:57

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant