Will RAMPS able to control 4 stepper motors

I am making a DIY 3D printer based on the prusa mini. So, I doubt is if RAMPS can only control 4 stepper motors as it has slots for 5 stepper motor slots and one will not be used in my case, if I can in what order should I connect the drivers and also ho will Marlin figure out which slot the extruder is connected? Sorry for the lack of knowledge if fit is really obvious :|

There is no problem with using 4 motors instead of 5. The 5th slot is provided to enable use of a second extruders, but many people only have a single extruder printer and leave the 5th slot unused.

how will Marlin figure out which slot the extruder is connected

Which stepper motor is in which slot is something you can configure in the firmware. There is no way for the firmware to "figure it out" without help.

It is quite involved to change it in the firmware, so it is best to follow the default placement. You can easily find wiring diagrams for RAMPS (showing the default assignment of motors to slots) on various resources such as the RepRap wiki.

• Thank you so much ❤️ Jan 9 '21 at 11:49

RAMPS capabilities

To be more speficic: RAMPS board (versions 1.3 - 1.6) offer possibility to connect 5 stepper motor drivers (on the board marked X, Y, Z, E0, E1) and 6 stepper motors, because the Z axis motor's connector is doubled (this is classic design of reprap printer). I could also see other RAMPS versions/clones (1.6+, 1.7 prototype) which have doubled connectors for X and Y axis motors - so allowing 8 motors in total.

Firmware configuration

Marlin firmware allows to setup in Configuration.h the motherboard with RAMPS configuration (extruder, fan, bed, etc.) and number of extruders. Look for lines:

#define MOTHERBOARD BOARD_RAMPS_14_EFB

#define EXTRUDERS 1


Firmware behavior

RAMPS wiring (as in diagram at Tom van der Zanden's response) is reflected in Marlin's file pins_RAMPS.h. When EXTRUDERS is set to 1, Marlin will use E0_..._PIN setings from this file to communicate with proper stepper driver board (and the driver will communicate with the motor).

Marlin will enable steppers only when required (for example it will not refer to E1 in the basic configuration). Even when they got idle, they will remain powered for some longer period, defined in Configuration_adv.h:

#define DEFAULT_STEPPER_DEACTIVE_TIME 120


Important remarks

Be careful installing drivers and cables. Double-check the driver board's orientation in slot of RAMPS. Solder cables properly, mount them tightly, fix to the frame, etc. Use ceramic or plastic screwdrivers for motor power regulation (I bought one which doesn't fit well, and sculpted my own from 2.85mm filament). It is important to remember to never unplug powered motors and drivers. (There is LCD menu option "Motion > Disable steppers", but I always power off the machine to do something. Also, I had non-intentional accidents of broken wires causing unreliable work of extruder, and fortunately the board survived.)

• Thanks you so much for the detailed response 🙂 Jan 9 '21 at 15:57