Motoron M2S SLA battery only (no USB power) doesn’t work


I am having some trouble with the Motoron M2S24v16 that I bought for my Arduino. I have a 12V SLA battery connected as the VIN and GND, and the two motor inputs are a linear actuator and an electromagnet (links below).

When connected with USB power on the Arduino (but with the optional power pin disconnected), it works fine, but when disconnecting the USB power (but with the power pin AVIN and VIN connected), there is an error LED that turns on, it doesn’t run as intended.

In the user guide, it says: “To avoid shorting two power outputs together, do not connect anything to the Arduino’s DC power jack while supplying power to AVIN through the Motoron.” Would it be safe to supply power to AVIN and connect the USB to the computer? I’m just worried it might break things if I do.

Any ideas on what might be wrong, or how I can diagnose the problem?

Lok Sang


Yes, it usually okay to connect power to your Arduino’s VIN pin (labeled AVIN on the Motoron shield) while USB is also connected. One issue to be aware of is many Arduinos in some situations could send power into the USB port if the supply voltage falls bellow around 7.4V. There is more discussion about that in this thread, but I do not think that is a concern in your setup since your battery is 12V. However, please keep in mind that powering your Arduino with a 12V SLA battery could be risky depending on what specific model you have. For example, the recommended maximum operating voltage for the Arduino Uno Rev3 is 12V (to avoid overheating), and the voltage of a fully charged 12V SLA battery will probably be higher than that. So, in that case, it might be better to add a an appropriate voltage regulator to your setup as mentioned under the “Powering the Arduino” header in the “Motoron M2S pinout” section of the Motoron user’s guide.

What Arduino are you using, and can you also post some pictures of your setup, including ones that show the top and bottom side of the Motoron so we can check all of the soldered connections?

Does the Motoron’s red error LED still turn on if you power the Arduino from the Motoron and have the USB cable connected? If so, please try the Careful.ino” example sketch from our Motoron Arduino library with minimal modification (you will need to comment out code that would drive a third channel on the M3S256) and let me know what errors are reported by the Serial Monitor.

- Patrick

1 Like


Thanks for your reply. I can provide the photos when i get home, I’m using an Arduino UNO R3. No, when I connect to USB when AVIN is connected to VIN, the error disappears. Someone in another forum suggested that I connected the battery negative to a common ground pin, is that something I have to do in addition to connecting the battery negative to the terminal connector on the M2S?

And thank you, I will consider getting a voltage regulator.

Lok Sang

Hello Patrick,

Here are the photos.

I measured the 5V pin and found it to be 1.7V, while the 3.3V pin is only 0.1V. Does this mean the built-in regulator is broken, and does this mean I need a voltage regulator?

Lok Sang

When you use the Motoron boards as shields they will connect their ground, the Arduino ground, and the power supply ground together, so you do not need to make an additional connection for that.

At least one of your solder joints (circled in the picture bellow) looks problematic.

The picture is blurry, so it is hard to tell for sure if the others are all okay. I recommend reworking the joint I mentioned and any other questionable ones.

It is also not clear from your pictures exactly how you are configuring your Motoron to power the Arduino. If you are not using a separate regulator, then there should be a shorting block, a jumper wire, or something else connecting VM to AVIN. If you have not already, can you try your Motoron again with that connection made? If it continues not working, please post a picture showing how you are connecting those pins.

The Motoron does not have a built-in voltage regulator. Can you clarify whether you are measuring the 5V and 3V3 pins on your Arduino or the Motoron? Some pictures showing exactly what you are measuring with a description of how things are connected and powered at that point would be helpful.

- Patrick


I have tried to fix the soldering issue, and here is my result:

As for the measure points of voltages, here is a diagram showing where I placed the multimeter tips, including 3.3V, 5V and GND. The voltages came out to be slightly higher this time, but still well below the nominal 3.3V and 5V. (~0.25V and ~2.4V)

The image below shows how I connected the VIN to the AVIN, also indicating the red error LED that pops up as a result:

Thank you.

Lok Sang

Can you try disconnecting everything from your Arduino (including the shield) and connect your power supply directly to the Arduino’s VIN and GND pins? What are the voltages on the 5V and 3.3V pins when you do that?

- Patrick

The Arduino’s VIN and GND only accept DuPont cables and my power supply cables are not of that type. I’ll figure a way of doing that though.

Measured 3.28V and 4.99V for the 3.3V and 5V respectively.

At this point it seems like there is either a short or a connection issue.

Can you try checking for shorts or low resistance on some of the Motoron’s power pins? Please do this while the Motoron is unpowered and disconnected from your Arduino. You should generally measure at least 1 MΩ or so between each of VIN, VM, AVIN, and IOREF and GND, though for VM in particular there is a lot of capacitance, so your meter will probably initially read something a lot lower (in the kΩ range), but the reading will start rising. 5V and 3V3 are not physically connected to anything on the Motoron so for those you should just read an open circuit.

When you attempt to power the Arduino through the Motoron, what voltage do your read if you try probing the Arduino’s VIN pin and its neighboring GND pin from the bottom side of the Arduino?

- Patrick

Here are my results (measuring resistance):
VM and GND: rises from 20kΩ as mentioned
IOREF and GND: open
3.3V and GND: open
5V and GND: open
AVIN and GND: open
VIN and GND: open

I think I’m measuring correctly?

The voltage of VIN and GND of the Arduino reads 12.63V.

I do not think this is causing the issue, but I suggest checking if the M2 terminal block pins are touching the DIP ATmega328 IC on your Arduino. If they are, please cut them shorter so that they do not touch.

Just to make sure I understand everything correctly, it sounds like you can power your Arduino directly through its VIN pin (without the Motoron), it will read 12V, and the voltages on the 5V pin and 3.3V pins are normal. But, if you power the Arduino through the Motoron, the Arduino VIN pin still reads 12V, but the voltages on the 5V pin and 3.3V pins are bad. Is that correct, and has it always behaved this way (to the best of your knowledge)? Does that behavior stay the same if nothing else is connected in your system (including disconnecting the motors from the Motoron output pins)?

Something here is not adding up, so you might try checking all the other pins on your board for shorts to ground too.

- Patrick

It’s working now, but I still don’t quite understand what’s going on. Here are the changes that were made:

  • I moved a connection from digital GND to the GND pin next to the 3.3V pin
  • the GND wire for my DPDT switch broke, though it still seems to work when I manually connected it together. I don’t think I even need the GND connection for the switch to work.
  • I made sure there was no shorting on the DPDT switch (too much solder on the connectors and the connectors were very close together)

Well, thanks for all your help, I guess it’s working :slight_smile:

Lok Sang

I am glad to hear it is working now! Thanks for letting us know.

- Patrick