Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file removed .DS_Store
Binary file not shown.
6 changes: 4 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,6 @@ coverage.xml
.hypothesis/
.pytest_cache/
cover/

# Translations
*.mo
*.pot
Expand Down Expand Up @@ -176,4 +175,7 @@ cython_debug/
# Ros build ignored
install
log
build
build

.vscode/
.DS_Store
Binary file modified data/.DS_Store
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please delete this

Binary file not shown.
Binary file added data/EVC_test_footage/vid.mp4
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please delete

Binary file not shown.
2 changes: 1 addition & 1 deletion scripts/start.bash
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
#!/usr/bin/env bash

source /opt/ros/humble/setup.bash
colcon build --symlink-install
[ -f /ws/install/setup.bash ] && source /ws/install/setup.bash
[ -f /ws/.venv/bin/activate ] && source /ws/.venv/bin/activate

colcon build
ros2 launch autonomous_kart bringup_sim.launch.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ def generate_launch_description():
parameters=[steering_yaml],
),
Node(
package="autonomous_kart",
package="autonomous_kart_cpp",
executable="camera_node",
name="camera_node",
parameters=[camera_yaml],
Comment on lines 38 to 42
Copy link

Copilot AI Feb 8, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These launch files now reference the autonomous_kart_cpp package for the camera node. The autonomous_kart package manifest should declare a runtime dependency on autonomous_kart_cpp (so the launch file’s dependency is explicit and installations don’t fail at runtime).

Copilot uses AI. Check for mistakes.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ def generate_launch_description():
parameters=[steering_yaml],
),
Node(
package="autonomous_kart",
package="autonomous_kart_cpp",
executable="camera_node",
name="camera_node",
parameters=[camera_yaml],
Expand Down
Empty file.
150 changes: 0 additions & 150 deletions src/autonomous_kart/autonomous_kart/nodes/camera/camera_node.py

This file was deleted.

2 changes: 1 addition & 1 deletion src/autonomous_kart/autonomous_kart/params/pathfinder.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,4 @@ pathfinder_node:

approach_dist_m: 1.0 # Nav2: approach_velocity_scaling_dist (m)
min_approach_speed_pct: 0.05 # like min_approach_linear_velocity / v_max


34 changes: 19 additions & 15 deletions src/autonomous_kart/setup.py
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
from glob import glob
from setuptools import setup

package_name = 'autonomous_kart'
package_name = "autonomous_kart"

setup(
name=package_name,
version="0.0.1",
packages=[
'autonomous_kart',
'autonomous_kart.nodes',
'autonomous_kart.nodes.motor',
'autonomous_kart.nodes.steering',
'autonomous_kart.nodes.camera',
'autonomous_kart.nodes.gps',
'autonomous_kart.nodes.pathfinder',
'autonomous_kart.nodes.opencv_pathfinder',
"autonomous_kart",
"autonomous_kart.nodes",
"autonomous_kart.nodes.motor",
"autonomous_kart.nodes.steering",
# "autonomous_kart.nodes.camera",
"autonomous_kart.nodes.gps",
"autonomous_kart.nodes.pathfinder",
"autonomous_kart.nodes.opencv_pathfinder",
'autonomous_kart.nodes.e_comms',
'autonomous_kart.nodes.3dgs_localization',
'autonomous_kart.nodes.metrics',
Expand All @@ -23,14 +23,17 @@
data_files=[
("share/ament_index/resource_index/packages", ["resource/" + package_name]),
("share/" + package_name, ["package.xml"]),
("share/" + package_name + "/launch", glob("autonomous_kart/launch/*.py")), # Fixed path
(
"share/" + package_name + "/launch",
glob("autonomous_kart/launch/*.py"),
), # Fixed path
("share/" + package_name + "/params", glob("autonomous_kart/params/*.yaml")),
],
install_requires=["setuptools"],
zip_safe=True,
maintainer='Purdue EVC',
maintainer_email='shay.manor@gmail.com',
license='Apache-2.0',
maintainer="Purdue EVC",
maintainer_email="shay.manor@gmail.com",
license="Apache-2.0",
description="Package containing all nodes for driving in different states.",
tests_require=["pytest"],
entry_points={
Expand All @@ -43,9 +46,10 @@
'opencv_pathfinder_node = autonomous_kart.nodes.opencv_pathfinder.opencv_pathfinder_node:main',
'e_comms_node = autonomous_kart.nodes.e_comms.e_comms_node:main',
'steering_node = autonomous_kart.nodes.steering.steering_node:main',
'camera_node = autonomous_kart.nodes.camera.camera_node:main',
# 'camera_node = autonomous_kart.nodes.camera.camera_node:main',
"camera_node = autonomous_kart_cpp.camera_node_cpp:main",
Copy link

Copilot AI Feb 8, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This adds a Python console_scripts entry point to autonomous_kart_cpp.camera_node_cpp:main, but there is no such Python module in the repo (and autonomous_kart_cpp is a C++ ament_cmake package). This will break installation/entry-point generation; either remove the camera_node console script from autonomous_kart or point it to a real Python module.

Suggested change
"camera_node = autonomous_kart_cpp.camera_node_cpp:main",
# 'camera_node = autonomous_kart_cpp.camera_node_cpp:main', # C++ node, not exposed via Python console_scripts

Copilot uses AI. Check for mistakes.
'metrics_node = autonomous_kart.nodes.metrics.metrics_node:main',
'master_api = autonomous_kart.nodes.master.master_api:main',
],
},
)
)
34 changes: 34 additions & 0 deletions src/autonomous_kart_cpp/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
cmake_minimum_required(VERSION 3.8)
project(autonomous_kart_cpp)

if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
add_compile_options(-Wall -Wextra -Wpedantic)
endif()

# find dependencies
find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(sensor_msgs REQUIRED)
find_package(cv_bridge REQUIRED)
find_package(OpenCV REQUIRED)

add_executable(camera_node src/camera_node.cpp)
ament_target_dependencies(camera_node rclcpp sensor_msgs cv_bridge OpenCV)
Copy link

Copilot AI Feb 8, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ament_target_dependencies(camera_node ... OpenCV) may not be the right way to link against system OpenCV. If this fails to link/include correctly, prefer using target_link_libraries(camera_node ${OpenCV_LIBS}) (or OpenCV imported targets) and target_include_directories with ${OpenCV_INCLUDE_DIRS}.

Suggested change
ament_target_dependencies(camera_node rclcpp sensor_msgs cv_bridge OpenCV)
ament_target_dependencies(camera_node rclcpp sensor_msgs cv_bridge)
target_include_directories(camera_node PUBLIC ${OpenCV_INCLUDE_DIRS})
target_link_libraries(camera_node ${OpenCV_LIBRARIES})

Copilot uses AI. Check for mistakes.

install(TARGETS camera_node
DESTINATION lib/${PROJECT_NAME})


if(BUILD_TESTING)
find_package(ament_lint_auto REQUIRED)
# the following line skips the linter which checks for copyrights
# comment the line when a copyright and license is added to all source files
set(ament_cmake_copyright_FOUND TRUE)
# the following line skips cpplint (only works in a git repo)
# comment the line when this package is in a git repo and when
# a copyright and license is added to all source files
set(ament_cmake_cpplint_FOUND TRUE)
ament_lint_auto_find_test_dependencies()
endif()

ament_package()
23 changes: 23 additions & 0 deletions src/autonomous_kart_cpp/package.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
<?xml version="1.0"?>
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>autonomous_kart_cpp</name>
<version>0.0.0</version>
<description>Package containing all high performance nodes for driving in different states.</description>
<maintainer email="shay.manor@gmail.com">root</maintainer>
<license>TODO: License declaration</license>

<buildtool_depend>ament_cmake</buildtool_depend>

<depend>rclcpp</depend>
<depend>sensor_msgs</depend>
<depend>cv_bridge</depend>
<depend>OpenCV</depend>
Comment thread
DueroBone marked this conversation as resolved.

<test_depend>ament_lint_auto</test_depend>
<test_depend>ament_lint_common</test_depend>

<export>
<build_type>ament_cmake</build_type>
</export>
</package>
Loading