Higher current H-Bridge

The Drok is inexpensive, but it only does two motors and doesn’t seem to have enough pins for the encoders. I could be wrong though.
From what I can tell the stock board connections have six wires. Four for the encoder and two for the motor.

The Robot Driver Board looks nice, I probably wouldn’t use the encoder aspect of it though. Also it looks like the logic changes a little since each motor is controlled with 1 direction pin and 1 pwm were as the l298 has an enable, in1, and in2.

That’s true, though the firmware presently always sets IN2 = !IN1 to command direction. For the Robot Driver board one could use IN1 and ignore the IN2 signal. That would only become a problem if dynamic braking were implemented in the firmware, and the worm gear drive of the present setup makes that unnecessary.

The motor control signals look similar to the Robot Driver board - direction and PWM, so yes. However, their diagram indicates that it wants separate 5V and 12V supplies, that ”12V. Exceeding this voltage may permanently damage the device.”) and warns to connect the 5V supply before connecting the 12V supply. Choose this board if you’re OK with a much stronger possibility of needing to replace it when the magic smoke comes out :smile:.
The Maslow encoders want to receive 5V and ground and send back EncoderOutputA and EncoderOutputB, but those signals would go to the Mega, not needed on either of these motor boards. The DAGU does take an interesting approach to the quadrature decoding, though… they generate the X4 pulses and leave it up to the firmware to determine direction (and assume the firmware never misses a pulse :slight_smile:).

I AIN"T SCARED OF NO MAGIC SMOKE!!!
That’s one reason I’m confident with my soldering abilities. I’ve fixed many amps and a few MUCH larger motor controllers for Electric Vehicles. Which were technically class D Amps minus the RCA inputs.

So you think the Robot Driver Board?

I really would. The bridge chips have good built-in protection.

Thats good to know, I was basing my comment on the datasheet of the L298.

@iRoc999 No need for smoke, the 5V needed for the board is for logic I dont see you needing much current. So I would connect the 5v of the arduino to the DAGU and a cheap little relay for the 12v supply. This way the 5v will always be on before the 12v supply. The smoke will only come based on your soldering skills jk

1 Like

Brilliant!!! I’ve got some relays already that I use for switching on multiple amps laying around. Could I use something like a Precharge resistor to delay the switching on of the relay? Just to ensure the 5V has ample time to boot-up or whatever it does. IDK it’s life… I’m not judging…

measuring twice cutting once.
So the three of us all agree on This Robot Driver Board ? Robot Driver Board

And @blurfl You’re saying that I need to route EncoderOutputA and EncoderOutputB ( Which you wrote like that because the code calls them out exactly like that) past the driver board Straight to the MEGA. That neither board would use them anyway? Even though they a listed on the Robot Driver board :thinking:
I will also need to route the Motor Control and Pulse Width Modulation from the MEGA to the Board and it will handle all that through it’s + and - motor connections. (that are basically an alternating DC Square Wave giving the DC motor AC esque motor control?)
And we all know that the firmware never misses a pulse. So we’re good. Right?:crazy_face:

Its as I said earlier were you need to desolder the l298 and solder jumpers to connect to the DAGU. The encoders signals were never used on the shield and simply pass through to the mega pins. So you need to make sure they stay that way. The Robot Driver Board uses a different encoder scheme so ignore the encoder inputs. If you desolder the L298 and jump the pwm and control signals to the respective motors you should be good to go. The encoder signals should remain the same and go to the mega through the shield. As far as the precharge resistor, I personally would just leave it as is. The 5v coming from the arduino is coming through a regulator so I dont see it being noisy or needing a debouncing type of precaution. The relay is analog and that should be adequate time delay for everything to be cherry.

1 Like

