2 This file is part of Smoothie (http://smoothieware.org/). The motion control part is heavily based on Grbl (https://github.com/simen/grbl).
3 Smoothie 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.
4 Smoothie 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.
5 You should have received a copy of the GNU General Public License along with Smoothie. If not, see <http://www.gnu.org/licenses/>.
12 #ifndef MAX_ROBOT_ACTUATORS
14 #define MAX_ROBOT_ACTUATORS 3
16 // includes 2 extruders
17 #define MAX_ROBOT_ACTUATORS 5
21 #if MAX_ROBOT_ACTUATORS < 3 || MAX_ROBOT_ACTUATORS > 6
22 #error "MAX_ROBOT_ACTUATORS must be >= 3 and <= 6"
25 #ifndef N_PRIMARY_AXIS
26 // This may chnage and include ABC
27 #define N_PRIMARY_AXIS 3
30 #if N_PRIMARY_AXIS < 3 || N_PRIMARY_AXIS > MAX_ROBOT_ACTUATORS
31 #error "N_PRIMARY_AXIS must be >= 3 and <= MAX_ROBOT_ACTUATORS"
34 // Keep MAX_ROBOT_ACTUATORS as small as practical it impacts block size and therefore free memory.
35 const size_t k_max_actuators
= MAX_ROBOT_ACTUATORS
;
36 typedef struct std::array
<float, k_max_actuators
> ActuatorCoordinates
;