Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
8184a9a
attempt test workflow
Roozki Sep 10, 2025
f53a971
simple simple
Roozki Sep 10, 2025
ba844c7
simple simple
Roozki Sep 10, 2025
74ef166
break
Roozki Sep 10, 2025
6a56ed9
meow
Roozki Sep 10, 2025
3b89e75
test
Roozki Sep 10, 2025
184c11c
mer
Roozki Sep 10, 2025
8556b7d
rstein
Roozki Sep 10, 2025
736aff4
deleted drcp?
Roozki Sep 10, 2025
6a8e714
deleted unknown external pkgs
Roozki Sep 10, 2025
6ecc203
en
Roozki Sep 10, 2025
8f2a1d2
Update test.yaml
Roozki Sep 10, 2025
aba30f1
test
Roozki Sep 11, 2025
7169f70
merge
Roozki Sep 11, 2025
82fa648
removing broken stuff... hopefully we don't need this stuff
Roozki Sep 11, 2025
88fd764
commit to the right branch ffs
Roozki Sep 11, 2025
68b783d
more cleanupp
Roozki Sep 11, 2025
727248b
delete ptz_camera
Roozki Sep 11, 2025
de80f83
delete ipcamerafeed
Roozki Sep 11, 2025
d085dd4
no more mongodb
Roozki Sep 11, 2025
2bdc645
github bot added
Roozki Sep 11, 2025
ca0f008
test fail
Roozki Sep 11, 2025
537eff9
test 2
Roozki Sep 11, 2025
1cbc1bd
try fail
Roozki Sep 11, 2025
875e22c
setup_scripts/
Roozki Sep 11, 2025
e58ceb6
meow
Roozki Sep 11, 2025
9d8924f
discord
Roozki Sep 11, 2025
c301b5c
Major fix to repo building, package deps, and setup scripts
Roozki Sep 11, 2025
5649aaf
More fixes
Roozki Sep 14, 2025
f5fafba
setup scripts and common enviroment reqwork
Roozki Sep 15, 2025
7c83617
install libsweep
Roozki Sep 15, 2025
d3605ca
oops
Roozki Sep 15, 2025
4f751e6
submodule mishap
Roozki Sep 15, 2025
7514b6b
spelling mistake fix
Roozki Sep 15, 2025
66ac3fb
skip sweeppy - no idea where it came from
Roozki Sep 15, 2025
ba05afc
another spelling mistake
Roozki Sep 15, 2025
4752573
naming changes
Roozki Sep 16, 2025
ec5daaf
messing around with naming
Roozki Sep 16, 2025
4a2a8f6
figured it out
Roozki Sep 16, 2025
29099a9
fix message creation
Roozki Sep 16, 2025
000f86f
readme update
Roozki Sep 23, 2025
0789d3c
fixup
Roozki Sep 23, 2025
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
37 changes: 37 additions & 0 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Run setup and colcon build for Dev
on: push
jobs:
setup_and_build_check:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: enviroment setupg
run: |
export ROVERFLAKE_ROOT="${GITHUB_WORKSPACE}"
yes | ./setup_scripts/setup_everything_common.sh
- name: build
run: |
cd $ROVERFLAKE_ROOT
echo $ROS_DISTRO
source /opt/ros/humble/setup.bash
echo $ROS_DISTRO
colcon build --symlink-install --packages-skip sweeppy
- name: Notify Discord (success)
if: ${{ success() }}
uses: appleboy/[email protected]
with:
webhook_id: ${{ secrets.DISCORD_BOT_WEBHOOK_ID }} # it also accepts full URL
webhook_token: ${{ secrets.DISCORD_BOT_WEBHOOK_TOKEN }} # it also accepts full URL
message: |
*I'm happy now and I'll let you merge ${{ github.actor }}. _good job!_* || ${{ github.repository }} on `${{ github.ref_name }}`
${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
- name: Notify Discord (failure)
if: ${{ failure() }}
uses: appleboy/[email protected]
with:
webhook_id: ${{ secrets.DISCORD_BOT_WEBHOOK_ID }} # it also accepts full URL
webhook_token: ${{ secrets.DISCORD_BOT_WEBHOOK_TOKEN }} # it also accepts full URL
message: |
_you have saddened me ${{ github.actor }}_
${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}

5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,10 @@ build_isolated/
devel_isolated/
phidgetlog.log

# install files
random_install_files/*


# Generated by dynamic reconfigure
*.cfgc
/cfg/cpp/
Expand Down Expand Up @@ -64,3 +68,4 @@ log/
**/TODO.md

.vscode/settings.json

13 changes: 13 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,23 @@ _Obviously you are welcome to use HTTPS or another form of authentication (like

Then cd in, and we can use setup scripts from here.

Before using setup scripts, you need to set your `ROVERFLAKE_ROOT` enviroment variable. Its best to throw this in your .bashrc file so that it sets permanently.
One liner to do that:
> `echo "export ROVERFLAKE_ROOT=<path_to_roverflake>" >> ~/.bashrc`

If the repo is in your home directory, youd do:
> `echo "export ROVERFLAKE_ROOT=/home/<your_user>/Roverflake2" >> ~/.bashrc`

> `bash setup_scripts/setup_everything_common.sh`

This script will install ros2, as well as other common dependencies.

After that script finishes, try to build!
From the root of RoverFlake2:
> `colcon build`
(it should automatically use --symlink-install as set in `colcon_defaults.yaml`)

If you get an error... panic, scream, and hurl insults at your computer. Then look at common issues and ask for help in the discord.

### COMMON ISSUES & TROUBLESHOOTING
arm_hardware_interface fails to build:
Expand Down
4 changes: 4 additions & 0 deletions colcon.defaults.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
build:
cmake-args:
- -DCMAKE_POLICY_DEFAULT_CMP0167=OLD
- -DCMAKE_POLICY_DEFAULT_CMP0148=OLD
1 change: 0 additions & 1 deletion drcp
Submodule drcp deleted from 1bbacb
2 changes: 0 additions & 2 deletions rover_env/cbs_env_setup.sh

This file was deleted.

3 changes: 0 additions & 3 deletions rover_env/rover_aliases_common.sh

This file was deleted.

3 changes: 0 additions & 3 deletions rover_env/rover_env_common.sh

This file was deleted.

5 changes: 2 additions & 3 deletions setup_scripts/install-ros2-humble.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
source $HOME/RoverFlake2/setup_scripts/utils/common.sh
source $ROVERFLAKE_ROOT/setup_scripts/utils/common.sh

echo CHECKING FOR ROS2 DESKTOP
if is_package_installed "ros-humble-desktop"; then
Expand All @@ -23,14 +23,13 @@ else
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

sudo apt update

sudo apt upgrade

sudo apt install ros-humble-desktop

sudo apt install ros-dev-tools

echo source /opt/ros/humble/setup.bash >> ~/.bashrc
source ~/.bashrc
fi

echo install-ros2-humble.sh complete.
19 changes: 19 additions & 0 deletions setup_scripts/install_libsweepsdk.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
cd ${RANDOM_INSTALL_FILE_DIR}

# clone the sweep-sdk repository
git clone https://github.com/scanse/sweep-sdk

# enter the libsweep directory
cd sweep-sdk/libsweep

# create and enter a build directory
mkdir -p build
cd build

# build and install the libsweep library
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build .
sudo cmake --build . --target install
sudo ldconfig

cd ${ROVERFLAKE_ROOT}
3 changes: 2 additions & 1 deletion setup_scripts/install_moveit_dependencies.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
source $HOME/RoverFlake2/setup_scripts/utils/common.sh
echo script not ready yet
echo script not ready yet && false


# apt_packages_to_install=(
# "ros-humble-moveit-"
Expand Down
2 changes: 1 addition & 1 deletion setup_scripts/install_rosdeps.sh
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
echo Run from RoverFlake2 root dir
rosdep install --from-paths src --ignore-src -r -y
rosdep install --from-paths src --ignore-src -r --skip-keys="serial moteus_msgs" -y
2 changes: 0 additions & 2 deletions setup_scripts/moteus_install.sh

This file was deleted.

2 changes: 2 additions & 0 deletions setup_scripts/rover_env/cbs_env_setup.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# this is only for the control base station.
source ${ROVERFLAKE_ROOT}/src/rover_manager/screenScripts/cb_env_variables.sh
9 changes: 9 additions & 0 deletions setup_scripts/rover_env/rover_aliases_common.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# all our common aliases.
alias rosbuild="cd ${ROVERFLAKE_ROOT} && colcon build --symlink-install"
alias rosclean="cd ${ROVERFLAKE_ROOT} && rm -rf build/ install/ log/"



# Keyboard layouts for the weirdos
alias colemak="setxkbmap us -variant colemak"
alias qwfpgj="setxkbmap us"
4 changes: 4 additions & 0 deletions setup_scripts/rover_env/rover_env_common.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# During setup, this file is added to your .bashrc via a single line (source rover_env_common.sh) similar to how /opt/ros/humble/setup.bash is added
source ${ROVERFLAKE_ROOT}/setup_scripts/rover_env/rover_aliases_common.sh #Aliases like rosbuild, rosclean etc
source ${ROVERFLAKE_ROOT}/setup_scripts/rover_env/rover_env_vars.sh
source ${ROVERFLAKE_ROOT}/install/setup.bash # Default to sourcing the repo (May mess up if you have multiple ROS2 or ROS repos)
4 changes: 4 additions & 0 deletions setup_scripts/rover_env/rover_env_vars.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# All our common enviroment variables
export COLCON_DEFAULTS_FILE="${ROVERFLAKE_ROOT}/colcon.defaults.yaml"

export RANDOM_INSTALL_FILE_DIR="${ROVERFLAKE_ROOT}/random_install_files"
40 changes: 35 additions & 5 deletions setup_scripts/setup_everything_common.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,18 @@
source $HOME/RoverFlake2/setup_scripts/utils/common.sh

# ? we can do a script dir, but easier and more explicit just to get the user to define their repo root
# SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
echo $ROVERFLAKE_ROOT

# check if VAR is unset or empty
if [ -z "${ROVERFLAKE_ROOT}" ]; then
echo "ROVERFLAKE_ROOT is not set (or empty). That makes me really sad."
sleep 2
echo "Please set the enviroment variable in your bashrc to the root of RoverFlake2/"
exit 1
fi


source $ROVERFLAKE_ROOT/utils/common.sh

clear

Expand All @@ -20,11 +34,10 @@ sleep 1.0
echo starting with ros2...

#sudo apt update
cd $HOME/RoverFlake2/setup_scripts/
cd $ROVERFLAKE_ROOT/setup_scripts/
bash install_dependencies.sh
bash install-ros2-humble.sh # also runs apt update, if ros2 is not installed


apt_packages_to_install=(
"curl"
"git"
Expand Down Expand Up @@ -53,12 +66,29 @@ for package in "${apt_packages_to_install[@]}"; do
fi
fi
done
cd $HOME/RoverFlake2/
cd $ROVERFLAKE_ROOT

source /opt/ros/humble/setup.bash
#install ros2 packages
sudo rosdep init
rosdep update
rosdep install --from-paths src -y --ignore-src
bash setup_scripts/install_rosdeps.sh

# setup user enviroment
mkdir ${ROVERFLAKE_ROOT}/random_install_files
echo "source ${ROVERFLAKE_ROOT}/setup_scripts/rover_env/rover_env_common.sh " >> ~/.bashrc


# install libsweep
bash ${ROVERFLAKE_ROOT}/setup_scripts/install_libsweepsdk.sh


cd ${ROVERFLAKE_ROOT}
bash setup_scripts/submodule_update.sh




# for package in "${ros_packages_to_install[@]}"; do
# if is_package_installed "$package"; then
# echo "Package '$package' is already installed."
Expand Down
1 change: 1 addition & 0 deletions setup_scripts/submodule_update.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
git submodule update --init --recursive
5 changes: 4 additions & 1 deletion setup_scripts/utils/common.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@

# export ROVERFLAKE_INSTALL_SCRIPTS_UTILS_SOURCED="true"
# Resolve repo root
COMMON_SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"

REPO_ROOT="${COMMON_SCRIPT_DIR}/../../"

is_package_installed(){
local package_name="$1"
Expand Down
2 changes: 1 addition & 1 deletion src/arm_control/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.8)
cmake_minimum_required(VERSION 3.10)
project(arm_control)

if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
Expand Down
4 changes: 4 additions & 0 deletions src/arm_control/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,10 @@
<exec_depend>robot_state_publisher</exec_depend>
<exec_depend>tf2_ros</exec_depend>

<depend>rover_utils</depend>
<depend>moteus_msgs</depend>


<test_depend>ament_cmake_gtest</test_depend>
<test_depend>ament_lint_auto</test_depend>
<test_depend>ament_lint_common</test_depend>
Expand Down
3 changes: 2 additions & 1 deletion src/arm_hardware_interface/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,11 @@

<depend>rclcpp</depend>
<depend>sensor_msgs</depend>
<depend>serial</depend>
<depend>rover_msgs</depend>
<depend>arm_control</depend>

<!-- Rosdep fails with the following: -->
<depend>serial</depend>

<export>
<build_type>ament_cmake</build_type>
Expand Down
5 changes: 3 additions & 2 deletions src/aruco_detector/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,9 @@
<depend>cv_bridge</depend>
<depend>sensor_msgs</depend>
<depend>std_msgs</depend>
<depend>OpenCV</depend>
<depend>cv2_aruco</depend>
<!-- Rosdep fails with the following: -->
<!-- <depend>cv2_aruco</depend> -->
<!-- <depend>OpenCV</depend> -->

<test_depend>ament_lint_auto</test_depend>
<test_depend>ament_lint_common</test_depend>
Expand Down
2 changes: 2 additions & 0 deletions src/cameras_cpp/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@
<license>TODO: License declaration</license>

<buildtool_depend>ament_cmake</buildtool_depend>
<!-- <depend>rover_utils</depend> -->
<build_export_depend>rover_utils</build_export_depend>

<test_depend>ament_lint_auto</test_depend>
<test_depend>ament_lint_common</test_depend>
Expand Down
2 changes: 1 addition & 1 deletion src/dev_arm_description/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.5)
cmake_minimum_required(VERSION 3.10)

project(dev_arm_description)

Expand Down
3 changes: 2 additions & 1 deletion src/dev_arm_moveit_config_v2/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -42,9 +42,10 @@
<exec_depend>rviz_common</exec_depend>
<exec_depend>rviz_default_plugins</exec_depend>
<exec_depend>tf2_ros</exec_depend>
<exec_depend>warehouse_ros_mongo</exec_depend>
<exec_depend>xacro</exec_depend>

<!-- Fuck outta here mongo, don't know where you came from -->
<!-- <exec_depend>warehouse_ros_mongo</exec_depend> -->

<export>
<build_type>ament_cmake</build_type>
Expand Down
1 change: 0 additions & 1 deletion src/external_pkgs/axis_camera
Submodule axis_camera deleted from a4f75e
1 change: 0 additions & 1 deletion src/external_pkgs/camera_info_manager
Submodule camera_info_manager deleted from 381820
1 change: 0 additions & 1 deletion src/external_pkgs/ipcam
Submodule ipcam deleted from 58d286
1 change: 0 additions & 1 deletion src/external_pkgs/ptz_action_server
Submodule ptz_action_server deleted from 3b8fda
52 changes: 0 additions & 52 deletions src/ipcamerafeed/CMakeLists.txt

This file was deleted.

Loading