Skip to content
This repository has been archived by the owner on Apr 12, 2024. It is now read-only.

Implement Serial Communication for ASSv2 #58

Closed
wants to merge 13 commits into from
Closed
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
25 changes: 25 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: build checks

on:
workflow_dispatch:
pull_request:
push:
branches:
- master

jobs:
build:
name: build
runs-on: ubuntu-latest
container:
image: ros:noetic
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Install dependencies
run: |
sudo apt-get update
rosdep update
DEBIAN_FRONTEND=noninteractive rosdep install --from-paths src -qr --ignore-src --default-yes
- name: Build packages
run: /opt/ros/noetic/env.sh catkin_make
33 changes: 0 additions & 33 deletions .github/workflows/ci.yml

This file was deleted.

20 changes: 0 additions & 20 deletions .github/workflows/cli.yml

This file was deleted.

24 changes: 0 additions & 24 deletions .github/workflows/format.yaml

This file was deleted.

46 changes: 46 additions & 0 deletions .github/workflows/rosserial.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: rosserial CI

on:
workflow_dispatch:
push:
branches:
- master

jobs:
build-and-upload:
name: build-and-upload-ros-lib
runs-on: ubuntu-latest
container:
image: ros:noetic
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Install dependencies
run: |
sudo apt-get update
rosdep update
DEBIAN_FRONTEND=noninteractive rosdep install --from-paths src -qr --ignore-src --default-yes
- name: Build packages
run: /opt/ros/noetic/env.sh catkin_make
- name: Build rosserial_arduino library
run: |
DEBIAN_FRONTEND=noninteractive sudo apt-get install --no-install-recommends --quiet --yes ros-noetic-rosserial-arduino git
devel/env.sh rosrun rosserial_arduino make_libraries.py dest
- name: Checkout ros_lib
uses: actions/checkout@v3
with:
token: ${{ secrets.GH_TOKEN }}
repository: Autonomous-Motorsports-Purdue/ros_lib
path: ros_lib
- name: Move changes
run: |
rm -rf ros_lib/*
mv dest/ros_lib/* ros_lib/
- name: Commit changes to repo
run: |
cd ros_lib
git config --global user.name alanssitis
git config --global user.email [email protected]
git add -A
git commit -m "Automated update (${{ github.sha }})"
git push
14 changes: 6 additions & 8 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,14 +1,12 @@
# Editor stuff
.ccls-cache/

# ROS build directories
build/
devel/

# Devel directory
amp-devel/

# AMP-CLI files
*.egg-info
__pycache__
logs/
install/
log/
__pycache__/

# Catkin ignore files
CATKIN_IGNORE
Expand Down
32 changes: 16 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,35 +1,35 @@
# AMP Autonomous Software Stack v2

[![AMP_ASSv2 CI](https://github.com/Autonomous-Motorsports-Purdue/AMP_ASSv2/actions/workflows/ci.yml/badge.svg)](https://github.com/Autonomous-Motorsports-Purdue/AMP_ASSv2/actions/workflows/ci.yml)
[![AMP-CLI CI](https://github.com/Autonomous-Motorsports-Purdue/AMP_ASSv2/actions/workflows/cli.yml/badge.svg)](https://github.com/Autonomous-Motorsports-Purdue/AMP_ASSv2/actions/workflows/cli.yml)
[![build checks](https://github.com/Autonomous-Motorsports-Purdue/AMP_ASSv2/actions/workflows/ci.yaml/badge.svg)](https://github.com/Autonomous-Motorsports-Purdue/AMP_ASSv2/actions/workflows/ci.yaml)
[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/Autonomous-Motorsports-Purdue/AMP_ASSv2/master.svg)](https://results.pre-commit.ci/latest/github/Autonomous-Motorsports-Purdue/AMP_ASSv2/master)

Second iteration of the Autonomous Software Stack (ASS) for the AMP go-kart.
Go to the [wiki](https://github.com/Autonomous-Motorsports-Purdue/AMP_ASSv2/wiki)
to learn more about this repo and code standards.

It is dependent on [ROS Noetic](http://wiki.ros.org/noetic/Installation/Ubuntu).

## Developing

The best way to work with the codebase is within a Ubuntu 20.04 VM. To do so,
clone this repo, install all the dependencies and build the project.
The best way to work with the codebase is within a Ubuntu 20.04 environment, be
it on baremetal or on a VM. To do so, clone this repo and install all the
dependencies and build the project.

An alternate build system,
`[colcon](https://colcon.readthedocs.io/en/released/user/installation.html)`
can also be used.

```bash
# Install dependencies
rosdep update
rosdep install --from-paths src -iry
catkin_make
```

For people unable to work in a Ubuntu 20.04 VM, it is recommended to work on
the code base within a virtual ROS environment in a docker container. To do so,
the `amp-cli` will help you set up all you'll need.

- To build the amp-cli tool, run:
# Build the packages
catkin_make

# If using colcon, use the line below
# colcon build
```
sudo pip install .
```

- Run `amp-cli` to view the available options.
Run the `devel` option in order to have a good consistent environment.

## Formatting

Expand Down
Loading