Skip to content

Commit c3ebe5f

Browse files
authored
Keyestudio EX8874 updates
correct the steps for the stacked shields on the keyestudio
2 parents 0acf3c3 + 25bb22b commit c3ebe5f

3 files changed

Lines changed: 28 additions & 21 deletions

File tree

-149 KB
Binary file not shown.

docs/reference/esp32/esp32-keyestudio.md

Lines changed: 26 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ The IOREF voltage will not be correct for this board combination.
3636

3737
- Option A: The prefered work-around to the incorrect 5V pin is to modify the EX8874, using the `3V3 IOREF Override` solder pad on the EX8874.
3838

39-
- Option B: The `IOREF` pin location has the 5V pin. An acceptable workaround is for the pin on the EX8874 to be bent out, and the `IOREF` to be jumpered to `3V3` pin on the EX8874.
39+
- Option B: The `IOREF` pin location is labeled `5V`. An acceptable workaround that does not require soldering is for the corresponding pin on the EX8874 to be bent out, and the `IOREF` to be jumpered to `3V3` header on the EX8874.
4040

4141
See the [Incorrect IOREF voltage page](ioref-incorrect-voltage-fix_not_in_nav.md) for details on how to correct the IOREF voltage for this board combination.
4242

@@ -52,10 +52,12 @@ Note:
5252

5353
Add the following lines to your `config.h` and remove any existing `#define MOTOR_SHIELD_TYPE ...` line.
5454

