Hi, I’ve made some Eagle files for a modified version of the [Ardumoto motor driver shield. The files are attached. This modified design is NOT TESTED, so USE AT YOUR OWN RISK!
The design is based on version 13 of the board. The original Eagle files are [here. The modified files are attached to this post. I’ve made the following modifications:
-
I’ve broken out the digital pins 2-13 onto separate headers, so that it would be easy to re-assign the input pins as needed. Just use some jumper wires or whatever other method.
-
The L298 inputs are routed to the default pins on those separate headers, so that you’ll only need a few small solder bridges to activate the default pin assignment. I’m not sure how easy it would be to make these solder bridges, maybe the pads need to be reshaped a bit. But it should be doable fairly easily, I think (like I said, not tested :lol: ).
-
I’ve broken out the current sense pins onto an extra header behind the L298. You can use jumpers (or solder bridges) to short them to ground if you don’t need them, or just leave them as is.
-
As suggested [here I’ve renamed the motor voltage supply to Vs, and added a jumper between Vs and Vin. This makes it easy to separate the Arduino Vin pin from the motor voltage supply, which could be higher than the recommended Vin range.
-
I’ve shorted the L298’s NC pins to the ground plane. This hopefully helps a bit with the heat dissipation…
-
I’ve marked the board as “v14-MK”.
I’ve also had a few more ideas that I haven’t implemented in the attached files:
-
Rotate the L298 chip by 180 degrees. This should make the sense pin connections easier to route, and maybe some of the other connections as well (or maybe not)… But this would flip the A and B sides, and maybe require some rearrangement of the NOT gates and small capacitors, so I’m not sure if it’s worth the trouble…
-
Maybe break out the analog pins similar to what I did with the digital ones. This will allow one to easily route the current sense signals back to the Arduino controller (with the appropriate resistors in place).
-
Add a reset button. There is a nice spot for it at the bottom of the board, between the SparkFun logo and the diodes. I’m not sure how comfortable it would be to use it there, but you could probably use a pencil or something if your finger is too large… Plus, how often would it actually be used?
-
Maybe add a couple of pull-down resistors on the PWM lines? This will keep the motors safely off unless instructed otherwise.
I’d love to hear your thoughts and feedback!](http://forum.sparkfun.com/viewtopic.php?p=111451#p111451)](http://www.sparkfun.com/datasheets/DevTools/Arduino/Ardumoto%20v13.zip)](http://www.sparkfun.com/commerce/product_info.php?products_id=9815)