You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONVENTIONS.md
+8-8Lines changed: 8 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -125,19 +125,19 @@ The C++ programming conventions we use are loosely based off the [ROS C++ Style
125
125
- Member variables are **under_scored_suffix_**
126
126
- Members should be organized **Functions, Constants, Variables**
127
127
- Leave **2** lines between functions and classes
128
-
- If the C++ file exists in `steelhead_<PACKAGE_NAME>`, then the classes/functions should be namespaced using **<PACKAGE_NAME>**.
129
-
- If the file `example_file.hpp` exists in `steelhead_<PACKAGE_NAME>`, it's should have a definition **STEELHEAD_<PACKAGE_NAME>__EXAMPLE_FILE**
128
+
- If the C++ file exists in `spiderfish_<PACKAGE_NAME>`, then the classes/functions should be namespaced using **<PACKAGE_NAME>**.
129
+
- If the file `example_file.hpp` exists in `spiderfish_<PACKAGE_NAME>`, it's should have a definition **SPIDERFISH_<PACKAGE_NAME>__EXAMPLE_FILE**
130
130
- Includes should be organized **Standard, Third-Party, Application**
131
131
- Includes should be in the `.hpp` as much as possible
132
132
- Brackets (ie. `{` and `}`) should start on a new line
133
133
- Function should be commented as per [Doxygen C++](https://www.doxygen.nl/manual/docblocks.html)
134
134
135
-
Here is an example `.hpp` and `.cpp` file in the package `steelhead_example` dispalying these conventions
135
+
Here is an example `.hpp` and `.cpp` file in the package `spiderfish_example` dispalying these conventions
136
136
137
137
```
138
138
// example_file.hpp
139
-
#ifndef STEELHEAD_EXAMPLE__EXAMPLE_FILE
140
-
#define STEELHEAD_EXAMPLE__EXAMPLE_FILE
139
+
#ifndef SPIDERFISH_EXAMPLE__EXAMPLE_FILE
140
+
#define SPIDERFISH_EXAMPLE__EXAMPLE_FILE
141
141
142
142
#include <some_standard_library>
143
143
#include <another_standard_library>
@@ -203,12 +203,12 @@ namespace example
203
203
204
204
} // namespace example
205
205
206
-
#endif //STEELHEAD_EXAMPLE__EXAMPLE_FILE
206
+
#endif //SPIDERFISH_EXAMPLE__EXAMPLE_FILE
207
207
```
208
208
209
209
```
210
210
// example_file.cpp
211
-
#include "steelhead_example/example_file.hpp"
211
+
#include "spiderfish_example/example_file.hpp"
212
212
213
213
namespace example
214
214
{
@@ -242,7 +242,7 @@ namespace example
242
242
243
243
# ROS2
244
244
ROS2 has it's own set of conventions which we will follow. The following list gives the conventions that should be followed
245
-
- Packages should be named **steelhead_<PACKAGE_NAME>** where `<PACKAGE_NAME>` is short and descriptive of the packages purpose (e.g `steelhead_example`)
245
+
- Packages should be named **spiderfish_<PACKAGE_NAME>** where `<PACKAGE_NAME>` is short and descriptive of the packages purpose (e.g `spiderfish_example`)
246
246
- Namespaces should be **under_scored** and as short as possible (e.g `/ns/component_one/output`)
247
247
- Topics, actions, services, and node_names should also be **under_scored**
248
248
- All interface files (`.msg`,`.srv`,`.action`) should be **CamelCase** (e.g `CustomMessage.msg`)
Copy file name to clipboardExpand all lines: README.md
+10-10Lines changed: 10 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
-
# Steelhead AUV
1
+
# Spiderfish AUV
2
2
3
-
This repository contains the ROS2 system for the UBC SubBots Steelhead AUV. It is meant to be launched in Ubuntu 20.04 on the Jetson TX2 on board the Steelhead AUV.
3
+
This repository contains the ROS2 system for the UBC SubBots Spiderfish AUV. It is meant to be launched in Ubuntu 20.04 on the Jetson TX2 on board the Spiderfish AUV.
4
4
5
5
## DISCLAIMER
6
6
@@ -20,7 +20,7 @@ This guide already assumes you have already followed the guide for installing Ub
20
20
21
21
To get started, first clone this repo to your computer running Ubuntu 20.04 into whatever directory you choose by running
Next, we need to add the setup script to our `.bashrc` so that it is sourced on every new terminal. Open up `~/.bashrc` in a text editor or in nano as such
@@ -89,15 +89,15 @@ To finish the setup, edit your `.bashrc` file to source the global and local set
89
89
90
90
nano ~/.bashrc
91
91
92
-
Navigate to the bottom of the file and add the following three lines; be sure to set `<PATH_TO_STEELHEAD>` to whatever it is on your machine
92
+
Navigate to the bottom of the file and add the following three lines; be sure to set `<PATH_TO_SPIDERFISH>` to whatever it is on your machine
93
93
94
94
source /opt/ros/foxy/setup.bash # global setup script
95
-
source <PATH_TO_STEELHEAD>/steelhead/install/setup.bash # local setup script
95
+
source <PATH_TO_SPIDERFISH>/spiderfish/install/setup.bash # local setup script
96
96
export RCUTILS_COLORIZED_OUTPUT=1
97
97
98
98
The last line is helpful in that it colorizes ROS2 logging so that info/warn/error messages are easier to differentiate. Once this is done, open a new terminal for the `.bashrc` to be executed and the required scripts be sourced. To perform a sanity check that everything is working, launch the Gazebo sim by launching
If this command executes successfully, you are ready to develop!
103
103
@@ -106,16 +106,16 @@ To learn how to contribute to this repo, see the seperate [workflow](WORKFLOW.md
106
106
107
107
## Tips
108
108
Here are some tips to be aware of when developing on this repository and when developing in ROS2 in general
109
-
- Make sure when you run any `colcon` command such as `colcon build` or `colcon test` that you do so in the root folder of this directory (i.e `steelhead`)
109
+
- Make sure when you run any `colcon` command such as `colcon build` or `colcon test` that you do so in the root folder of this directory (i.e `spiderfish`)
110
110
- After creating any new component nodes, you must either source the local setup script or simply open up a new terminal for them to show up under the command `ros2 component types` and be usable by the pipeline.
111
111
- Make sure you spell topics/services/actions correctly, be sure to debug by using `ros2 topic|service|action list`and `rqt_graph` to see that you are using the desired communication channels.
112
-
- If you have added a dependency to a package by modifying the appropriate files (`CMakeLists.txt`, `package.xml`) and the build of that package is failing because it says it can't find the package, make sure you have it installed by running `rosdep install -i --from-path src --rosdistro foxy -y` in the `steelhead` folder, and also that a release for the distro we are using (`foxy`) exists on the ROS2 package index.
112
+
- If you have added a dependency to a package by modifying the appropriate files (`CMakeLists.txt`, `package.xml`) and the build of that package is failing because it says it can't find the package, make sure you have it installed by running `rosdep install -i --from-path src --rosdistro foxy -y` in the `spiderfish` folder, and also that a release for the distro we are using (`foxy`) exists on the ROS2 package index.
113
113
- For non-ROS2 dependencies, check [here](https://github.com/ros/rosdistro/tree/master/rosdep) to see the available system dependencies that can be used with `rosdep`.
114
114
115
115
## Useful Shortcuts
116
116
If you'd like, add these aliases to the bottom of your .bashrc
117
117
118
118
```
119
119
alias build='colcon build && source install/setup.bash' # clean build
120
-
alias clean='rm -r build install log' # cleans the workspace (MAKE SURE THAT YOU ONLY USE THIS IN THE BASE OF STEELHEAD)
120
+
alias clean='rm -r build install log' # cleans the workspace (MAKE SURE THAT YOU ONLY USE THIS IN THE BASE OF SPIDERFISH)
Copy file name to clipboardExpand all lines: WORKFLOW.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,20 +1,20 @@
1
1
# Workflow
2
2
This document outlines the workflow that one should follow when developing on this repo.
3
3
4
-
First, you will have been assigned to a GitHub issue associated to the `steelhead` repo that will look something like this:
4
+
First, you will have been assigned to a GitHub issue associated to the `spiderfish` repo that will look something like this:
5
5
6
6

7
7
8
-
This issue will generally have the following sections, a section describing the reason for the issue and what should be done to resolve it, a set of resources that might come in handy, a set of notes that should be taken into consideration when developing, and a set of tasks which break the issue up into smaller components. These tasks are meant to guide you through the issue, but are not concrete and are simply there to help keep you on track. Feel free to add to or modify the tasks as you see fit. To start working on the issue, you must branch off from the latest state of the `main` branch of `steelhead` as such **(*NOTE*: In some cases, you will be branching off of someone else's branch, keep track of if you do this and let a team lead know before submitting a pull request as you will have to merge with the other branch before `main` as shown later on)**
8
+
This issue will generally have the following sections, a section describing the reason for the issue and what should be done to resolve it, a set of resources that might come in handy, a set of notes that should be taken into consideration when developing, and a set of tasks which break the issue up into smaller components. These tasks are meant to guide you through the issue, but are not concrete and are simply there to help keep you on track. Feel free to add to or modify the tasks as you see fit. To start working on the issue, you must branch off from the latest state of the `main` branch of `spiderfish` as such **(*NOTE*: In some cases, you will be branching off of someone else's branch, keep track of if you do this and let a team lead know before submitting a pull request as you will have to merge with the other branch before `main` as shown later on)**
Note that `<PATH_TO_STEELHEAD>` should be substituted to what it is on your machine, `<YOUR_FIRST_NAME>` should be substituted as your first name, and `<APPROPRIATE_LABEL>` should be some short label that describes the changes you made.
15
+
Note that `<PATH_TO_SPIDERFISH>` should be substituted to what it is on your machine, `<YOUR_FIRST_NAME>` should be substituted as your first name, and `<APPROPRIATE_LABEL>` should be some short label that describes the changes you made.
16
16
17
-
To update the state of your branch, follow the basic add, commit, and push workflow in git. [Here](https://www.atlassian.com/git/glossary) is a tutorial on that if you are new to git. Once you are have completed the tasks given in the issue, and are sure that it follows the [conventions](CONVENTIONS.md) (make sure you add/edit any package documentation as stated [here](CONVENTIONS.md#github)) you are asked to follow, it is time to make a pull request. Go to the `steelhead` repo on GitHub, make sure you are viewing the branch which you are trying to make a pull request for, and you should see a button which says "Contribute", which leads to a "Open pull request" button (GitHub also prompts you to compare and make pull request on branches that had recent pushes, as seen highlighted below):
17
+
To update the state of your branch, follow the basic add, commit, and push workflow in git. [Here](https://www.atlassian.com/git/glossary) is a tutorial on that if you are new to git. Once you are have completed the tasks given in the issue, and are sure that it follows the [conventions](CONVENTIONS.md) (make sure you add/edit any package documentation as stated [here](CONVENTIONS.md#github)) you are asked to follow, it is time to make a pull request. Go to the `spiderfish` repo on GitHub, make sure you are viewing the branch which you are trying to make a pull request for, and you should see a button which says "Contribute", which leads to a "Open pull request" button (GitHub also prompts you to compare and make pull request on branches that had recent pushes, as seen highlighted below):
Copy file name to clipboardExpand all lines: docker-sbc/README.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,8 +4,8 @@ This Dockerfile is compatible with any SBC with amd64 or arm64 architecture CPU
4
4
However, it is only tested on the NVIDIA Jetson TX2 and Radxa X4, running Ubuntu 18.04 and 24.04 respectively.
5
5
6
6
## How to use
7
-
1. Build the image by copying this Dockerfile to a new folder on the target SBC, then run `docker build -t "steelhead-foxy:<version>" . 2>&1 | tee build.log`. `<version>` convention is MAJOR.MINOR.BUGFIX-ARCH, e.g. `1.0.0-amd64`
8
-
2. Run the container with `sudo docker run -it --net=host -v /dev:/dev --privileged steelhead-foxy:<version> bash`.
7
+
1. Build the image by copying this Dockerfile to a new folder on the target SBC, then run `docker build -t "spiderfish-foxy:<version>" . 2>&1 | tee build.log`. `<version>` convention is MAJOR.MINOR.BUGFIX-ARCH, e.g. `1.0.0-amd64`
8
+
2. Run the container with `sudo docker run -it --net=host -v /dev:/dev --privileged spiderfish-foxy:<version> bash`.
9
9
3. To open a new terminal session on an existing container, run `docker exec -it <container_id> bash`. `byobu` is supported within the container to allow multiple sessions in the same terminal window
10
-
4. Update and `colcon build` the steelhead repo if necessary.
10
+
4. Update and `colcon build` the spiderfish repo if necessary.
Copy file name to clipboardExpand all lines: docker/README.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,8 @@
1
-
# THIS WAS FOR TRITON AND MAY BE OUTDATED FOR STEELHEAD
1
+
# THIS WAS FOR TRITON AND MAY BE OUTDATED FOR SPIDERFISH
2
2
3
3
## Docker
4
4
5
-
We use `docker-compose` to orchestrate the `micro-ros` agent contianer with our custom built `steelhead` container. This Docker system can be launched on the TX2 and still be able to communicate with various devices as the `/dev` directory is mounted to every container.
5
+
We use `docker-compose` to orchestrate the `micro-ros` agent contianer with our custom built `spiderfish` container. This Docker system can be launched on the TX2 and still be able to communicate with various devices as the `/dev` directory is mounted to every container.
6
6
7
7
### Setup Micro-Ros
8
8
@@ -16,14 +16,14 @@ To develop with micro-ros on a Teensy 4.0 (i.e be able to compile and upload Ard
16
16
17
17
### Building
18
18
19
-
There is no need to build manually, on every push to main, the image `ubcsubbots/steelhead:latest` on `dockerhub` is updated. The credentials used are stored in Github secrets and have to belong to a member of the `ubcsubbots` organization on `dockerhub`.
19
+
There is no need to build manually, on every push to main, the image `ubcsubbots/spiderfish:latest` on `dockerhub` is updated. The credentials used are stored in Github secrets and have to belong to a member of the `ubcsubbots` organization on `dockerhub`.
20
20
21
21
### Usage
22
22
To launch the entire docker system, run the following command in this directory. Note that for this to work, you need to have the micro-controller connected to the host on `/dev/ttyACM0`.
23
23
24
24
docker-compose up
25
25
26
-
To enter into the ROS2 container (which is running the `steelhead` system), use the following command
26
+
To enter into the ROS2 container (which is running the `spiderfish` system), use the following command
0 commit comments