Skip to content

Commit 8c9fc79

Browse files
committed
Homing alarm upon no switch. Licensing update.
- Homing cycle failure reports alarm feedback when the homing cycle is exited via a reset, interrupted by a safety door switch, or does not find the limit switch. - Homing cycle bug fix when not finding the limit switch. It would just idle before, but now will exit with an alarm. - Licensing update. Corrected licensing according to lawyer recommendations. Removed references to other Grbl versions.
1 parent d36d351 commit 8c9fc79

37 files changed

+116
-262
lines changed

COPYING

+9-36
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,31 @@
11
------------------------------------------------------------------------------
2-
COPYRIGHT NOTICE FOR GRBL v0.9:
2+
COPYRIGHT NOTICE FOR GRBL:
33
------------------------------------------------------------------------------
44

5-
GRBL v0.9 - Embedded CNC g-code interpreter and motion-controller
6-
Copyright (c) 2012-2014 Sungeun K. Jeon
5+
Grbl - Embedded CNC g-code interpreter and motion-controller
76

8-
This program is free software: you can redistribute it and/or modify
7+
Copyright (c) 2011-2015 Sungeun K. Jeon
8+
Copyright (c) 2009-2011 Simen Svale Skogsrud
9+
Copyright (c) 2011 Jens Geisler
10+
11+
Grbl is free software: you can redistribute it and/or modify
912
it under the terms of the GNU General Public License as published by
1013
the Free Software Foundation, either version 3 of the License, or
1114
(at your option) any later version.
1215

13-
This program is distributed in the hope that it will be useful,
16+
Grbl is distributed in the hope that it will be useful,
1417
but WITHOUT ANY WARRANTY; without even the implied warranty of
1518
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1619
GNU General Public License for more details.
1720

1821
You should have received a copy of the GNU General Public License
19-
along with this program. If not, see <http://www.gnu.org/licenses/>.
20-
22+
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
2123

2224

2325
------------------------------------------------------------------------------
2426
COPYRIGHT NOTICE(S) FOR WORK CONTAINED IN THIS SOFTWARE:
2527
------------------------------------------------------------------------------
2628

27-
The MIT License (MIT)
28-
29-
GRBL(tm) v0.8 - Embedded CNC g-code interpreter and motion-controller
30-
Copyright (c) 2009-2011 Simen Svale Skogsrud
31-
Copyright (c) 2011-2013 Sungeun K. Jeon
32-
Copyright (c) 2011 Jens Geisler
33-
34-
Permission is hereby granted, free of charge, to any person obtaining a copy
35-
of this software and associated documentation files (the "Software"), to deal
36-
in the Software without restriction, including without limitation the rights
37-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
38-
copies of the Software, and to permit persons to whom the Software is
39-
furnished to do so, subject to the following conditions:
40-
41-
The above copyright notice and this permission notice shall be included in
42-
all copies or substantial portions of the Software.
43-
44-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
45-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
46-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
47-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
48-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
49-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
50-
THE SOFTWARE.
51-
52-
-------------
53-
5429
Copyright (c) 2008, Atmel Corporation All rights reserved.
5530

5631
Redistribution and use in source and binary forms, with or without
@@ -704,5 +679,3 @@ Program, unless a warranty or assumption of liability accompanies a
704679
copy of the Program in return for a fee.
705680

706681
END OF TERMS AND CONDITIONS
707-
708-
------------------------------------------------------------------------------

grbl/config.h

+3-8
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
/*
22
config.h - compile time configuration
3-
Part of Grbl v0.9
3+
Part of Grbl
44
5-
Copyright (c) 2013-2015 Sungeun K. Jeon
5+
Copyright (c) 2012-2015 Sungeun K. Jeon
6+
Copyright (c) 2009-2011 Simen Svale Skogsrud
67
78
Grbl is free software: you can redistribute it and/or modify
89
it under the terms of the GNU General Public License as published by
@@ -17,12 +18,6 @@
1718
You should have received a copy of the GNU General Public License
1819
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
1920
*/
20-
/*
21-
This file is based on work from Grbl v0.8, distributed under the
22-
terms of the MIT-license. See COPYING for more details.
23-
Copyright (c) 2009-2011 Simen Svale Skogsrud
24-
Copyright (c) 2011-2013 Sungeun K. Jeon
25-
*/
2621

2722
// This file contains compile-time configurations for Grbl's internal system. For the most part,
2823
// users will not need to directly modify these, but they are here for specific needs, i.e.

grbl/coolant_control.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
coolant_control.c - coolant control methods
3-
Part of Grbl v0.9
3+
Part of Grbl
44
55
Copyright (c) 2012-2015 Sungeun K. Jeon
66

grbl/coolant_control.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
coolant_control.h - spindle control methods
3-
Part of Grbl v0.9
3+
Part of Grbl
44
55
Copyright (c) 2012-2015 Sungeun K. Jeon
66

grbl/cpu_map.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
cpu_map.h - CPU and pin mapping configuration file
3-
Part of Grbl v0.9
3+
Part of Grbl
44
55
Copyright (c) 2012-2015 Sungeun K. Jeon
66

grbl/defaults.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
defaults.h - defaults settings configuration file
3-
Part of Grbl v0.9
3+
Part of Grbl
44
55
Copyright (c) 2012-2015 Sungeun K. Jeon
66

grbl/eeprom.h

+10-18
Original file line numberDiff line numberDiff line change
@@ -2,28 +2,20 @@
22
eeprom.h - EEPROM methods
33
Part of Grbl
44
5-
The MIT License (MIT)
6-
7-
GRBL(tm) - Embedded CNC g-code interpreter and motion-controller
85
Copyright (c) 2009-2011 Simen Svale Skogsrud
96
10-
Permission is hereby granted, free of charge, to any person obtaining a copy
11-
of this software and associated documentation files (the "Software"), to deal
12-
in the Software without restriction, including without limitation the rights
13-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14-
copies of the Software, and to permit persons to whom the Software is
15-
furnished to do so, subject to the following conditions:
7+
Grbl is free software: you can redistribute it and/or modify
8+
it under the terms of the GNU General Public License as published by
9+
the Free Software Foundation, either version 3 of the License, or
10+
(at your option) any later version.
1611
17-
The above copyright notice and this permission notice shall be included in
18-
all copies or substantial portions of the Software.
12+
Grbl is distributed in the hope that it will be useful,
13+
but WITHOUT ANY WARRANTY; without even the implied warranty of
14+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15+
GNU General Public License for more details.
1916
20-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26-
THE SOFTWARE.
17+
You should have received a copy of the GNU General Public License
18+
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
2719
*/
2820

2921
#ifndef eeprom_h

grbl/gcode.c

+4-9
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
/*
22
gcode.c - rs274/ngc parser.
3-
Part of Grbl v0.9
3+
Part of Grbl
4+
5+
Copyright (c) 2011-2015 Sungeun K. Jeon
6+
Copyright (c) 2009-2011 Simen Svale Skogsrud
47
5-
Copyright (c) 2012-2015 Sungeun K. Jeon
6-
78
Grbl is free software: you can redistribute it and/or modify
89
it under the terms of the GNU General Public License as published by
910
the Free Software Foundation, either version 3 of the License, or
@@ -17,12 +18,6 @@
1718
You should have received a copy of the GNU General Public License
1819
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
1920
*/
20-
/*
21-
This file is based on work from Grbl v0.8, distributed under the
22-
terms of the MIT-license. See COPYING for more details.
23-
Copyright (c) 2009-2011 Simen Svale Skogsrud
24-
Copyright (c) 2011-2012 Sungeun K. Jeon
25-
*/
2621

2722
#include "grbl.h"
2823

grbl/gcode.h

