Useful or not, from you.
Marlin [BUG] HOMING_FEEDRATE_XY was not declared in this scope

Bug Description

When compiling with platformio I get errors

In file included from Marlin\src\lcd\dwin\e3v2../../../inc/MarlinConfig.h:47:0, from Marlin\src\lcd\dwin\e3v2\rotary_encoder.h:32, from Marlin\src\lcd\dwin\e3v2\dwin.h:29, from Marlin\src\lcd\dwin\e3v2\dwin.cpp:31: Compiling .pio\build\STM32F103RET6_creality\src\src\libs\numtostr.cpp.o Marlin\src\lcd\dwin\e3v2\dwin.cpp: In function 'void HMI_Move_X()': Marlin\src\lcd\dwin\e3v2\dwin.cpp:1167:58: error: 'HOMING_FEEDRATE_XY' was not declared in this scope planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_XY), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ Marlin\src\lcd\dwin\e3v2\dwin.cpp:1167:58: note: suggested alternative: 'HOMING_FEEDRATE_MM_M' planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_XY), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ Marlin\src\lcd\dwin\e3v2\dwin.cpp: In function 'void HMI_Move_Y()': Marlin\src\lcd\dwin\e3v2\dwin.cpp:1190:58: error: 'HOMING_FEEDRATE_XY' was not declared in this scope planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_XY), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ Marlin\src\lcd\dwin\e3v2\dwin.cpp:1190:58: note: suggested alternative: 'HOMING_FEEDRATE_MM_M' planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_XY), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ Marlin\src\lcd\dwin\e3v2\dwin.cpp: In function 'void HMI_Move_Z()': Marlin\src\lcd\dwin\e3v2\dwin.cpp:1213:58: error: 'HOMING_FEEDRATE_Z' was not declared in this scope planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_Z), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ Marlin\src\lcd\dwin\e3v2\dwin.cpp:1213:58: note: suggested alternative: 'HOMING_FEEDRATE_MM_M' planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_Z), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ *** [.pio\build\STM32F103RET6_creality\src\src\lcd\dwin\e3v2\dwin.cpp.o] Error 1

Configuration Files

myConfigurations.zip

I'm using the configuration files from https://github.com/MarlinFirmware/Configurations/tree/bugfix-2.0.x/config/examples/Creality/Ender-3%20V2

Steps to Reproduce

  1. Cloned latest Marlin bugfix branch
  2. Opened Marlin folder in VSCode
  3. Using the PlatformIO plugin opened a project to the folder containing platformio.ini
  4. Modified the [platformio] section in platformio.ini to be

[platformio] src_dir = Marlin boards_dir = buildroot/share/PlatformIO/boards default_envs = STM32F103RET6_creality include_dir = Marlin

  1. Overwrote the config files in the Marlin subdirectory with the ones from https://github.com/MarlinFirmware/Configurations/tree/bugfix-2.0.x/config/examples/Creality/Ender-3%20V2
  2. Clicked the check icon on the bottom of VSCode to compile.

Expected behavior: Successful compilation message

Actual behavior:

In file included from Marlin\src\lcd\dwin\e3v2../../../inc/MarlinConfig.h:47:0, from Marlin\src\lcd\dwin\e3v2\rotary_encoder.h:32, from Marlin\src\lcd\dwin\e3v2\dwin.h:29, from Marlin\src\lcd\dwin\e3v2\dwin.cpp:31: Compiling .pio\build\STM32F103RET6_creality\src\src\libs\numtostr.cpp.o Marlin\src\lcd\dwin\e3v2\dwin.cpp: In function 'void HMI_Move_X()': Marlin\src\lcd\dwin\e3v2\dwin.cpp:1167:58: error: 'HOMING_FEEDRATE_XY' was not declared in this scope planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_XY), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ Marlin\src\lcd\dwin\e3v2\dwin.cpp:1167:58: note: suggested alternative: 'HOMING_FEEDRATE_MM_M' planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_XY), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ Marlin\src\lcd\dwin\e3v2\dwin.cpp: In function 'void HMI_Move_Y()': Marlin\src\lcd\dwin\e3v2\dwin.cpp:1190:58: error: 'HOMING_FEEDRATE_XY' was not declared in this scope planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_XY), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ Marlin\src\lcd\dwin\e3v2\dwin.cpp:1190:58: note: suggested alternative: 'HOMING_FEEDRATE_MM_M' planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_XY), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ Marlin\src\lcd\dwin\e3v2\dwin.cpp: In function 'void HMI_Move_Z()': Marlin\src\lcd\dwin\e3v2\dwin.cpp:1213:58: error: 'HOMING_FEEDRATE_Z' was not declared in this scope planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_Z), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ Marlin\src\lcd\dwin\e3v2\dwin.cpp:1213:58: note: suggested alternative: 'HOMING_FEEDRATE_MM_M' planner.buffer_line(current_position, MMM_TO_MMS(HOMING_FEEDRATE_Z), active_extruder); ^ Marlin\src\lcd\dwin\e3v2../../../inc/../core/types.h:76:43: note: in definition of macro 'MMM_TO_MMS' #define MMM_TO_MMS(MM_M) feedRate_t(float(MM_M) / 60.0f) ^~~~ *** [.pio\build\STM32F103RET6_creality\src\src\lcd\dwin\e3v2\dwin.cpp.o] Error 1 ============================================== [FAILED] Took 28.22 seconds ==============================================

Additional Information

I'm using Windows 10 to compile this on if it matters.

image

That's a useful answer
Without any help

This is a mismatch between Marlin and example versions.

Your Marlin source is not the latest bugfix-2.0.x source. The HOMING_FEEDRATE_XY and HOMING_FEEDRATE_Z constants no longer exist anywhere in the Marlin codebase.

This Issue Queue is for Marlin bug reports and development-related issues, and we prefer not to handle user-support questions here. (As noted on this page.) For best results getting help with configuration and troubleshooting, please use the following resources:

After seeking help from the community, if the consensus points to a bug in Marlin, then you should post a bug report.