diff --git a/COPYING b/COPYING index 8bc8392..cdf88d6 100644 --- a/COPYING +++ b/COPYING @@ -1,56 +1,31 @@ ------------------------------------------------------------------------------ -COPYRIGHT NOTICE FOR GRBL v0.9: +COPYRIGHT NOTICE FOR GRBL: ------------------------------------------------------------------------------ -GRBL v0.9 - Embedded CNC g-code interpreter and motion-controller -Copyright (c) 2012-2014 Sungeun K. Jeon +Grbl - Embedded CNC g-code interpreter and motion-controller -This program is free software: you can redistribute it and/or modify +Copyright (c) 2011-2015 Sungeun K. Jeon +Copyright (c) 2009-2011 Simen Svale Skogsrud +Copyright (c) 2011 Jens Geisler + +Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. -This program is distributed in the hope that it will be useful, +Grbl is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with this program. If not, see . - +along with Grbl. If not, see . ------------------------------------------------------------------------------ COPYRIGHT NOTICE(S) FOR WORK CONTAINED IN THIS SOFTWARE: ------------------------------------------------------------------------------ -The MIT License (MIT) - -GRBL(tm) v0.8 - Embedded CNC g-code interpreter and motion-controller -Copyright (c) 2009-2011 Simen Svale Skogsrud -Copyright (c) 2011-2013 Sungeun K. Jeon -Copyright (c) 2011 Jens Geisler - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - -------------- - Copyright (c) 2008, Atmel Corporation All rights reserved. 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 copy of the Program in return for a fee. END OF TERMS AND CONDITIONS - ------------------------------------------------------------------------------- diff --git a/grbl/config.h b/grbl/config.h index 946e25a..e51b27c 100644 --- a/grbl/config.h +++ b/grbl/config.h @@ -1,8 +1,9 @@ /* config.h - compile time configuration - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2013-2015 Sungeun K. Jeon + Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2013 Sungeun K. Jeon -*/ // This file contains compile-time configurations for Grbl's internal system. For the most part, // users will not need to directly modify these, but they are here for specific needs, i.e. diff --git a/grbl/coolant_control.c b/grbl/coolant_control.c index f94f51a..4429dd4 100644 --- a/grbl/coolant_control.c +++ b/grbl/coolant_control.c @@ -1,6 +1,6 @@ /* coolant_control.c - coolant control methods - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2012-2015 Sungeun K. Jeon diff --git a/grbl/coolant_control.h b/grbl/coolant_control.h index f093cee..7694a78 100644 --- a/grbl/coolant_control.h +++ b/grbl/coolant_control.h @@ -1,6 +1,6 @@ /* coolant_control.h - spindle control methods - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2012-2015 Sungeun K. Jeon diff --git a/grbl/cpu_map.h b/grbl/cpu_map.h index 6c9134c..6469616 100644 --- a/grbl/cpu_map.h +++ b/grbl/cpu_map.h @@ -1,6 +1,6 @@ /* cpu_map.h - CPU and pin mapping configuration file - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2012-2015 Sungeun K. Jeon diff --git a/grbl/defaults.h b/grbl/defaults.h index 06dc0f7..f21b31e 100644 --- a/grbl/defaults.h +++ b/grbl/defaults.h @@ -1,6 +1,6 @@ /* defaults.h - defaults settings configuration file - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2012-2015 Sungeun K. Jeon diff --git a/grbl/eeprom.h b/grbl/eeprom.h index 0743425..c9718a2 100644 --- a/grbl/eeprom.h +++ b/grbl/eeprom.h @@ -2,28 +2,20 @@ eeprom.h - EEPROM methods Part of Grbl - The MIT License (MIT) - - GRBL(tm) - Embedded CNC g-code interpreter and motion-controller Copyright (c) 2009-2011 Simen Svale Skogsrud - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: + Grbl is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. + Grbl is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. + You should have received a copy of the GNU General Public License + along with Grbl. If not, see . */ #ifndef eeprom_h diff --git a/grbl/gcode.c b/grbl/gcode.c index 4b215e0..b915e48 100644 --- a/grbl/gcode.c +++ b/grbl/gcode.c @@ -1,9 +1,10 @@ /* gcode.c - rs274/ngc parser. - Part of Grbl v0.9 + Part of Grbl + + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2012-2015 Sungeun K. Jeon - Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #include "grbl.h" diff --git a/grbl/gcode.h b/grbl/gcode.h index d1ee3d5..0b478d0 100644 --- a/grbl/gcode.h +++ b/grbl/gcode.h @@ -1,8 +1,9 @@ /* gcode.h - rs274/ngc parser. - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #ifndef gcode_h #define gcode_h diff --git a/grbl/grbl.h b/grbl/grbl.h index dc331bf..42e2fcf 100644 --- a/grbl/grbl.h +++ b/grbl/grbl.h @@ -1,6 +1,6 @@ /* grbl.h - main Grbl include file - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2015 Sungeun K. Jeon diff --git a/grbl/limits.c b/grbl/limits.c index 84374f3..57de228 100644 --- a/grbl/limits.c +++ b/grbl/limits.c @@ -1,9 +1,10 @@ /* limits.c - code pertaining to limit-switches and performing the homing cycle - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2012-2015 Sungeun K. Jeon - + Copyright (c) 2009-2011 Simen Svale Skogsrud + Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2012 Sungeun K. Jeon -*/ #include "grbl.h" @@ -202,8 +197,9 @@ void limits_go_home(uint8_t cycle_mask) st_prep_buffer(); // Check and prep segment buffer. NOTE: Should take no longer than 200us. // Check only for user reset. No time to run protocol_execute_realtime() in this loop. - if (sys.rt_exec_state & (EXEC_SAFETY_DOOR | EXEC_RESET)) { // Abort homing and alarm upon safety door. - if (sys.rt_exec_state & EXEC_SAFETY_DOOR) { mc_reset(); } + // Exit routines: User abort homing and alarm upon safety door or no limit switch found. + if (sys.rt_exec_state & (EXEC_SAFETY_DOOR | EXEC_RESET | EXEC_CYCLE_STOP)) { + if (sys.rt_exec_state & (EXEC_SAFETY_DOOR | EXEC_CYCLE_STOP)) { mc_reset(); } protocol_execute_realtime(); return; } diff --git a/grbl/limits.h b/grbl/limits.h index 4c96a5d..0a5084a 100644 --- a/grbl/limits.h +++ b/grbl/limits.h @@ -1,9 +1,10 @@ /* limits.h - code pertaining to limit-switches and performing the homing cycle - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2012-2015 Sungeun K. Jeon - + Copyright (c) 2009-2011 Simen Svale Skogsrud + Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or @@ -17,11 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud -*/ #ifndef limits_h #define limits_h diff --git a/grbl/main.c b/grbl/main.c index 080d224..ef63659 100644 --- a/grbl/main.c +++ b/grbl/main.c @@ -1,9 +1,10 @@ /* main.c - An embedded CNC Controller with rs274/ngc (g-code) support - Part of Grbl v0.9 + Part of Grbl + + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2012-2015 Sungeun K. Jeon - Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #include "grbl.h" diff --git a/grbl/motion_control.c b/grbl/motion_control.c index 2a34af6..bfd42d7 100644 --- a/grbl/motion_control.c +++ b/grbl/motion_control.c @@ -1,8 +1,10 @@ /* motion_control.c - high level interface for issuing motion commands - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud + Copyright (c) 2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,13 +19,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon - Copyright (c) 2011 Jens Geisler -*/ #include "grbl.h" @@ -361,7 +356,8 @@ void mc_reset() // the steppers enabled by avoiding the go_idle call altogether, unless the motion state is // violated, by which, all bets are off. if ((sys.state & (STATE_CYCLE | STATE_HOMING)) || (sys.suspend == SUSPEND_ENABLE_HOLD)) { - bit_true_atomic(sys.rt_exec_alarm, EXEC_ALARM_ABORT_CYCLE); + if (sys.state == STATE_HOMING) { bit_true_atomic(sys.rt_exec_alarm, EXEC_ALARM_HOMING_FAIL); } + else { bit_true_atomic(sys.rt_exec_alarm, EXEC_ALARM_ABORT_CYCLE); } st_go_idle(); // Force kill steppers. Position has likely been lost. } } diff --git a/grbl/motion_control.h b/grbl/motion_control.h index 1cd1b2e..584d231 100644 --- a/grbl/motion_control.h +++ b/grbl/motion_control.h @@ -1,8 +1,9 @@ /* motion_control.h - high level interface for issuing motion commands - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #ifndef motion_control_h #define motion_control_h diff --git a/grbl/nuts_bolts.c b/grbl/nuts_bolts.c index 7da9d7e..b33e230 100644 --- a/grbl/nuts_bolts.c +++ b/grbl/nuts_bolts.c @@ -1,8 +1,9 @@ /* nuts_bolts.c - Shared functions - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #include "grbl.h" diff --git a/grbl/nuts_bolts.h b/grbl/nuts_bolts.h index 5f11eb2..882d337 100644 --- a/grbl/nuts_bolts.h +++ b/grbl/nuts_bolts.h @@ -1,8 +1,9 @@ /* nuts_bolts.h - Header file for shared definitions, variables, and functions - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #ifndef nuts_bolts_h #define nuts_bolts_h diff --git a/grbl/planner.c b/grbl/planner.c index 0946ce1..dcf50ec 100644 --- a/grbl/planner.c +++ b/grbl/planner.c @@ -1,8 +1,10 @@ /* planner.c - buffers movement commands and manages the acceleration profile plan - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud + Copyright (c) 2011 Jens Geisler Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,13 +19,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon - Copyright (c) 2011 Jens Geisler -*/ #include "grbl.h" diff --git a/grbl/planner.h b/grbl/planner.h index 8209c02..02258dd 100644 --- a/grbl/planner.h +++ b/grbl/planner.h @@ -1,8 +1,9 @@ /* planner.h - buffers movement commands and manages the acceleration profile plan - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #ifndef planner_h #define planner_h diff --git a/grbl/print.c b/grbl/print.c index 35d1c1c..1dd8d7b 100644 --- a/grbl/print.c +++ b/grbl/print.c @@ -1,8 +1,9 @@ /* print.c - Functions for formatting output strings - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #include "grbl.h" diff --git a/grbl/print.h b/grbl/print.h index 7b2040f..658e892 100644 --- a/grbl/print.h +++ b/grbl/print.h @@ -1,8 +1,9 @@ /* print.h - Functions for formatting output strings - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #ifndef print_h #define print_h diff --git a/grbl/probe.c b/grbl/probe.c index 133d73b..3bba4df 100644 --- a/grbl/probe.c +++ b/grbl/probe.c @@ -1,6 +1,6 @@ /* probe.c - code pertaining to probing methods - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2014-2015 Sungeun K. Jeon diff --git a/grbl/probe.h b/grbl/probe.h index 1e8674d..81bd486 100644 --- a/grbl/probe.h +++ b/grbl/probe.h @@ -1,6 +1,6 @@ /* probe.h - code pertaining to probing methods - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2014-2015 Sungeun K. Jeon diff --git a/grbl/protocol.c b/grbl/protocol.c index e6abd4f..2b81f00 100644 --- a/grbl/protocol.c +++ b/grbl/protocol.c @@ -1,8 +1,9 @@ /* protocol.c - controls Grbl execution protocol and procedures - Part of Grbl v0.9 - - Copyright (c) 2012-2015 Sungeun K. Jeon + Part of Grbl + + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #include "grbl.h" @@ -198,6 +193,8 @@ void protocol_execute_realtime() report_alarm_message(ALARM_ABORT_CYCLE); } else if (rt_exec & EXEC_ALARM_PROBE_FAIL) { report_alarm_message(ALARM_PROBE_FAIL); + } else if (rt_exec & EXEC_ALARM_HOMING_FAIL) { + report_alarm_message(ALARM_HOMING_FAIL); } // Halt everything upon a critical event flag. Currently hard and soft limits flag this. if (rt_exec & EXEC_CRITICAL_EVENT) { diff --git a/grbl/protocol.h b/grbl/protocol.h index 6095bd7..3fc3780 100644 --- a/grbl/protocol.h +++ b/grbl/protocol.h @@ -1,8 +1,9 @@ /* protocol.h - controls Grbl execution protocol and procedures - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #ifndef protocol_h #define protocol_h diff --git a/grbl/report.c b/grbl/report.c index 6e86ca6..1a84a0c 100644 --- a/grbl/report.c +++ b/grbl/report.c @@ -1,6 +1,6 @@ /* report.c - reporting and messaging methods - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2012-2015 Sungeun K. Jeon @@ -98,6 +98,8 @@ void report_alarm_message(int8_t alarm_code) printPgmString(PSTR("Abort during cycle")); break; case ALARM_PROBE_FAIL: printPgmString(PSTR("Probe fail")); break; + case ALARM_HOMING_FAIL: + printPgmString(PSTR("Homing fail")); break; } printPgmString(PSTR("\r\n")); delay_ms(500); // Force delay to ensure message clears serial write buffer. diff --git a/grbl/report.h b/grbl/report.h index 60ab960..cfd0d8b 100644 --- a/grbl/report.h +++ b/grbl/report.h @@ -1,6 +1,6 @@ /* report.h - reporting and messaging methods - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2012-2015 Sungeun K. Jeon @@ -59,6 +59,7 @@ #define ALARM_SOFT_LIMIT_ERROR -2 #define ALARM_ABORT_CYCLE -3 #define ALARM_PROBE_FAIL -4 +#define ALARM_HOMING_FAIL -5 // Define Grbl feedback message codes. #define MESSAGE_CRITICAL_EVENT 1 diff --git a/grbl/serial.c b/grbl/serial.c index a327def..edfbecf 100644 --- a/grbl/serial.c +++ b/grbl/serial.c @@ -1,8 +1,9 @@ /* serial.c - Low level functions for sending and recieving bytes via the serial port - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #include "grbl.h" diff --git a/grbl/serial.h b/grbl/serial.h index 9c28afd..b48fd35 100644 --- a/grbl/serial.h +++ b/grbl/serial.h @@ -1,8 +1,9 @@ /* serial.c - Low level functions for sending and recieving bytes via the serial port - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #ifndef serial_h #define serial_h diff --git a/grbl/settings.c b/grbl/settings.c index cd1e63b..956cb02 100644 --- a/grbl/settings.c +++ b/grbl/settings.c @@ -1,8 +1,9 @@ /* settings.c - eeprom configuration handling - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #include "grbl.h" diff --git a/grbl/settings.h b/grbl/settings.h index 01acd69..5090824 100644 --- a/grbl/settings.h +++ b/grbl/settings.h @@ -1,8 +1,9 @@ /* settings.h - eeprom configuration handling - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #ifndef settings_h #define settings_h diff --git a/grbl/spindle_control.c b/grbl/spindle_control.c index abad6c2..f0724b4 100644 --- a/grbl/spindle_control.c +++ b/grbl/spindle_control.c @@ -1,8 +1,9 @@ /* spindle_control.c - spindle control methods - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2012 Sungeun K. Jeon -*/ #include "grbl.h" diff --git a/grbl/spindle_control.h b/grbl/spindle_control.h index 0c728da..1aec91c 100644 --- a/grbl/spindle_control.h +++ b/grbl/spindle_control.h @@ -1,8 +1,9 @@ /* spindle_control.h - spindle control methods - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -16,12 +17,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . -*/ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2012 Sungeun K. Jeon */ #ifndef spindle_control_h diff --git a/grbl/stepper.c b/grbl/stepper.c index fafb104..155b805 100644 --- a/grbl/stepper.c +++ b/grbl/stepper.c @@ -1,8 +1,9 @@ /* stepper.c - stepper motor driver: executes motion plans using stepper motors - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011-2012 Sungeun K. Jeon -*/ #include "grbl.h" diff --git a/grbl/stepper.h b/grbl/stepper.h index fe4d853..0745704 100644 --- a/grbl/stepper.h +++ b/grbl/stepper.h @@ -1,8 +1,9 @@ /* stepper.h - stepper motor driver: executes motion plans of planner.c using the stepper motors - Part of Grbl v0.9 + Part of Grbl - Copyright (c) 2012-2015 Sungeun K. Jeon + Copyright (c) 2011-2015 Sungeun K. Jeon + Copyright (c) 2009-2011 Simen Svale Skogsrud Grbl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,12 +18,6 @@ You should have received a copy of the GNU General Public License along with Grbl. If not, see . */ -/* - This file is based on work from Grbl v0.8, distributed under the - terms of the MIT-license. See COPYING for more details. - Copyright (c) 2009-2011 Simen Svale Skogsrud - Copyright (c) 2011 Sungeun K. Jeon -*/ #ifndef stepper_h #define stepper_h diff --git a/grbl/system.c b/grbl/system.c index 7a09162..2f3d100 100644 --- a/grbl/system.c +++ b/grbl/system.c @@ -1,6 +1,6 @@ /* system.c - Handles system level commands and real-time processes - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2014-2015 Sungeun K. Jeon diff --git a/grbl/system.h b/grbl/system.h index d6e190e..a74f029 100644 --- a/grbl/system.h +++ b/grbl/system.h @@ -1,6 +1,6 @@ /* system.h - Header for system level commands and real-time processes - Part of Grbl v0.9 + Part of Grbl Copyright (c) 2014-2015 Sungeun K. Jeon @@ -45,6 +45,7 @@ #define EXEC_ALARM_SOFT_LIMIT bit(2) // bitmask 00000100 #define EXEC_ALARM_ABORT_CYCLE bit(3) // bitmask 00001000 #define EXEC_ALARM_PROBE_FAIL bit(4) // bitmask 00010000 +#define EXEC_ALARM_HOMING_FAIL bit(5) // bitmask 00100000 // Define system state bit map. The state variable primarily tracks the individual functions // of Grbl to manage each without overlapping. It is also used as a messaging flag for