I have the same problem as this person but I don't have those lines in my RAMPS.h file.

I've recently burnt my potentiometer on E0 so the motor isn't working properly anymore. I want to use it on E1 instead. If you have any better idea how to fix this instead of changing code in firmware, feel free to share.

  • $\begingroup$ Your link is sort of broken, as is the link in your post on thingiverse. Instead of pointing to a particular post, your are pointing to a general forum, and it is hard to see to which post your are actually referring. Please edit your post(s) and fix the URL, as your question will probably be of more help someone else, with the correct link to the other person's issue. Do you mean to refer to this post: Switch E0 to E1? $\endgroup$
    – Greenonline
    Apr 19, 2018 at 17:59
  • $\begingroup$ In addition, if you refer to an external website, please quote the relevant details of the issue [external post] here, as the external link could die (as most links tend to do), and then some/most of the information, that pertains to your question, will be lost. Thanks and welcome to SE 3D Printing... :-) $\endgroup$
    – Greenonline
    Apr 19, 2018 at 18:05
  • $\begingroup$ It is pretty easy ;) to adjust the pins in the firmware, I already described that for somebody that wanted to use the E1 as X, please look at my answer of 3dprinting.stackexchange.com/questions/3925/…". $\endgroup$
    – 0scar
    Apr 19, 2018 at 18:14
  • $\begingroup$ It is MKS, but mks file refers to ramps file so i use pins_ramps.h $\endgroup$ Apr 20, 2018 at 14:02
  • $\begingroup$ @0scar still can't get it to work properly :( I've made neccesary changes in code, but now there is some problem with AVRDUDE dl3.joxi.net/drive/2018/04/20/0015/0211/991443/43/… $\endgroup$ Apr 22, 2018 at 15:13

3 Answers 3


Another posting already discusses how you can change the pins to use spare stepper controllers for broken controllers by changing the pin layout. Assuming you are using a RAMPS board and using Marlin firmware, you should look at the pins_RAMPS.h file.

This file requires changes to address E1 to E0 and vice versa, please edit the file so that:

#define E0_STEP_PIN        26
#define E0_DIR_PIN         28
#define E0_ENABLE_PIN      24
#define E0_CS_PIN          42

is changed to:

#define E0_STEP_PIN        36
#define E0_DIR_PIN         34
#define E0_ENABLE_PIN      30
#define E0_CS_PIN          44

and also change:

#define E1_STEP_PIN        36
#define E1_DIR_PIN         34
#define E1_ENABLE_PIN      30
#define E1_CS_PIN          44


#define E1_STEP_PIN        26
#define E1_DIR_PIN         28
#define E1_ENABLE_PIN      24
#define E1_CS_PIN          42

When the file is changed an saved, build and upload code to your board and plug the connector of the E0 stepper into the E1 header.


I wanted to expand on the great comment by 0scar and explain what's the fastest way to change pins. I know this is an older topic, but for the sake of people looking for an answer, I figured I add this.

First of all it's easiest to change the pins in the pins file for your specific board by simply renaming E0 to E1 and vice versa. This is much simpler than copying and pasting the pin numbers per pin. Only do this when swapping entire driver pin lists as this gets quite confusing when switching around only certain pin numbers.

Second, and this is a big one: don't forget that when you use drivers that are capable of sensorless homing, and when you use that technique, you also have to change the _DIAG_PIN settings or else the sensorless homing won't work correctly.

  • $\begingroup$ Hi, Marinus, and welcome to the stack. $\endgroup$
    – Davo
    May 27, 2021 at 11:14

the fastest way is to slice using two extruders and assign all print work to E1. Set the head offsets to [0,0] and that shall do the job.

The harder is to edit pins file and do remapping.

  • $\begingroup$ I've already tried doing that in Slic3r and that didn't help :( And also it, probably, won't work if I am to move it from menu screen, right? joxi.ru/KAxnKV1FMNwkXm.png $\endgroup$ Apr 19, 2018 at 15:30
  • $\begingroup$ did you set 2nd extruder in config.h? maybe it is time to get github.com/JimBrown/MarlinTarantula as I am using that on minte $\endgroup$
    – profesor79
    Apr 19, 2018 at 15:32
  • $\begingroup$ i've downloaded the firmware that you've recommended and it doesn't want to load joxi.ru/J2b6n9whXpYy02.png $\endgroup$ Apr 20, 2018 at 5:28
  • $\begingroup$ Are you sure you installed the CH340 drivers and use the correct COM port? Does it compile? $\endgroup$
    – 0scar
    Apr 20, 2018 at 6:51
  • $\begingroup$ @IlyaSmirnoff please see 3dprinting.stackexchange.com/a/5849/9730 for flashing reference $\endgroup$
    – profesor79
    Apr 20, 2018 at 8:25

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .