circuit question

Hi all.

I have a small robot called Asuro. It has an Atmega 8 processor and there is an Arduino lib for it. It is originally powered with 4 AA batteries. Original schematic Datasheet for higher resolution schematic page 74 Asuro Diagram Transistors used: BC327 and BC337. AND-gate: 4081BE

I disconnected both h-bridges VCC and changed the power supply for the board to 3.3V regulated. This worked fairly well. I can upload .hex files and get serial responses.

Now i want to make the 2 h-bridges work. I hooked up the VCC of the h-bridges to 5V. The motors do rotate a little when driving the 2 h-bridges but the transistors get warm/hot even when not driven.

Is someone willing to have a look at the schematic to see what could be causing this?


First of all: The image of your schematic isn't very clear. Can you link to a full resolution copy? Second: Why did you choose to run your board on 3.3V?

I could see how, perhaps, 3.3V isn't high enough to supply the current to the gates on the transistors in your H-bridge. That might be preventing your transistors from saturating, thus causing excessive heat dissipation. If that's the case, change the values of your gate-resistors to account for the change in voltage from (whatever it was before) to 3.3V. However, I can't see why they would get hot when not switched.

Common ground?

Hi P_Wood, thanks for taking a look.

Unfortunately the schematic comes from the datasheet and i can’t take a higher resolution copy. I’ve updated the first post with a link to the original sheet. Hope that helps a bit.

The desire to go to 3.3V initially came from the XBee that is now attached and working.

Originally the supply voltage was ~5V. (4 times 1.5V AA minus drop over diode D9)
The resistors on the bases of the transistors are now 1K ohm. I still don’t know how to read the datasheets of the transistors to calculate saturation voltage.
Does that scale linearly?
So if i do 5V / 3.3V ~ 1.5151ratio
1000 ohm / 1.5151ratio ~ 660 ohm will that be a good value?

Thanks again,


edit: Yep. Made friends with the ground. :slight_smile:

I don't think this will work at all. The problem is the top transistors in each H-bridge will be ON a little bit all the time, even when the microcontroller is trying to turn them off. Since the microcontroller only puts out 3.3V, the emitter-to-base junction of the BC327 (emitter is at 5V) is forward biased and turns the transistor on. The current path is a bit complicated (through the 1k resistor, through the microcontroller pin, through the microcontroller's ESD diode, to 3.3V) but there's probably enough current there to turn on the BC327 enough to conduct current.

And if the BC327 is ON and then you also turn on the lower transistor (thinking the BC327 is off), then current "shoots through" from 5V through the BC327 then through the lower transistor right to GND, going around the motor entirely, and causing the transistors to get hot.

I suggest you go back to 5V on the microcontroller, or try to power your motors with 3.3V (won't be very powerful though).

-- Check out our new shield:

Thanks a bunch. Even with the unfortunate news.

Will be going back to 5V, separate 3.3V for the XBee and a resistor divider between controller Tx and xbee Rx.


I have to agree with RuggedCircuits about the PNP transistors.

As for this statement…

I still don’t know how to read the datasheets of the transistors to calculate saturation voltage.

What you are looking for is a a value typically called “HFE”. It describes the DC CURRENT-gain of the transistor. So your statement about saturation “voltage” is fundamentally flawed. This is because–with bipolar junction transistors–saturation is a result of the current through the base and not voltage. Now that being said, you should know that there are typically several values for HFE(all unit-less) found in data sheets. The one that is important for calculating saturation current is the minimum HFE. You want to saturate the transistor with the lowest possible current to save energy (or whatever), but you also want to ensure that it completely saturates. If it doesn’t, the transistor may get very hot when passing large amounts of current. Anyway…

Bear in mind this symbol is for NPN TRANSISTORS ONLY while your bridge also contains PNP’s too
HFE= ICE / IBE This basically means that the current through the transistor(ICE) is equal to the base current(IBE) times HFE. From experience, I can say that a lot of transistors will have HFE’s ranging from 100 to 300. Before calculating, you should understand that there is an intrinsic diode between the base and emitter which does require a voltage drop of roughly 0.7V.

From here, you need to know the following:
Supply voltage
Maximum collector current

With these known values you can calculate the value of the series resistor to the base.
In your case voltage is 3.3V and maximum collector current is 0.5A(according to bc327-40 data sheet). As a safety factor we will supply five times as much current to the base as needed to ensure full saturation of the transistor. The voltage affiliated with the base current will be 3.3 - 0.7 = 2.6V.
IBE = (5 * ICE) / HFEMin
or IBE = (5 * 0.5A) / 100 = 0.0025A or 2.5mA
Remembering V = I * R
R = 2.6 / 0.0025 = 1040 ohms (so a 1K should work)

I wouldn’t be terribly surprised if I screwed something up in my calculations so I welcome any criticism. :wink:

Thanks very, very much for this lesson.

I knew transistor were [u]current[/u] driven devices and still i wrote voltage.

I would really love to have that explanation somewhere as sticky. I do not think i'm the only one struggling with those.