If you use that bare PCB to hold the Maslow motor connectors and attach to the Mega, the encoder stuff will take care of itself. The bare PCB would only need the motor and Arduino connectors, and perhaps the LEDs but not the other diodes and caps. I would probably solder wires to the two motor pins of each of the motor connectors on the underside of the bare PCB, and route those wires to the motor drive pins of the Robot board. The IN1 and PWM signal for each motor will be easiest to solder on top of the bare PCB, where the Arduino connector solders to the board. I find tack soldering wires to surface mount pads gets pretty fussy with any but tiny wires :wink: . You can keep the Robot 5V and 12V separate from the Robot board but you should connect ground between the PCB and the Robot board.
This lashup would move the motor control functions off to the Robot board, but keep the motor and encoder connections running through the bare Maslow board so you could stick the official Maslow board in in place of this lashup should you want to.

1 Like

Ok so I’m ready to start the lashup process.

I’m thinking something like this.


No those jumper connections are not correct. It’s just to demonstrate how I’m going to make the connections between boards.

Edit: Ok I needed to hold the Mega and Shield assembly in hand and read the lashup directions to fully get where you were going with your directions for teh motor connections for Robot board on the underside. I feel these jumpers with the nice solid pin will aid in the underside motor connections too. Do you think the LEDs are critical, due to not having resitors for them. The resistors weren’t mentioned and they slipped my mind untill it was time to actually start assembly.

Anyone see any issues with this method?

Also my H-Bridge IC’s are much much smaller. They are made for much higher current so will be getting HOT. I can’t find heatsinks that small, but one 25mmX25mm heatsink would cover the three I am using. Should I use one on three or leave the heatsink off and just provide airflow over them?

I’d expect to see the motor power wires connected to the board with the motor drivers, not the Maslow. The encoder wires could plug to the motor connector as you show. The LEDs on the Maslow board don’t matter for the way you’re using it.
I think I remember those motor drivers are internally protected, they reduce operation or shut down if they overload, could cause odd operation. The heat sinks on the Maslow are 2-3 Times larger than the chip they protect, this link from the wiki looks similar.
Why don’t you do a wiring diagram showing a motor, your motor Driver board and the Maslow board? No need to show any parts, just the connectors which are used and the signals connecting between them.

Wasn’t illustrating the motor connections from the Robot board ( MultiMoto ) because they need to be soldered on the underside. Being as they weren’t done yet they wouldn’t even think about staying in place for photo.

Was actually working on a side by side diagram. That I could make connections to them, and then transfer the connections irl.

The image was more to say, "Do you think these jumpers that have a male pin on one end and a female pin on the other are adequate to maintain the connections and current. While demonstrating that they could be inserted into the headers leading to the Arduino with male side; and to MultiMoto with female side. Which means don’t have to worry about making the likely a serious hassle to solder to blank PCB IC pads. That is what you were getting at in your post previous to this last one?

Sure, the connectors you have for the Arduino pins look like they will work fine. Only connect the pins you actually use between the boards, though.

I’m a lil worried about the current melting the solder on the motor + and -
There’s 3X’s the amount of power flowing through those little pins than my iron. Which flows the solder with ease.

Guess I will just plan to patch those wires in directly from MultiMoto to motor cables if the solder joints fail.

Plan for the worst hope for the best.

The soldering iron is designed to make heat. :wink: The connector is more likely to generate heat than a clean solder joint, and then only if the connector’s pins are pretty dirty and corroded.

Hey now are you insinuating I got grungy pins :scream:

Ok here’s my side by side by side as completely labeled as possible

My issue is that the pin definitions for MultiMotor ( which is the smallest Blue board on the right ) are killing me. Should I be trying to match them up to the bare Maslow PCB or should I be making the connections that the MultiMoto would make on its own when it’s directly plugged into the Mega?

On the Maslow board using L298SO chips, each bridge is driven by means three inputs - IN1, IN2, ENA for one motor and IN3, IN4, ENB for the other.
The IN inputs set the bridge state on when the EN input is high; a low state of the EN input inhibits the bridge. A motor is driven by setting EN high, one IN low and the other IN high. Direction is chosen by which IN is high and speed is controlled by using PWM on that IN.

On the RobotShop board using ??? the signals for a motor are CS* (active low), DIR and PWM. Some programming will be needed to adapt to this different use of the three pins available for controlling each motor.
CS* is much like EN, though inverted.
DIR and PWM are handled together in the Maslow Firmware where the PWM signal is applied to one pin or other depending on direction - that is where the changes are needed.