+3-8
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
/*
22
gcode.h - rs274/ngc parser.
3-
Part of Grbl v0.9
3+
Part of Grbl
44
5-
Copyright (c) 2012-2015 Sungeun K. Jeon
5+
Copyright (c) 2011-2015 Sungeun K. Jeon
6+
Copyright (c) 2009-2011 Simen Svale Skogsrud
67
78
Grbl is free software: you can redistribute it and/or modify
89
it under the terms of the GNU General Public License as published by
@@ -17,12 +18,6 @@
1718
You should have received a copy of the GNU General Public License
1819
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
1920
*/
20-
/*
21-
This file is based on work from Grbl v0.8, distributed under the
22-
terms of the MIT-license. See COPYING for more details.
23-
Copyright (c) 2009-2011 Simen Svale Skogsrud
24-
Copyright (c) 2011-2012 Sungeun K. Jeon
25-
*/
2621

2722
#ifndef gcode_h
2823
#define gcode_h

grbl/grbl.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
grbl.h - main Grbl include file
3-
Part of Grbl v0.9
3+
Part of Grbl
44
55
Copyright (c) 2015 Sungeun K. Jeon
66

grbl/limits.c

+6-10
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
/*
22
limits.c - code pertaining to limit-switches and performing the homing cycle
3-
Part of Grbl v0.9
3+
Part of Grbl
44
55
Copyright (c) 2012-2015 Sungeun K. Jeon
6-
6+
Copyright (c) 2009-2011 Simen Svale Skogsrud
7+
78
Grbl is free software: you can redistribute it and/or modify
89
it under the terms of the GNU General Public License as published by
910
the Free Software Foundation, either version 3 of the License, or
@@ -17,12 +18,6 @@
1718
You should have received a copy of the GNU General Public License
1819
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
1920
*/
20-
/*
21-
This file is based on work from Grbl v0.8, distributed under the
22-
terms of the MIT-license. See COPYING for more details.
23-
Copyright (c) 2009-2011 Simen Svale Skogsrud
24-
Copyright (c) 2012 Sungeun K. Jeon
25-
*/
2621

2722
#include "grbl.h"
2823

@@ -202,8 +197,9 @@ void limits_go_home(uint8_t cycle_mask)
202197
st_prep_buffer(); // Check and prep segment buffer. NOTE: Should take no longer than 200us.
203198
// Check only for user reset. No time to run protocol_execute_realtime() in this loop.
204199