55-
`#define EX8874_KEYES_ESP32 F("EX8874_KEYES_ESP32"),\` <br/>
56-
` new MotorDriver(25/* 3*/, 19/*12*/, UNUSED_PIN, 13/*9*/, 32/*A0*/, 1.52, 5000, 36 /*A4*/), \` <br/>
57-
` new MotorDriver(23/*11*/, 18/*13*/, UNUSED_PIN, 12/*8*/, 33/*A1*/, 1.52, 5000, 39 /*A5*/)` <br/>
58-
`#define MOTOR_SHIELD_TYPE EX8874_KEYES_ESP32`
55+
```cpp
56+
#define EX8874_KEYES_ESP32 F("EX8874_KEYES_ESP32"),\
57+
new MotorDriver(25/* 3*/, 19/*12*/, UNUSED_PIN, 13/*9*/, 32/*A0*/, 1.52, 5000, 36 /*A4*/), \
58+
new MotorDriver(23/*11*/, 18/*13*/, UNUSED_PIN, 12/*8*/, 33/*A1*/, 1.52, 5000, 39 /*A5*/)
59+
#define MOTOR_SHIELD_TYPE EX8874_KEYES_ESP32
60+
```
5961
6062
- When one EX8874 motor shield is used with Keyestudio IOT ESP32 PLUS Development Board, the default EX8874 pins are used.
6163
@@ -79,22 +81,26 @@ Add the following lines to your `config.h` and remove any existing `#define MOTO
7981
- **IOREF:** The IOREF override is also needed for the top shield. See the [Incorrect IOREF voltage page](ioref-incorrect-voltage-fix_not_in_nav.md) for details.
8082
- **VIN:** Refer to instructions on [cutting the VIN trace and disabling the regulator](/products/ex-motorshield8874/ex-motorshield8874.md/#steps-to-stack) for the top shield.
8183
82-
![ACEBOTT IOREF](/_static/images/esp32/keyestudio-ex-8874-stacked-pads.png){ width=12% align=right }
84+
- Stacking (2) motor shields on Keystudio ESP32 requires ***additional*** modification of the second/top shield:
8385
84-
- Stacking motor shields on Keystudio ESP32 requires:
86+
a. Cut the regulator to VIN pin on the top of the PCB
8587
86-
a. Use of solder pad for 8 alternate pins
87-
88-
b. \^ for Fault pins, the pins on the ESP32 board labeled `io2` and `io4` will need to be bent about 90 degrees so that jumpers can be put on them. `io2` will need to be jumpered to `A4` on the EX8874. `io4` will need to be jumpered to `A5` on the EX8874.
88+
b. Cut the “Regulator Enable” trace on the bottom of the board
8989
90-
First EX8874
90+
b. Use of solder pad for 8 alternate pins (not the fault pins)
91+
92+
c. \^ for Fault pins, the pins on the ESP32 board labeled `io2` and `io4` will need to be bent about 90 degrees so that jumpers can be put on them. `io2` will need to be jumpered to `A4` on the EX8874. `io4` will need to be jumpered to `A5` on the EX8874.
93+
94+
See the [Stacking two motor shields on the EX8874 page](../../products/ex-motorshield8874/ex-motorshield8874.md#steps-to-stack) for details on how to alter the board for this combination.
95+
96+
### First EX8874
9197
9298
|output|Current<br/>Sense|PWM<br/>Enable|DIR<br/>Signal|Brake|Fault|Notes|
9399
|:--:|:-----:|:-----:|:-----:|:-----:|:-----:|:-----:|
94100
|A|32 pA0|25 p3|19 p12|9 p9|36 pA4|Default pins|
95101
|B|33 pA1|23 p11|18 p13|8 p8|39 pA8||
96102
97-
Second EX8874
103+
### Second EX8874
98104
99105
|output|Current<br/>Sense|PWM<br/>Enable|DIR<br/>Signal|Brake|Fault|Notes|
100106
|:--:|:-----:|:-----:|:-----:|:-----:|:-----:|:-------------:|
@@ -103,13 +109,14 @@ Second EX8874
103109
104110
- A custom motor define will be needed in `config.h`
105111
106-
107-
`#define EX8874X2_KEYES_ESP32 F("EX8874X2_KEYES_ESP32"), \` <br/>
108-
` new MotorDriver(25/* 3*/, 19/*12*/, UNUSED_PIN, 13/*9*/, 32/*A0*/, 1.52, 5000, 36/*A4*/), \` <br/>
109-
` new MotorDriver(23/*11*/, 18/*13*/, UNUSED_PIN, 12/*8*/, 33/*A1*/, 1.52, 5000, 39/*A5*/), \` <br/>
110-
` new MotorDriver(26/* 2*/, 5/*10*/, UNUSED_PIN, 14/*7*/, 34/*A4*/, 1.52, 5000, 2 /*A4*/), \` <br/>
111-
` new MotorDriver(16/* 5*/, 17/* 4*/, UNUSED_PIN, 27/*6*/, 35/*A5*/, 1.52, 5000, 4 /*A5*/)` <br/>
112-
`#define MOTOR_SHIELD_TYPE EX8874X2_KEYES_ESP32` <br/>
112+
```cpp
113+
#define EX8874X2_KEYES_ESP32 F("EX8874X2_KEYES_ESP32"), \
114+
new MotorDriver(25/* 3*/, 19/*12*/, UNUSED_PIN, 13/*9*/, 32/*A0*/, 1.52, 5000, 36/*A4*/), \
115+
new MotorDriver(23/*11*/, 18/*13*/, UNUSED_PIN, 12/*8*/, 33/*A1*/, 1.52, 5000, 39/*A5*/), \
116+
new MotorDriver(26/* 2*/, 5/*10*/, UNUSED_PIN, 14/*7*/, 34/*A4*/, 1.52, 5000, 2 /*A4*/), \
117+
new MotorDriver(16/* 5*/, 17/* 4*/, UNUSED_PIN, 27/*6*/, 35/*A5*/, 1.52, 5000, 4 /*A5*/)`
118+
#define MOTOR_SHIELD_TYPE EX8874X2_KEYES_ESP32`
119+
```
113120

114121
### Stacked EX8874 Checklist
115122

docs/reference/esp32/ioref-incorrect-voltage-fix_not_in_nav.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,5 +50,5 @@ Double check that that you have it correct by checking wth a multimeter on the E
5050

5151
*This option does not require soldering.*
5252

53-
- Locate the IOREF pin. (and many clone board it will be labed `5V`) and bend the corresponding pin on the EX8874 is bent ou
54-
- Jumper to `3V3` pin to the `IOREF` pin on the EX8874.
53+
- Locate the IOREF pin. (On many clone boards it will be labeled `5V`) and bend the corresponding pin on the EX8874 out.
54+
- Add a Jjumper from the `3V3` pin to the `IOREF` pin on the EX8874.

0 commit comments

Comments
 (0)