feat:Add a very rudimentary way of loading maps#22
Merged
arjo129 merged 7 commits intoJul 6, 2026
Conversation
Signed-off-by: Arjo Chakravarty <arjoc@intrinsic.ai>
Signed-off-by: Arjo Chakravarty <arjoc@intrinsic.ai>
arjo129
force-pushed
the
arjoc/feat/map-occupancy-grid-rebased
branch
from
June 25, 2026 04:26
c5cfee4 to
51be638
Compare
…/feat/map-occupancy-grid-rebased # Please enter a commit message to explain why this merge is necessary, # especially if it merges an updated upstream into a topic branch. # # Lines starting with '#' will be ignored, and an empty message aborts # the commit.
- Added demo_map.launch.py to launch map_server with a custom 20x20 grid map. - Added python script to generate the map image (demo_grid.png) with a box in the center. - Updated robot_spawner to subscribe to /map and serve it via HTTP. - Updated web visualizer (app.js) to fetch and render the grid map. - Merged upstream/epic/next-gen-base and resolved conflicts to keep reservation config features. TAG=agy CONV=e4b3007e-b76e-47c3-a222-643694470b82 Signed-off-by: Arjo Chakravarty <arjoc@intrinsic.ai>
1 task
arjo129
marked this pull request as ready for review
July 6, 2026 01:35
Member
Author
|
@SamuelFoo Feel free to review this. |
xiyuoh
approved these changes
Jul 6, 2026
xiyuoh
left a comment
Member
There was a problem hiding this comment.
Tested and works great for me! Just left some minor nit comments for formatting
| pub current_planning_session: Option<u64>, | ||
| pub footprints: Arc<std::sync::Mutex<HashMap<String, f32>>>, | ||
| pub active_plan_ids: HashMap<String, PlanId>, | ||
| pub map: Arc<Map>, |
Member
There was a problem hiding this comment.
I wonder if we can explore other ways of storing/manipulating Map (and other PlanServer members). Understood that it's expensive to clone so wrapping it with Arc is a good strategy here. Perhaps if we integrate with Bevy in the future we could make use of Resource or something. But not a blocker for this PR.
Member
Author
There was a problem hiding this comment.
Id be open to moving this to bevy_ros2 if it provides a better Developer Experience. We could put this as a future roadmap item. For now Im using the bare minimum to get an MVP out.
Co-authored-by: Xiyu <ohxiyu@gmail.com> Signed-off-by: Arjo Chakravarty <arjo129@gmail.com>
Co-authored-by: Xiyu <ohxiyu@gmail.com> Signed-off-by: Arjo Chakravarty <arjo129@gmail.com>
Signed-off-by: Arjo Chakravarty <arjo129@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
New feature implementation
Related to #12
Implemented feature
Adds a very rudimentary way of loading environment maps. This is by no means a final approach to loading maps, but it provides a high level way of representing them for the time being.
Implementation description
We subscribe to the
/maptopic to listen for OccupancyGrids. It gets converted internally to aMapstructTest it
Use the launch file provided by
demo_map.launch.py. It spins up a ROS 2map_serverloaded with a custom 20x20 grid map (demo_grid.png) and activates it. The dashboard subscribes to/mapand visualizes it as a background layer.Run the launch file:
http://localhost:8080in your web browser.GenAI Use
We follow OSRA's policy on GenAI tools
Generated-by: Gemini Pro 3.1