205-
if (sys.rt_exec_state & (EXEC_SAFETY_DOOR | EXEC_RESET)) { // Abort homing and alarm upon safety door.
206-
if (sys.rt_exec_state & EXEC_SAFETY_DOOR) { mc_reset(); }
200+
// Exit routines: User abort homing and alarm upon safety door or no limit switch found.
201+
if (sys.rt_exec_state & (EXEC_SAFETY_DOOR | EXEC_RESET | EXEC_CYCLE_STOP)) {
202+
if (sys.rt_exec_state & (EXEC_SAFETY_DOOR | EXEC_CYCLE_STOP)) { mc_reset(); }
207203
protocol_execute_realtime();
208204
return;
209205
}

grbl/limits.h

+3-7
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
/*
22
limits.h - code pertaining to limit-switches and performing the homing cycle
3-
Part of Grbl v0.9
3+
Part of Grbl
44
55
Copyright (c) 2012-2015 Sungeun K. Jeon
6-
6+
Copyright (c) 2009-2011 Simen Svale Skogsrud
7+
78
Grbl is free software: you can redistribute it and/or modify
89
it under the terms of the GNU General Public License as published by
910
the Free Software Foundation, either version 3 of the License, or
@@ -17,11 +18,6 @@
1718
You should have received a copy of the GNU General Public License
1819
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
1920
*/
20-
/*
21-
This file is based on work from Grbl v0.8, distributed under the
22-
terms of the MIT-license. See COPYING for more details.
23-
Copyright (c) 2009-2011 Simen Svale Skogsrud
24-
*/
2521

2622
#ifndef limits_h
2723
#define limits_h

grbl/main.c

+4-9
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
/*
22
main.c - An embedded CNC Controller with rs274/ngc (g-code) support
3-
Part of Grbl v0.9
3+
Part of Grbl
4+
5+
Copyright (c) 2011-2015 Sungeun K. Jeon
6+
Copyright (c) 2009-2011 Simen Svale Skogsrud
47
5-
Copyright (c) 2012-2015 Sungeun K. Jeon
6-
78
Grbl is free software: you can redistribute it and/or modify
89
it under the terms of the GNU General Public License as published by
910
the Free Software Foundation, either version 3 of the License, or
@@ -17,12 +18,6 @@
1718
You should have received a copy of the GNU General Public License
1819
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
1920
*/
20-
/*
21-
This file is based on work from Grbl v0.8, distributed under the
22-
terms of the MIT-license. See COPYING for more details.
23-
Copyright (c) 2009-2011 Simen Svale Skogsrud
24-
Copyright (c) 2011-2012 Sungeun K. Jeon
25-
*/
2621

2722
#include "grbl.h"
2823

grbl/motion_control.c

+6-10
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
/*
22
motion_control.c - high level interface for issuing motion commands
3-
Part of Grbl v0.9
3+
Part of Grbl
44
5-
Copyright (c) 2012-2015 Sungeun K. Jeon
5+
Copyright (c) 2011-2015 Sungeun K. Jeon
6+
Copyright (c) 2009-2011 Simen Svale Skogsrud
7+
Copyright (c) 2011 Simen Svale Skogsrud
68
79
Grbl is free software: you can redistribute it and/or modify
810
it under the terms of the GNU General Public License as published by
@@ -17,13 +19,6 @@
1719
You should have received a copy of the GNU General Public License
1820
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
1921
*/
20-
/*
21-
This file is based on work from Grbl v0.8, distributed under the
22-
terms of the MIT-license. See COPYING for more details.
23-
Copyright (c) 2009-2011 Simen Svale Skogsrud
24-
Copyright (c) 2011-2012 Sungeun K. Jeon
25-
Copyright (c) 2011 Jens Geisler
26-
*/
2722

2823
#include "grbl.h"
2924

@@ -361,7 +356,8 @@ void mc_reset()
361356
// the steppers enabled by avoiding the go_idle call altogether, unless the motion state is
362357
// violated, by which, all bets are off.
363358
if ((sys.state & (STATE_CYCLE | STATE_HOMING)) || (sys.suspend == SUSPEND_ENABLE_HOLD)) {
364-
bit_true_atomic(sys.rt_exec_alarm, EXEC_ALARM_ABORT_CYCLE);
359+
if (sys.state == STATE_HOMING) { bit_true_atomic(sys.rt_exec_alarm, EXEC_ALARM_HOMING_FAIL); }
360+
else { bit_true_atomic(sys.rt_exec_alarm, EXEC_ALARM_ABORT_CYCLE); }
365361
st_go_idle(); // Force kill steppers. Position has likely been lost.
366362
}
367363
}

grbl/motion_control.h

+3-8
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
/*
22
motion_control.h - high level interface for issuing motion commands
3-
Part of Grbl v0.9
3+
Part of Grbl
44
5-
Copyright (c) 2012-2015 Sungeun K. Jeon
5+
Copyright (c) 2011-2015 Sungeun K. Jeon
6+
Copyright (c) 2009-2011 Simen Svale Skogsrud
67
78
Grbl is free software: you can redistribute it and/or modify
89
it under the terms of the GNU General Public License as published by
@@ -17,12 +18,6 @@
1718
You should have received a copy of the GNU General Public License
1819
along with Grbl. If not, see <http://www.gnu.org/licenses/>.
1920
*/
20-
/*
21-
This file is based on work from Grbl v0.8, distributed under the
22-
terms of the MIT-license. See COPYING for more details.
23-
Copyright (c) 2009-2011 Simen Svale Skogsrud
24-
Copyright (c) 2011-2012 Sungeun K. Jeon
25-
*/
2621

2722
#ifndef motion_control_h
2823
#define motion_control_h

0 commit comments

Comments
 (0)