Skip to content

[BUG] Enabling I_AXIS (as alternative to E_AXIS on MiniRambo board) fails compiling caused by missing I_MS3_PIN. #26889

@hm2dev

Description

@hm2dev

Did you test the latest bugfix-2.1.x code?

Yes, and the problem still exists.

Bug Description

When using Marlin on an MiniRambo Board, where the Extruder is used as another axis (here i-axis) by defining
#define I_STEP_PIN 34
#define I_DIR_PIN 43
#define I_ENABLE_PIN 26
and
#define I_MS1_PIN 65
#define I_MS2_PIN 66
(basically replacing the E0 pins with I pins)
compilation fails when trying to access I_MS3 pin, which is not defined.

Changing

#if HAS_I_MS_PINS

to
#if HAS_I_MS_PINS && PIN_EXISTS(I_MS3)
fixes this issue (at least for the i-axis).

Note, there is also a bunch of semicolons missing in the current stepper.cpp after "break" statements related to I, J, K, U, V and W axes in function Stepper::microstep_ms(...), e.g.

case I_AXIS: WRITE(I_MS3_PIN, ms3); break

Adding the above pre-processor condition and fixing the semicolons makes the configuration compile and results in a working i-axis.

Bug Timeline

Tried branch lts-2.1.1 first and then bugfix 2,1,x, Both are broken.

Expected behavior

Should compile.

Actual behavior

Compilation fails with undefined I_MS3_PIN.

Steps to Reproduce

see bug details

Version of Marlin Firmware

2.1.x

Printer model

Custom, based on MiniRambo Board

Electronics

MiniRambo

LCD/Controller

not relevant

Other add-ons

none

Bed Leveling

None

Your Slicer

None

Host Software

None

Don't forget to include

  • A ZIP file containing your Configuration.h and Configuration_adv.h.

Additional information & file uploads

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions