l293d motor driver - quick motor direction switch

I am working on a four motor chassis project and use two l293d motor drivers IC's. I have used them before, without any problems and checks everything is hook up correctly.

The problem seems to be when I switch the motor driver from forward direction to reverse direction, I am getting a high current/voltage dip which is resetting the Arduino. I was wondering if any one else has experienced the same problem and how to fix it.

I need to review the circuit, may be switching the motor is causing a temporary short and this is resetting the complete board. So adding some didoes in-line with the motors would eliminate this condition.

Also how can I test the current/voltage during this motor switch condition, would a scope on the supply pins show the dip in voltage?

A motor works like a generator when you turn of the voltage. If you feed the motor with 12 volt, when turning of you get ?8 volts FROM the motor. Then you revers voltage and get 8+ 12 volts, that cause high current and a voltage dip. It's not good for the motor.

Wait a second or 2 before reversing.

Also separate power sources help Or a diod and a capacitor feeding the uC