Skip to content

Commit d93a4b5

Browse files
authored
Merge pull request #61 from flynneva/devel
add back in ci for all ros distros
2 parents 9b8af58 + e5da757 commit d93a4b5

29 files changed

+806
-580
lines changed

.github/workflows/dashing-release-candidate.yml

Lines changed: 0 additions & 32 deletions
This file was deleted.

.github/workflows/eloquent-release-candidate.yml

Lines changed: 0 additions & 32 deletions
This file was deleted.

.github/workflows/foxy-release-candidate.yml

Lines changed: 0 additions & 32 deletions
This file was deleted.

.github/workflows/rolling-release-candidate.yml renamed to .github/workflows/release-candidate.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
name: rolling-release-candidate
1+
name: Release Candidate
22
on:
33
issues:
44
types: [opened, edited]
55

66
jobs:
77
release-candidate:
88
runs-on: ubuntu-latest
9-
if: startsWith(github.event.issue.title, 'Release ') && contains(github.event.issue.body, 'rolling')
9+
if: startsWith(github.event.issue.title, 'Release ')
1010
steps:
1111
- name: checkout
1212
uses: actions/checkout@v2
@@ -25,7 +25,7 @@ jobs:
2525
with:
2626
source_branch: ${{ steps.create_release.outputs.created_branch }}
2727
destination_branch: main
28-
pr_title: Rolling Release ${{ steps.create_release.outputs.version}}
28+
pr_title: Release ${{ steps.create_release.outputs.version}}
2929
pr_body: close \#${{ github.event.issue.number }}
3030
pr_assignee: ${{ github.actor }}
3131
github_token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/release.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
paths:
6+
- package.xml
7+
- 'package.xml'
8+
branches:
9+
- main
10+
jobs:
11+
bloom-release:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: checkout repo
15+
uses: actions/checkout@v2
16+
- name: bloom_release
17+
id: bloom
18+
uses: at-wat/bloom-release-action@v0
19+
with:
20+
ros_distro: dashing eloquent foxy rolling
21+
release_repository_push_url: https://github.com/flynneva/grbl_ros-release.git
22+
github_token_bloom: ${{ secrets.BLOOM_RELEASE_TOKEN }}
23+
github_user: flynneva
24+
git_user: Evan Flynn
25+
git_email: evanflynn.msu@gmail.com
26+
tag_and_release: true
27+
open_pr: true
28+
- name: create github release
29+
uses: actions/create-release@v1
30+
with:
31+
tag_name: ${{ steps.bloom.outputs.version }}
32+
release_name: ${{ steps.bloom.outputs.version }}
33+
env:
34+
GITHUB_TOKEN: ${{ secrets.BLOOM_RELEASE_TOKEN }}

.github/workflows/ros_ci.yml

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Rolling CI
1+
name: ROS2 CI
22

33
on:
44
pull_request:
@@ -13,8 +13,23 @@ jobs:
1313
fail-fast: false
1414
matrix:
1515
ros_distribution:
16+
- dashing
17+
- eloquent
18+
- foxy
1619
- rolling
1720
include:
21+
# Dashing Diademata (May 2019 - May 2021)
22+
- docker_image: ubuntu:bionic
23+
ros_distribution: dashing
24+
ros_version: 2
25+
# Eloquent Elusor (November 2019 - November 2020)
26+
- docker_image: ubuntu:bionic
27+
ros_distribution: eloquent
28+
ros_version: 2
29+
# Foxy Fitzroy (June 2020 - May 2023)
30+
- docker_image: ubuntu:focal
31+
ros_distribution: foxy
32+
ros_version: 2
1833
# Rolling Ridley (June 2020 - Present)
1934
- docker_image: ubuntu:focal
2035
ros_distribution: rolling
@@ -29,8 +44,9 @@ jobs:
2944
with:
3045
path: ros_ws/src
3146
- name: setup ROS environment
32-
uses: ros-tooling/setup-ros@master
47+
uses: flynneva/setup-ros@enable_ros2_testing
3348
with:
49+
use-ros2-testing: true
3450
required-ros-distributions: ${{ matrix.ros_distribution }}
3551
- name: build and test
3652
uses: ros-tooling/action-ros-ci@0.0.19

README.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ Unit tests are run on every PR and every release across every supported platform
3838
Here is a list of potential ideas/features this package could have. Eventually the plan is to add all of these.
3939
- full grbl command support & descriptions (non-modal commands, motion modes, etc.)
4040
- safety features that grbl already implements to be translated to ROS (door sensor, estop, endstop, etc.)
41-
- full file gcode streaming to grbl device
42-
- publish tf of grbl machine coordinates
41+
- ROS param control of GRBL settings
4342
- ROS services for jog control
4443
- im sure there are more but I cant think of them right now

config/cnc001.yaml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
cnc_001:
2+
ros__parameters:
3+
machine_id: cnc_001
4+
port: /dev/ttyUSB0
5+
baudrate: 115200
6+
x_max: 300 # mm
7+
y_max: 200 # mm
8+
z_max: 150 # mm
9+
default_v: 100 # mm / min
10+
x_max_v: 150 # mm / min
11+
y_max_v: 150 # mm / min
12+
z_max_v: 150 # mm / min
13+
x_steps: 100 # steps / mm
14+
y_steps: 100 # steps / mm
15+
z_steps: 100 # steps / mm
16+

grbl_ros/__init__.py

Lines changed: 10 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -28,28 +28,22 @@
2828
# Future implementations might include control for other
2929
# GCODE compatible systems
3030

31-
from ._logging import MODE
31+
from ._command import command
32+
from ._configure import configure
33+
from ._control import control
34+
from ._logging import logging
3235

3336

34-
class grbl:
37+
class grbl(control, command, configure, logging):
3538

36-
from ._logging import getStatus, decodeStatus, STATUS, MODE
37-
from ._configure import getPose, setSpeed, setOrigin, ensureMovementMode, \
38-
blockUntilIdle, clearAlarm, enableSteppers, disableSteppers
39-
from ._control import home, moveTo, moveRel, moveToOrigin
40-
from ._command import startup, shutdown, gcode, stream
41-
42-
def __init__(self):
43-
"""
44-
Summary line.
45-
46-
Initialize the grbl class with default parameters
47-
48-
"""
39+
def __init__(self, node):
4940
# Default parameter values set in startup
50-
self.mode = MODE.NORMAL
41+
self.mode = self.MODE.NORMAL
42+
self.state = self.STATE.ALARM # initalize to alarm state for safety
43+
self.node = node # so we can pass info to ROS
5144
self.s = None # serial port object
5245
self.abs_move = None # GRBL has 2 movement modes: relative and absolute
46+
self.machine_id = 'cnc_000'
5347
self.baudrate = 0
5448
self.port = ''
5549
self.acceleration = 0
1.06 KB
Binary file not shown.

0 commit comments

Comments
 (0)