I have destroyed a pair of arduinos attempting to use the 18v15 simple motor controller, and I’m wondering if it’s a problem with the controller or if I’m just being dense.
One symptom I am observing is that Vin for the motors appears linked to Vin for the serial port on the opposite site of the board. This seems like an obvious problem, because when I connect the motor’s power supply I end up connecting 12 volts directly to the arduino’s 5 volts. I am also observing that the board seems to come on when i just connect the power for the motor – ie, the board logic runs off motor power.
Is this as intended? What else could I be doing wrong? The failure mode of the arduino’s is that as soon as I connect Vin for the motor, things go pop – the usb port smokes, or my computer reboots. Then, the motor controller appears fine (I can still drive the motor via USB control panel), but the arduino’s Tx/Rx pins are stuck permanently high and the arduino is no longer recognized via USB.
It sounds to me like you are doing something very wrong. I recommend you take the time to fully figure this out before you end up breaking another Arduino. Have you fully read the section of the SMC user’s guide called Connecting Your Motor Controller? Can you explain all of the wiring connections you are making (include USB cables that are plugged in)?
All pins on the SMC labeled VIN are electrically connected. There is no reason to connect VIN from the SMC to the Arduino’s VIN, unless you are trying to power your Arduino from your motor batteries.
Ok, so this problem is as designed, but it seems strange.
The smaller Vin pin on the TTL side of the board should act the same way as the USB power – ie, you can use it to power the logic but not to drive the motor. If the Vin pin on the board is going to remain connected to the Vin for the battery, I think that’s quite misleading to label it Vin – it should be Vout.
Your own documentation provides the following warning:
I would like to continue powering the motor controller even when the motor-driving battery is unplugged – is there a way to do this without connecting a USB cable?
It is a common practice that all pins accessing the same net should have the same label; labeling that pin anything but VIN could be more misleading. The behavior you are asking for on the small VIN pin is not unreasonable, but there are also other reasonable functions it can have, you can’t just assume it will be what you’re expecting.
You haven’t answered my question about what your connections are, but I can infer that you are basically doing what you said: shorting 12V to 5V, which will mean your motor battery will be dumping a bunch of current into the Arduino. Since Arduinos don’t have a diode preventing current from flowing into your computer, you will, in turn, be dumping a bunch of current into your computer’s USB port. This has a good chance of breaking the USB port on your computer and is probably why your computer rebooted.
Unfortunately, there isn’t a good way to power the SMC from the Arduino in a way that lets you connect and disconnect the motor battery. What you can do instead is power both the Arduino and the Simple Motor Controller from the same battery. Instead of connecting the Arduino’s 5V to the SMC’s VIN (something you should never do) connect the SMC’s VIN to the Arduino’s VIN. Or, connect the battery leads to the SMC and the Arduino directly. If you do this, you should be able to plug the Arduino into USB and it probably won’t break your computer, but you should be aware of this other issue with the Arduino letting current flow into computers when it is externally powered.
Alternatively, you could plug both devices into USB and have them talking to eachother without the motor battery.
Where do you envision he would use the optoisolator? His problems arose from not properly understanding what the small VIN pin was and, as a result, using it to short his battery voltage to his arduino’s regulated 5V bus.