<p>Another <a href="https://3dprinting.stackexchange.com/questions/3925/how-to-switch-motor-outputs-and-use-e1-as-x-in-marlin-firmware/5786#5786">posting</a> 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 <a href="http://marlinfw.org/" rel="nofollow noreferrer">Marlin firmware</a>, you should look at the <a href="https://github.com/MarlinFirmware/Marlin/blob/1.1.x/Marlin/pins_RAMPS.h" rel="nofollow noreferrer">pins_RAMPS.h</a> file.</p>

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

<pre><code>#define E0_STEP_PIN        26
#define E0_DIR_PIN         28
#define E0_ENABLE_PIN      24
#define E0_CS_PIN          42
</code></pre>

<p>is changed to:</p>

<pre><code>#define E0_STEP_PIN        36
#define E0_DIR_PIN         34
#define E0_ENABLE_PIN      30
#define E0_CS_PIN          44
</code></pre>

<p>and also change:</p>

<pre><code>#define E1_STEP_PIN        36
#define E1_DIR_PIN         34
#define E1_ENABLE_PIN      30
#define E1_CS_PIN          44
</code></pre>

<p>to:</p>

<pre><code>#define E1_STEP_PIN        26
#define E1_DIR_PIN         28
#define E1_ENABLE_PIN      24
#define E1_CS_PIN          42
</code></pre>

<p>When the file is changed an saved, <a href="http://marlinfw.org/docs/basics/install.html" rel="nofollow noreferrer">build and upload</a> code to your board and plug the connector of the E0 stepper into the E1 header.</p>

CC BY-SA 3.0
2018-04-20T05:35:53.823Z
I've done that already. But now i have a new problem. The new firmware doesn't want to install and arduino IDE throws an error http://joxi.ru/J2b6n9whXpYy02.png
Ilya Smirnoff
CC BY-SA 3.0
2018-04-20T06:15:45.640Z
That has nothing to do with the code changes: https://stackoverflow.com/questions/19645441/avrdude-stk500v2-receivemessage-timeout or https://arduino.stackexchange.com/questions/13060/avrdude-stk500v2-getsync-timeout-communicating-with-programmer-error
0scar
CC BY-SA 3.0
2018-04-19T19:00:54.473Z
2018-04-19T19:00:54.473Z
0scar
<p>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.</p>
<p>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.</p>
<p>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.</p>

CC BY-SA 4.0
2021-05-27T11:14:57.123Z
Hi, Marinus, and welcome to the stack.
Davo
CC BY-SA 4.0
2021-05-27T08:45:56.653Z
2021-05-27T08:45:56.653Z
Marinus
<p>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.</p>

<p>The harder is to edit pins file and do remapping.</p>

CC BY-SA 3.0
2018-04-19T15:30:00.647Z
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? http://joxi.ru/KAxnKV1FMNwkXm.png
Ilya Smirnoff
CC BY-SA 3.0
2018-04-19T15:32:09.177Z
did you set 2nd extruder in config.h? maybe it is time to get https://github.com/JimBrown/MarlinTarantula as I am using that on minte
profesor79
CC BY-SA 3.0
2018-04-20T05:28:25.630Z
i've downloaded the firmware that you've recommended and it doesn't want to load http://joxi.ru/J2b6n9whXpYy02.png
Ilya Smirnoff
CC BY-SA 3.0
2018-04-20T06:51:21.713Z
Are you sure you installed the CH340 drivers and use the correct COM port? Does it compile?
0scar
CC BY-SA 3.0
2018-04-20T08:25:56.287Z
@IlyaSmirnoff please see https://3dprinting.stackexchange.com/a/5849/9730 for flashing reference
profesor79
CC BY-SA 3.0
2018-04-20T16:25:43.877Z
@0scar what are the CH340 drivers?
Ilya Smirnoff
CC BY-SA 3.0
2018-04-20T16:26:25.973Z
it is a cheap usb to serial bridge that is in most arduino clones
profesor79
CC BY-SA 3.0
2018-04-22T17:06:53.573Z
@profesor79 none of the solutions worked :(
Ilya Smirnoff
CC BY-SA 3.0
2018-04-22T17:08:58.753Z
@profesor79 now i have problems with AVRDUDEhttp://joxi.ru/DrlvqNdIvN3p72.png
Ilya Smirnoff
CC BY-SA 3.0
2018-04-22T17:52:20.380Z
please check that https://3dprinting.stackexchange.com/a/5849/9730 @IlyaSmirnoff
profesor79
CC BY-SA 3.0
2018-04-23T14:29:43.593Z
@profesor79 I've already tried everything. well... It's not working
Ilya Smirnoff
CC BY-SA 3.0
2018-04-19T15:23:37.303Z
2018-04-19T16:12:43.517Z
2018-04-19T16:12:43.517Z
profesor79
<p>I have the same problem as <a href="https://www.thingiverse.com/groups/tevo-tarantula-owners/forums/general/topic:29448" rel="nofollow noreferrer">this person</a> but I don't have those lines in my <code>RAMPS.h</code> file.</p>
<p>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.</p>

CC BY-SA 3.0
2018-04-19T17:59:49.827Z
Your link is sort of broken, as is the link in your post on [thingiverse](https://www.thingiverse.com/groups/tevo-tarantula-owners/forums/general/topic:29448). 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](https://www.thingiverse.com/groups/tevo-tarantula-owners/forums/general/topic:27363)?
Greenonline
CC BY-SA 3.0
2018-04-19T18:05:20.947Z
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... :-)
Greenonline
CC BY-SA 3.0
2018-04-19T18:14:34.097Z
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 https://3dprinting.stackexchange.com/questions/3925/how-to-switch-motor-outputs-and-use-e1-as-x-in-marlin-firmware/5786#5786".
0scar
CC BY-SA 3.0
2018-04-20T14:02:08.070Z
It is MKS, but mks file refers to ramps file so i use pins_ramps.h
Ilya Smirnoff
CC BY-SA 3.0
2018-04-22T15:13:55.227Z
@0scar still can't get it to work properly :( I've made neccesary changes in code, but now there is some problem with AVRDUDE http://dl3.joxi.net/drive/2018/04/20/0015/0211/991443/43/a8bca32cbc.png
Ilya Smirnoff
CC BY-SA 3.0
2018-04-22T21:44:43.667Z
As said before, this has nothing to do with the code changes, it has something to do with your computer or Arduino setup. Look up some instructions on the web to upload firmware to your board, there are loads to find.
0scar
CC BY-SA 3.0
2018-04-23T14:30:42.053Z
@0scar so it might be that my arduino is now "bricked"? I have another Uno and it works just fine, but not this one
Ilya Smirnoff
CC BY-SA 3.0
2018-04-30T06:56:23.403Z
No, it's not working. The arduino that is working is arduino uno and it is not for printer
Ilya Smirnoff
<extruder><marlin><slic3r><tevo-tarantula>
How to change E0 to E1 on Marlin 1.1?
Ilya Smirnoff
# How to change E0 to E1 on Marlin 1.1?

(Asked by: username_0 on 2018-04-19)

I have the same problem as [this person](https://www.thingiverse.com/groups/tevo-tarantula-owners/forums/general/topic:29448) 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.

**Tags:** extruder, marlin, slic3r, tevo-tarantula

> **Comments:**
> **username_1**: Your link is sort of broken, as is the link in your post on [thingiverse](https://www.thingiverse.com/groups/tevo-tarantula-owners/forums/general/topic:29448). 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](https://www.thingiverse.com/groups/tevo-tarantula-owners/forums/general/topic:27363)?  
> **username_1**: 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... :-)  
> **username_2**: 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 https://3dprinting.stackexchange.com/questions/3925/how-to-switch-motor-outputs-and-use-e1-as-x-in-marlin-firmware/5786#5786".  
> **username_0**: It is MKS, but mks file refers to ramps file so i use pins_ramps.h  
> **username_0**: @username_2 still can't get it to work properly :( I've made neccesary changes in code, but now there is some problem with AVRDUDE http://dl3.joxi.net/drive/2018/04/20/0015/0211/991443/43/a8bca32cbc.png  
> **username_2**: As said before, this has nothing to do with the code changes, it has something to do with your computer or Arduino setup. Look up some instructions on the web to upload firmware to your board, there are loads to find.  
> **username_0**: @username_2 so it might be that my arduino is now "bricked"? I have another Uno and it works just fine, but not this one  
> **username_0**: No, it's not working. The arduino that is working is arduino uno and it is not for printer  

---

## 3 answers

### Answer by username_2 on 2018-04-19. Score: 3

Another [posting](https://3dprinting.stackexchange.com/questions/3925/how-to-switch-motor-outputs-and-use-e1-as-x-in-marlin-firmware/5786#5786) 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](http://marlinfw.org/), you should look at the [pins\_RAMPS.h](https://github.com/MarlinFirmware/Marlin/blob/1.1.x/Marlin/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

```

to:

```
#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](http://marlinfw.org/docs/basics/install.html) code to your board and plug the connector of the E0 stepper into the E1 header.

> **Comments:**
> **username_0**: I've done that already. But now i have a new problem. The new firmware doesn't want to install and arduino IDE throws an error http://joxi.ru/J2b6n9whXpYy02.png  
> **username_2**: That has nothing to do with the code changes: https://stackoverflow.com/questions/19645441/avrdude-stk500v2-receivemessage-timeout or https://arduino.stackexchange.com/questions/13060/avrdude-stk500v2-getsync-timeout-communicating-with-programmer-error  

---

### Answer by username_3 on 2021-05-27. Score: 1

I wanted to expand on the great comment by username_2 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.

> **Comments:**
> **username_4**: Hi, username_3, and welcome to the stack.  

---

### Answer by username_5 on 2018-04-19. Score: 0

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.

> **Comments:**
> **username_0**: 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? http://joxi.ru/KAxnKV1FMNwkXm.png  
> **username_5**: did you set 2nd extruder in config.h? maybe it is time to get https://github.com/JimBrown/MarlinTarantula as I am using that on minte  
> **username_0**: i've downloaded the firmware that you've recommended and it doesn't want to load http://joxi.ru/J2b6n9whXpYy02.png  
> **username_2**: Are you sure you installed the CH340 drivers and use the correct COM port? Does it compile?  
> **username_5**: @username_0 please see https://3dprinting.stackexchange.com/a/5849/9730 for flashing reference  
> **username_0**: @username_2 what are the CH340 drivers?  
> **username_5**: it is a cheap usb to serial bridge that is in most arduino clones  
> **username_0**: @username_5 none of the solutions worked :(  
> **username_0**: @username_5 now i have problems with AVRDUDEhttp://joxi.ru/DrlvqNdIvN3p72.png  
> **username_5**: please check that https://3dprinting.stackexchange.com/a/5849/9730 @username_0  
> **username_0**: @username_5 I've already tried everything. well... It's not working  

---

