diff --git a/Firmware/MotorControl/axis.cpp b/Firmware/MotorControl/axis.cpp index d3ecaac3..299fca54 100644 --- a/Firmware/MotorControl/axis.cpp +++ b/Firmware/MotorControl/axis.cpp @@ -81,6 +81,10 @@ void Axis::load_default_step_dir_pin_config( config->dir_gpio_pin = hw_config.dir_gpio_pin; } +void Axis::load_default_can_id(const int& id, Config_t& config){ + config.can_node_id = id; +} + void Axis::decode_step_dir_pins() { step_port_ = get_gpio_port_by_pin(config_.step_gpio_pin); step_pin_ = get_gpio_pin_by_pin(config_.step_gpio_pin); diff --git a/Firmware/MotorControl/axis.hpp b/Firmware/MotorControl/axis.hpp index 63e23c23..d567a26c 100644 --- a/Firmware/MotorControl/axis.hpp +++ b/Firmware/MotorControl/axis.hpp @@ -97,6 +97,7 @@ public: void decode_step_dir_pins(); static void load_default_step_dir_pin_config( const AxisHardwareConfig_t& hw_config, Config_t* config); + static void load_default_can_id(const int& id, Config_t& config); bool check_DRV_fault(); bool check_PSU_brownout(); diff --git a/Firmware/MotorControl/main.cpp b/Firmware/MotorControl/main.cpp index b7a7275c..1dc8c404 100644 --- a/Firmware/MotorControl/main.cpp +++ b/Firmware/MotorControl/main.cpp @@ -74,6 +74,7 @@ void load_configuration(void) { axis_configs[i] = Axis::Config_t(); // Default step/dir pins are different, so we need to explicitly load them Axis::load_default_step_dir_pin_config(hw_configs[i].axis_config, &axis_configs[i]); + Axis::load_default_can_id(i, axis_configs[i]); } } else { user_config_loaded_ = true;