BTN7970 module help

I have the following module which i plan to use to control some peltier elements:

http://www.ebay.co.uk/itm/BTS7970B-BTN7970B-power-motor-driver-Controller-module-70A-A2630-78M05-5V-25V-/300921027008?pt=Intercoms_Access_Controls&hash=item46104a79c0

However, i can't find any documentation for the module itself and I'm not totally sure how to get it to work properly. It has the following control pins:

in1
in2
Vin

if I run the following code using a small 12v motor to test it I can successfully control the speed of the motor but have yet to work out how to reverse direction. I have tried setting in1 and in2 to HIGH-LOW, LOW-HIGH, HIGH-HIGH, and LOW-LOW.

#define pinIn1 9 
#define pinIn2 10
#define pinVin 11

void setup()
{
  Serial.begin(9600);
  for(int i=9;i<12;i++)
  {
    pinMode(i, OUTPUT);
  }
}


void loop()
{
  if (Serial.available()>0)
  {
    char inChar = Serial.read();
    switch(inChar)
    {
      case '1':driveMode1(); break;
    }
  }
}

void driveMode1()
{
  digitalWrite(pinIn1, HIGH);
  digitalWrite(pinIn2, LOW);
  for(int i=100; i<255; i++)
  {
    analogWrite(pinVin, i);
    Serial.println(i);
    delay(100);
  }
}

What I have found after testing:

In1 - set to HIGH or LOW makes no difference at all.
In2 - motor will run only when set to LOW.
Vin - PWMing this pin controls speed.

So is this module incapable of reversing direction or am I missing something. If it cannot reverse will I be fine using using the double SPDT relay method of switching polarity in conjunction with this module?

Thanks

Where did you connect the motor? I think the load should be between OUT1 and OUT2.
Then in1 and in2 control each side of the bridge - make one high and one low to drive
the motor. Its not clear what Vin is, but I think it powers the internal 5V regulator
(which might or might not be needed). You must common Arduino ground to
the module's ground, but they've not brought it out to a header pin, only screw terminals.
What a poor design!

Note the description says "70A peak current" - that's baloney as the PCB traces will be
destroyed at that current level.

I have connected load to out1 and out2 and grounds are connected. How you describe it is how I expected it to work but it doesn't. I can get it to output a voltage across out1 and out2 as long as in2 receives a LOW signal. This output voltage is proportional to the pwm signal I send to Vin. Yet, sending any sort of signal to in1 makes no difference to output. Strange. Starting to think its a faulty module.

As soon as I received the module I was dubious about its max current. No heatsinks on chips had me worried. I am using it to power 3 8amp peltiers in parralel drawing a total max current of around 26amps @ 12v. If I run the circuit the two btn7970's get very hot but as far as I can tell by the data sheet the chips themselves have integrated over temp protection. Still, I stuck a small lump of aluminum to them just in case.

Anyway, I have it setup using in2 as an on/off (LOW/HIGH), PWM to Vin and with 2 spdt 30amp relays in between module output and load to switch polarity as a workaround. I have another different dual btn7970 based module on order and this one looks more capable of handling higher current.

Thanks

Hi, attached is datasheet of the active components on that PCB, have you tried contecting the seller for a sheet on the PCB?

The datasheet may help with terminal allocations.

Tom... :slight_smile:

BTS7970B_datasheet.pdf (306 KB)

Thanks for the link.

I have looked at this many times and from what i can make out, this module is built to the application example on page 23. I am a trained mechanical engineer with a little electrical and electronic knowledge, only what is self taught and what I pick up at work, so although understand some of the data sheet I am struggling to diagnose the problem. If I had to take a educated guess I would say there is something wrong with the control side of one of the BTN7970 ic's. I say this as changing signal to "in1" seem to have no effect on output but as I said its just a guess and probably wrong.

The module is made by LC TECH. I have had previously bought another product of their's which didn't have a any pinout info and tried contacting them about it but never received any information back so not sure I will this time.

To be honest, I am getting concerned with how hot the BTN7970 ic's are getting. I have a 25mm x 40mm x 10mm block of aluminuim pasted across both chips and within 10mins of passing ~20amps through the module to the peltier elements it gets to the point that I can't hold my finger on it for longer than 5 seconds. If I am to use this module I fear passive cooling will not suffice. I have another module on the way that has a heatsink attached to one side of the PCB and the pinout seems similar to lower power h bridge modules I previously used.

What are people's opinions on the current capabilities of these so called "High Current" BTN7970 modules?

Should these be able to handle 20-30amps of continous current or am I going to have to rethink about hardware choices?

If so, what are my options for driving 3 peltiers within a PID loop(variable output) of combine load of ~25amps? I have tried relays using time proportional PID but was concerned about wear caused by thermal cycling occuring near setpoint.

Thanks

Simple maths, the MOSFETs are 9 and 7 milliohms I believe, so that's a max dissipation
of 3.6W + 2.8W = 6.4W for both devices at 20A, a fan is needed (1W per device might
be OK without, but that's only 11A or so).

A chip-set cooling fan is a good option, small but effective.

Past discussion with code. You might consider a heat sink like bottom.

http://forum.arduino.cc/index.php?topic=148482.0

http://www.ebay.com/itm/Double-BTS7960B-43A-Motor-Driver-High-power-Module-For-Smart-Car-Arduino-/170949755496?pt=LH_DefaultDomain_0&hash=item27cd664268

Thanks Mark for clarifying that. I'm sure i have a few chipset fans kicking about. I know I have plenty of 40mm fans if not. I ran the circuit at full power for a lot longer yesterday hoping to see if the supposed overcurrent protection would kick in but it did not. I think if i choose to use this module I think i will try to monitor the temperature of a heatsink attached to the IC's as a precaution

Zoomkat thanks, I did find that discussion from my previous research. That is actually the 2nd h bridge module I have bought which I'm waiting to be delivered. Unfortunately the pin out for the current module does not match up and seems much less intuitive.

Thanks