# kc\_vision — Autonomous ground robot with SLAM, Nav2 + GPS boustrophedon coverage planner (ROS 2 Jazzy + Gazebo Harmonic)

**URL:** <https://discourse.openrobotics.org/t/kc-vision-autonomous-ground-robot-with-slam-nav2-gps-boustrophedon-coverage-planner-ros-2-jazzy-gazebo-harmonic/56024>\
**Category:** Projects\
**Tags:** ros2, gazebo, slam, nav2, jazzy\
**Created:** [July 2, 2026, 12:27am UTC](https://discourse.openrobotics.org/t/kc-vision-autonomous-ground-robot-with-slam-nav2-gps-boustrophedon-coverage-planner-ros-2-jazzy-gazebo-harmonic/56024 "2026-07-02T00:27:07Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Kiranchand\_Bingi](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.openrobotics.org/kiranchand_bingi/32/34483_2.png) [@Kiranchand\_Bingi](https://discourse.openrobotics.org/u/Kiranchand_Bingi)\
**Post date:** [July 2, 2026, 12:27am UTC](https://discourse.openrobotics.org/t/kc-vision-autonomous-ground-robot-with-slam-nav2-gps-boustrophedon-coverage-planner-ros-2-jazzy-gazebo-harmonic/56024/1 "2026-07-02T00:27:07Z")

</div>

Hi ROS community! I’m sharing `kc_vision`, a fully open-sourced autonomous ground robot project I built during my M.Tech in Robotics & AI. The complete simulation stack runs out of the box on Ubuntu 24.04 — no hardware needed to try it.

* * *

### What it does

- Builds its own maps (SLAM Toolbox or Google Cartographer)
- Navigates autonomously to clicked goals in RViz (Nav2 + obstacle avoidance)
- Follows GPS waypoints outdoors without a pre-built map
- Sweeps entire outdoor areas with a **boustrophedon coverage planner** — mark 4 GPS corners, it handles the rest

* * *

### Tech stack

- ROS 2 Jazzy
- Gazebo Harmonic
- Nav2
- SLAM Toolbox / cartographer\_ros
- robot\_localization (EKF sensor fusion)
- ros2\_control (differential drive)
- micro-ROS (planned for hardware phase)

* * *

### The GPS coverage planner (the interesting part)

Drive to 4 corners of an area, log the GPS waypoints with `gps_waypoint_logger.py`, then run `gps_coverage_planner.py`. It computes parallel sweep rows (0.2 m spacing, configurable) and autonomously drives the entire boustrophedon pattern. No map needed — EKF sensor fusion via `robot_localization` keeps the position accurate outdoors.

* * *

### Hardware (parallel build in progress)

Raspberry Pi 5 · STM32 via micro-ROS · YDlidar · BNO086 · NEO-M8N GPS  
Mechanical design done .

* * *

**GitHub:** [git@github.com](mailto:git@github.com):bingikiranchand932-hub/kc\_vision\_ws.git

Happy to answer any questions about the GPS coverage planner implementation or the EKF sensor fusion tuning!

cc: @smac2 @SteveMacenski @JWhitleyWork@joshnewans

---

<div class="post-metadata">

**Author:** ![peci1](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.openrobotics.org/peci1/32/10145_2.png) [@peci1](https://discourse.openrobotics.org/u/peci1)\
**Post date:** [July 2, 2026, 6:25am UTC](https://discourse.openrobotics.org/t/kc-vision-autonomous-ground-robot-with-slam-nav2-gps-boustrophedon-coverage-planner-ros-2-jazzy-gazebo-harmonic/56024/2 "2026-07-02T06:25:25Z")

</div>

Hi, you’ve shared the private link to your GitHub. Please, share the HTTPS URL.

Also, when you want to showcase _anything_ in robotics, it’s best to add at least a picture, or - better - a video.

Last, it’s not okay to mention people with @ unless you’re 100% sure they’re interested.
