Im looking for the best way to implement an emergency stop on my board that uses the Dual G2 High-Power Motor Driver 24v18. I can’t kill 24V to the VIN, but I can kill power to my MCU which will leave the GPIO pins floating. For some reason the SLP pins default high via a 100k pullup resistor so the motors are active by default (according to another post). The schematic for this board isnt published.
Options I see are:
- Pull the SLP pins low with a 10k-47k pulldown resistor to override the internal pullup, then drive high as needed with GPIO from MCU. Would be best to also have a diode to prevent backfeeding into the GPIO pins.
- Pull down the PWM pins (are they pulled down already?)
- Something else
Hello.
Please note that we have multiple products with “Dual G2 High-Power Motor Driver 24v18” in the name: an Arduino shield version and a Raspberry Pi expansion board version.
So, it isn’t entirely clear which one you’re referring to, but since the Raspberry Pi version pulls the sleep pins low by default, it sounds like you’re referring to the Arduino shield version.
If that is the case, and removing power from the driver is not an option, putting the driver to sleep is probably the next best solution. You can do so by overriding the pull-ups on the sleep pins like you mentioned. Alternatively, you could remove the onboard pull-ups altogether and add your own pull-down resistors to make it default to the sleep state. If you want to do this, please let me know and I can point out which resistors are the pull-ups.
Brandon
Im using the Arduino.
Yes, removing the pull-ups would also work. Im pretty sure I know which ones, but better you point them out.
Here is a diagram for the resistor locations; R5 is the pull-up for nM1SLP and R6 is the pull-up for nM2SLP:
Brandon