Jump to content

driving a multi LED display (for temps etc)


Mike Cullingford

Recommended Posts

Hello, Can the Link be used to drive a Multi LED display? I'm thinking 3 green, 2 orange, and 2 red. Will the Link output a variable voltage (0-5v) from the auxiliary output so i can make this work? i.e. ECT. 30 deg C 1 green. 60 deg C 2 green. 90 deg C 3 green. 100 Deg C 3 green + 1 yellow 105 Deg C 3 green + 2 yellow 110 Deg C 3 green + 2 yellow + 1 red 115 Deg C 3 green + 2 yellow + 2 red I can sort out the LED circuitry with resistors etc, but i just need to know if the Link can output this sort of voltage. I would do this for my Oil temp and Oil pressure also. This way it can be a very small (physically) indication of what my temps/pressures are doing, easily readable. The stock temperature gauge in the cluster is terribly inaccurate, so this would replace it. I have a Link G4 Xtreme ECU with 3x spare auxiliary outputs (Aux 2, 9 and 10). Cheers, Mike

Link to comment
Share on other sites

Hi Mike, You don't need any variable voltage output from the Link to light a LED. You can use the 'output to ground' option to switch the LED on if you power the LED through a voltage dropping resistor. That is, you put your resistor in series with the LED so the resistor limits the voltage and current to the LED. Here's how you calculate the value of the resistor to use. First look at the data sheet for the LED you want to use and find the 'Forward voltage drop' and the operating current. You can find data sheets on the web. A typical LED will have a forward voltage drop of about 1.2 volts (it can vary quite a bit) and a operating current of about 20 milliamps (mA or 0.020 Amps). Your battery voltage will probably be about 13.8 volts with the engine running, so you want the resistor that you use for a particular LED to 'drop' (13.8 minus 1.2) volts, or 12.6 volts, while passing 20 mA of current. Ohm's law to the rescue! The value of a resistor that passes 20 mA with 12.6 volts across it is found by dividing 12.6 by 0.020 and is 630 ohms. Unfortunately, 630 ohms is not a standard value, so go to the next greater standard value, which is 680 ohms. Using Mr. Ohm's fine law again we see that 12.6 divided by 680 to determine the current gives us 18 mA, which is close enough and gives you some safety margin. Finally, multiply the current times the voltage (0.018 x 12.6) to find the power dissipated in Watts, which in this case is 0.23, so a quarter watt resistor or larger will work fine. I would go with a half-watt resistor just to keep it cool. Do this for each of the LEDs you want to use and you'll be in business! Bill

Link to comment
Share on other sites

Thanks for the reply Bill. The only problem with your solution is that would require 1 output per LED used. If i want a water temp display, oil temp display and oil pressure display, that would need 21 outputs! (7 LED's x3) I'm hoping to achieve this using 3 outputs only. This is why i need a variable output voltage, so that the LED's light up proportionally to the temperatures/outputs the Link ECU is reading. Cheers, Mike

Link to comment
Share on other sites

For your displays, you would be better suited to possibly take another sensor from the engine, as in 1 sensor for the ECU, the 2nd for your gauges.

Then build a circuit to display the bargraph

Jaycar http://www.jaycar.com.au/productView.asp?ID=KC5424&CATID=25&form=CAT&SUBCATID=347

Altronics http://www.altronics.com.au/index.asp?area=item&id=K4326

Those bargraphs only read voltage, but voltage is all your reading from the sensor, you'd have to play with the circuit to display the readings your after (shouldn't be too hard with the component count you'd be using on them.

Unless your thinking of using AUX 2/9/10 as PWM outputs and using this output as your Analogue voltage output, you'd possibly have to have a formula inside the ECU to linear scale the PWM output to relate your readings to some voltage

Personally, I'd prefer the 1st solution above, leave this outside of the ECU, and program a output from the ECU to flash/illuminate a LED if any of the readings get outside a required band, and take your attention to the gauges, the bit conditional logic inside the ECU would cope with this.

Link to comment
Share on other sites

Hi Mike,

You've pretty much been given all the info I could offer.

You're right that the only 'variable output' is the Aux GP PWM. To use this you would need to create a PWM to Voltage Converter, then a voltage to LED bargraph chip. with all the supporting hardware required for those two chips, you would be much better off just using a little PIC or AVR chip to do all the hardwork and go straight from PWM to LED.

 

We are currently developing a product that could suit this application, but other more important projects keep pushing it out. So I'm afraid I don't know when it will be available and can't tell you much more than that.

 

-Cameron

Link to comment
Share on other sites

You can use the PWM outputs easily enough to drive a multi-LED setup. The easiest way to do it that I can think of is to output the PWM signal to a low-pass filter to generate a linear voltage, then input that into an LED driver IC such as an LM3914. An LM3914 is cheap and will drive up to 10 LEDs based on a 0-5V input signal. Construct the LP filter using a resistor and capacitor. Then once it is all connected simply adjust the PWM map to light up the desired LED for your given sensro input level.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...