No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro kilted. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.
![]() |
lunabotics repositoryarduino gstreamer ros2 ros2-humble jetson-agx-orin nvidia-isaac-ros apriltag digger drivetrain dumper gazebo_files ros_gz_description ros_gz_launch gstreamer isaac_ros_launch motor_control robot_description rovr_control rovr_interfaces |
Repository Summary
Description | Official NASA Lunabotics GitHub repository for the UMN Robotics team. |
Checkout URI | https://github.com/gofirst-robotics/lunabotics.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-05-14 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | arduino gstreamer ros2 ros2-humble jetson-agx-orin nvidia-isaac-ros |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
apriltag | 0.0.1 |
digger | 0.2.0 |
drivetrain | 0.1.0 |
dumper | 0.0.1 |
gazebo_files | 0.0.1 |
ros_gz_description | 0.0.1 |
ros_gz_launch | 0.0.1 |
gstreamer | 0.0.1 |
isaac_ros_launch | 0.0.1 |
motor_control | 0.0.5 |
robot_description | 0.0.1 |
rovr_control | 0.1.0 |
rovr_interfaces | 0.0.1 |
README
Lunabotics
The official NASA Lunabotics GitHub repository for University of Minnesota Robotics.
graph LR
subgraph A[Operator Laptop]
B[RQT Camera Frontend]
J[joy_node]
end
subgraph C[Robot]
subgraph F[Nvidia Jetson AGX Orin]
G[motor_control]
H[GStreamer NVENC AV1 Encoding]
I[isaac_ros_nvblox]
L[ros2socketcan_bridge]
M[Nav2]
N[Subsystem ROS 2 Nodes]
O[rovr_control]
P[ZED ROS 2 Wrapper]
end
D[Arduino Microcontroller]
K[Limit Switches]
E[VESC Motor Controllers]
end
K --> D
O <-- Serial Bus --> D
H -- WiFi Connection --> B
L <-- CAN Bus --> E
P --> I
I -- Cost Map --> M
M --> O
J -- /joy --> O
M -- /cmd_vel --> N
G -- /CAN/can0/transmit --> L
L -- /CAN/can0/receive --> G
O -- /cmd_vel --> N
O -- ROS 2 Services --> N
N -- ROS 2 Services --> G
How to Run Inside Docker Container
How to Run Inside the Dev Container on Windows/Mac
Open vscode and install the "Dev Containers" extension. Then, with vscode open, press ctrl+shift+p to open the vscode command palette and type "Clone Repository in Container Volume". Select the "Dev Containers: Clone Repository in Container Volume" option, then select "Clone a repository from GitHub in a Container Volume". Search for and select our Lunabotics repository (the repository named "Lunabotics"). If you are cloning the repository directly into the container volume, you do NOT need to clone the repo locally, it will be automatically cloned into the repo.
After opening the container, you can run the following command in the Command Palette (Ctrl + Shift + P) to build the project: ``` Tasks: Run Build Task ``` Or, if your machine does not have an Nvidia GPU or you haven't set it up with [container-toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html), run the following commands instead in the Command Palette (Ctrl + Shift + P): ``` Tasks: Configure Default Build Task Build No GPU Tasks ``` Optionally, traditional "colcon build" commands can be run in the vscode terminal instead of using the Command Palette commands above.
Updating the Dev Container for Windows/Mac
If you ever need to rebuild the remote container image, first update the x86_64 and aarch64 images: ``` cd ~/Lunabotics/src/isaac_ros/isaac_ros_common/docker docker build --build-arg="BASE_IMAGE=osrf/ros:humble-desktop" -f Dockerfile.user -t umnrobotics/devcontainer:x86_64.user . cd ~/Lunabotics/docker docker build --build-arg="BASE_IMAGE=umnrobotics/devcontainer:x86_64.user" -f Dockerfile.umn -t umnrobotics/devcontainer:x86_64.user.umn . docker push umnrobotics/devcontainer:x86_64.user.umn cd ~/Lunabotics/src/isaac_ros/isaac_ros_common/docker docker build --build-arg="BASE_IMAGE=arm64v8/ros:humble" -f Dockerfile.user -t umnrobotics/devcontainer:arm64.user . cd ~/Lunabotics/docker docker build --build-arg="BASE_IMAGE=umnrobotics/devcontainer:arm64.user" -f Dockerfile.umn -t umnrobotics/devcontainer:arm64.user.umn . docker push umnrobotics/devcontainer:arm64.user.umn ``` Then, run the following command with the devcontainer cli installed: ``` cd ~/Lunabotics docker pull umnrobotics/devcontainer:x86_64.user.umn docker pull umnrobotics/devcontainer:arm64.user.umn docker manifest rm umnrobotics/devcontainer:latest docker manifest create umnrobotics/devcontainer:latest --amend umnrobotics/devcontainer:arm64.user.umn --amend umnrobotics/devcontainer:x86_64.user.umn docker manifest push umnrobotics/devcontainer:latest docker buildx create --use devcontainer build --push true --workspace-folder . --platform="linux/amd64,linux/arm64" --image-name "umnrobotics/ros:ros_devcontainer" ```
How to Run Inside the ISAAC ROS Container on Linux/Jetson
File truncated at 100 lines [see the full file](https://github.com/gofirst-robotics/lunabotics/tree/main/README.md)CONTRIBUTING
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.
No version for distro noetic. Known supported distros are highlighted in the buttons above.