Skip to content

feat!: Molly 2.0 on Dharma 0.2 - #2

Merged
agus-darmawan merged 34 commits into
mainfrom
feat/dharma-0.2
Oct 30, 2026
Merged

agus-darmawan merged 34 commits into
mainfrom
feat/dharma-0.2

Conversation

@agus-darmawan

Copy link
Copy Markdown
Member

Molly 2.0.0 on the current Dharma stack (ROS 2 Humble).

Stack

  • molly.repos: every dharma repository pinned to its main of 2026-10-28 (Dharma 0.2: typed status, control mux, path shift, 360° avoidance, docking).
  • molly_bringup (replaces molly), modelled on the Dharma template's bringup: one robot profile (robot.yaml: footprint, base height, kinematics, limits, frames), per-node overrides (stack.yaml, sim.yaml), validated arguments, merged parameter files, health expected nodes; robot.launch.py and sim.launch.py. Field-tested values kept and mapped to the new parameter names.

Product features

  • POIs and tours are owned by Molly now (molly_interfaces, molly_guide): POIs / tours stored with the site (pois.json, tours.json), same service names; the tour engine walks with planner/go_to and follows the typed planner / navigation / control / localization status. REMOTE or an e-stop pauses the tour; back in AUTO it continues at the same stop. New guide/go_to_poi.
  • Interaction (molly_interaction): speech, greeter, conversation and the visitor tracker (moved here from dharma_perception 0.1), all on pure cores.
  • Bridge (molly_bridge): the handheld drives through the mux (control/remote/handheld/cmd_vel, control/set_mode, control/estop/*), joystick limits from the robot profile, new dock / undock and navigation pause / resume commands; protocol molly-1 (changes listed in PROTOCOL.md); dashboard whitelist updated.
  • Every package on DharmaNode with typed config, core/ + utils/ + thin nodes, unit and ROS tests, style test.

Repository

  • Dev container (Humble, VNC), compose, devcontainer, scripts/ (dev, setup, run_robot, tmux layouts), hub tooling and pre-commit; CI: lint, scripts, the whole stack from molly.repos on Humble, Molly tests and the sim tour; README, CHANGELOG 2.0.0, docs.
  • lite3_ros2 submodule moved to its current main (15 commits ahead, unchanged driver).

Verification

  • Whole workspace (dharma + molly + lite3) on Humble: 1068 tests, all pass except lite3_description's URDF test where xacro is not installed locally.
  • End-to-end sim tour: localizes, walks a 3-POI tour, handheld takes over in REMOTE (navigation paused), back to AUTO the tour continues and ends at the last POI; clean shutdown.

On the robot

  • scripts/setup.sh install config (ROBOT_BRINGUP → ROBOT_DRIVER), compare /etc/molly/site.yaml with site.example.yaml.
  • Measure braking limits and the footprint; check tag ids / camera frame and the health expected node names.
  • Docking needs the Lite3 driver to report charging (power_supply_status) and charge services.

Generated by Claude Code

Co-authored-by: agus-darmawan <99527506+agus-darmawan@users.noreply.github.com>
Co-authored-by: agus-darmawan <99527506+agus-darmawan@users.noreply.github.com>
@agus-darmawan
agus-darmawan merged commit a7996b5 into main Oct 30, 2026
3 checks passed
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.

2 participants