Gen5 Outback BIU (Body Integrated Unit) Mod to Prevent LED Turn Signal Hyperflash

Part 3 – Theory and Circuit Description

So, why does this work, and “how did you figure this out”?

Driving incandescent bulbs is difficult. For four bulbs, almost 100 watts of power is required. Because of this, the current detect function is NOT built into the main controller, but is provided by a separate IC.

So, in order to figure out if this was possible, I purchased a salvaged 2015 Outback BIU for $30 off of ebay. Here is this unit, on the bench, and wired up to make the turn signal bulb outputs work.


As soon as I was able to identify the bulb driver IC as the Infineon BTS020, and found a datasheet, I knew this was possible.

The BTS5020 creates a signal on pin 4 called “IS”, for “current sense” to send information to the microcontroller about how much current is being used by the turn signal bulbs. Furthermore, this pin is a high impedance current output. Most ICs drive an analog signal like this one using a voltage output, which means that it is not easy to override the signal level without cutting PC board traces.

With current outputs, however, you can easily shift the level at the pin using a single resistor. This also means it is easy to reverse and remove the rework if necessary.

The microntroller reads the signal on this pin using an A-to-D (“A/D”), or analog to digital converter. This connection is through a 4.7K resistor, into pin 138 of the microcontroller, which is an R32C-R5F6456. This signal is AN_2/P10_2.

Here is the schematic of the rework again.


Note that the resistor to ground, “Ris” in the Subaru BIU is the same value recommended in the applications information, which is not surprising. Doing what the IC manufacturer recommends is usually a good idea.

This graph, from the BTS5020 datasheet, shows the relationship between the current flowing in the output, and the current driven info the 1.2K resistor by the BTS5020. through the IS pin.


Two normal turn signal bulbs draw, for a 21W 7440 bulb, about 3.5A. In order to fool the microcontroller into thinking that this current is still flowing, we need to create about 1.2mA of current into the 1.2K ohm resistor. Some algebra results in a resistor value of 10K, between the cars 12V supply and the current summing node. Note that a more reasonable value for the cars operating voltage is 14V.

By adding a 10K resistor from the BTS5020 pin 4 to the ignition pin (pin 6 of the BIU internal connector), pin 4 is biased to 1.5V (at Vbatt = 14V) with no current flowing from the BTS5020, as happens when all the turn signal bulbs are off. Luckily, the microcontroller does not sample this pin to check for zero current when the output (left or right) is turned off. This voltage, with the recommended 1.2K ohm resistor to ground, is equivalent to a sense current of 1.5V/1.2K ohms = 1.25mA. From the graph, this maps to an output current of 3.5A. Note that a single incandescent bulb is 21W, or 1.75A @12V. So two bulbs is 3.5A, which the 10K resistor simulates.

Another consideration is circuit safety. The microcontroller is powered from a 5V power supply, and in general it is a bad idea to connect voltages higher than that to a 5V IC. So adding a 10K ohm resistor to +12V seems like it might create a problem.

However, this circuit was already designed to handle higher voltages.

Note that the BTS5020 puts out +10V on the IS pin under a short circuited output fault condition. To prevent damage to the microcontroller, a series 4.7K is used, again as recommended by the applications information in the data sheet.

This resistor limits the current into the microcontroller when the voltage on IS is higher than 5 volts.

The microcontroller datasheet specs a 2mA maximum “injection current” on p.83 of the data sheet. This specification is there specifically to allow designers to safely apply voltages higher than 5V to the microcontroller, and know how to specify a series limiting resistor like the 4.7K.

If pin 4 reached 12V, then current would be limited to (12V – 5V) / 4700 = 1.5mA, which is less than the allowed maximum of 2mA.

Note that the 10K resistor only adds 0.2mA to the current in the faulted state, with 2V across the resistor. So the protection circuitry is not really affected by the 10K resistor addition. In this case, “faulted” means that there is a short to ground in the wiring, and that the upstream fuse has somehow not blown. Most circuits will NEVER see this state.

Now, if the microcontroller software was reading the A-D value with the turn signals OFF, it would notice that 3.5A was flowing when it shouldn’t be! But, luckily for us, it doesn’t. So, it is OK to just add a fixed amount of current to the sense pin. If the software did sample this pin in the “bulb-off” state, and noticed a problem, a slightly more complex mod could be used. But the micocontroller doesn’t even drive the DEN pin when the bulbs are off, meaning it can’t expect to sample the IS pin. I think it is very unlikely that they will ever change this behavior.

Also, note that the microcontroller doesn’t pay ANY attention to the current sense pin when the emergency flashers are selected. So, we don’t need to worry about adding additional current unless the ignition is on, which is required for turn signal operation. We can therefore tie the upper end of the 10K resistor to the IGN signal, rather than a constant 12V source.

This prevents any additional battery drain which would occur if the 10K resistor was tied to a constant 12V source.

OK, there you go. Is this a good idea? Certainly not. But I still like it every time I turn on the turn signals and know what is going on. Plus, if you had to leave your car with the emergency flashers on, it is going to run MUCH longer before the battery goes dead.

Source link

We will be happy to hear your thoughts

Leave a reply