Irritating high-pitched noise with 555 PWM driving LEDs (Update: 12 Aug 2015) - Page 1
Forum section: electronics / beginners

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 26, 2015, 12:03:43 pm
content: Hi, I was building an adjustable PWM driver with 555 (circuit schematic below):The LED Array is a salvaged one from a visualiser. It has some SMD LEDs with 300ohm resistors.The batteries are 18650s. I measured the (800ma) current usage of the LED Array @ 12V beforehand.Whilst the curcuit seems to be working as intended (dimming the LEDs), there is an extremely annoying high-pitched whine coming from the LEDs, which vanishes when I adjust the brightness all the way up. (The noise increased as I decreased the brightness of my circuit.) The problem still remained when I swopped with 2 other different LED arrays (this time, they are sets of 5mm through-hole LEDs from cheapo LED video lights). I tried adding inductors (Suggested by looking through Google) of different values, capacitors to filter the DC out (again, Google), and they don't work. I have checked the capacitors & resistors in my circuit (and they are all within spec), and swopped out the components for my backup ones. Still the same.This has been bugging me for a few days now.How can I remove that noise?EDIT: Updated schematic. Adding a 1K cap indeed made that squeal mostly softer (still audible), but the frequency of the PWM signal is very unstable (not to mention reduced by a significant amount).Measuring at the lower end of the brightness level without the 1000uF cap was a stable 30kHz, now it's fluctuating between 7-13kHz. The brightness of the LEDs are also reduced (though I admit this is a good side effect). Q1 now is also extremely hot (~70 Celsius without heatsink) and putting back the 1K resistor yielded the same result. To make sure it wasn't due to the 'wun hung lo' caps I was using, I swopped it for a Nippon cap. Same result.Also, 150R resistor at R2 was too low a current to drive the transistor. The lowest value I could use was 500R.The saga continues...UPDATE2: I've spent some time experimenting more on the circuit and brainstorming a bit.On a whim, I tried using my circuit to drive a brushless computer fan without any extra protection. Realised that was stupid after burning through 2 555s. It didn't even want to drive the fan at all.Tried constant current drive, however the circuit drew 2A and I burned through my only 100k pot for some odd reason. Now I'm using a few resistors as voltage dividers in place of my pot to test.To clarify, here is a quick sketch of the main LED Array I intend to use (as I have a few lying around), after reverse line tracing (not sure if this is the correct term):There are 4 sets of this, all SMDs. Resistors are all 300R 0603s (metric unit). I noticed that on one of the arrays whose manufacture date is newer, they added 1 cap on each set of 3 LEDs and a large filter cap (all SMDs). The other 2 or 3 doesn't have them. My DMM reads 8µF, though it isn't historically reliable in capacitance measuring. Oddly, the newer array actually sings less than the others without the caps.Needless to say, I would prefer mitigating as much singing as possible from all the LED Arrays I have.Right now, I will try migrating everything to veroboard to try out once I purchase what I need from my local electronic parts mall. It will simulate the cramped conditions I need to shove everything into the size of a 3x18650 battery holder.UPDATE3: I finally got around to shoving everything onto a veroboard. This board below is my 2nd attempt (I removed the caps for troubleshooting, see below):(** The jumpers lead to the potentiometer)Unfortunately, migrating to a veroboard caused more problems:https://www.eevblog.com/forum/beginners/circuit-behaves-completely-differently-on-veroboard-from-breadboard/

author: Gyro
author_rank: Super Contributor
timestamp: July 26, 2015, 12:20:54 pm
content: Hard to say exactly where the noise is coming from, there are no inductors to whine so it could be from pulse currents the wiring or maybe even the batteries themselves (). I'm pretty sure that putting a capacitor (maybe 100 - 1000uF) across the supply as close as possible to Q1 and the LED2 will quieten it down by shunting the pulse current through as small a loop as possible,

author: amyk
author_rank: Super Contributor
timestamp: July 26, 2015, 12:22:32 pm
content: Are you sure the noise is coming from the LEDs?I bet it's coming from the capacitors. Are they ceramics? Those are known to besound-producing. (That linked paper suggests a single cap can produce almost 60dB!)(This also gives me a wacky idea: in an embedded system, getting rid of a piezo speaker that isn't required to be that loud, and using the array of ceramic decoupling caps for the MCU as a speaker by running code that causes the appropriate frequencies on the power rails...)

author: Gyro
author_rank: Super Contributor
timestamp: July 26, 2015, 12:28:28 pm
content: QuoteC2 is just the normal control pin decoupling capacitor, I suppose C1 is a possibility, but it's not seeing much current or fast edges. The thing that stands out for me it the total lack of supply decoupling on a circuit that's pulling significant pulse current.Edit: The 555 probably isn't very pleased with the situation either - add a 100nF as close to its supply pins as possible.

author: mij59
author_rank: Frequent Contributor
timestamp: July 26, 2015, 12:42:53 pm
content: Try lowering the pwm frequency, change C1 to 100nF, decoupling the power rails is always a good.

author: Zero999
author_rank: Super Contributor
timestamp: July 26, 2015, 01:03:24 pm
content: How warm does Q1 get? R2 should be reduced, otherwise Q1 won't saturate properly, try 150R.The trouble with reducing the frequency is flicker could become a problemIf audible noise is a problem, C1 could be reduced to 470pF to increase the switching frequency beyond the audible range but Q1 might struggle to switch at that speed. You could try putting a capacitor in parallel with R2 (say 470pF) to provide a negative pulse to discharge Q1's base. Failing that, try a MOSFET.

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 26, 2015, 01:47:32 pm
content: Quote from: amyk on July 26, 2015, 12:22:32 pmThe caps are indeed ceramic.Unfotrunately, I just went back to my breadboard and the noise is indeed coming from the LEDs side. I separated the LEDs from the main circuit with 1m wire.Quote from: amyk on July 26, 2015, 12:22:32 pmHmm... Interesting...

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 26, 2015, 01:50:24 pm
content: Quote from: Gyro on July 26, 2015, 12:20:54 pmIt's night here now; I will try tomorrow and report back. Previously tried with 10 & 47uF electrolytics and that did nothing. I have to rummage in my parts bin first.

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 26, 2015, 01:58:25 pm
content: Quote from: Hero999 on July 26, 2015, 01:03:24 pmHere's the odd thing. Q1 is surprisingly cool (measured ~30 Celsius with thermocouple), whilst the 555 timer is running at ~55 Celsius after about 5min).Can't increase the switch speed as doing so caused Q1 to act all wacky (It intermittently flickers between full brightness -> off without the PWM dimming) for no apparent reason.Unfortunately, I'm out of MOSFETs (reason why I'm using a TIP instead) so that's not an option for a while.I'll try with a 150ohm resistor and report back.

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 26, 2015, 02:01:09 pm
content: Quote from: Gyro on July 26, 2015, 12:28:28 pmThe 555 obviously didn't seem pleased; it runsmuch muchhotter than Q1 (~50-60 Celsius for the 555 vs ~30 for Q1).

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 26, 2015, 02:05:23 pm
content: Quote from: mij59 on July 26, 2015, 12:42:53 pmSadly I can't lower the PWM frequency anymore; I'm using the lights for my event/wedding videography (my part time job) and the supplemental resistors/caps used were the lowest switching frequency that wasn't picked up by my cameras (my DMM shows ~1.3k - 16kHz).I'll try decoupling the rails though.

author: alsetalokin4017
author_rank: Super Contributor
timestamp: July 26, 2015, 03:29:40 pm
content: I can't help but notice the inconsistent use of "Dots" vs. "No Dots" to indicate connections vs. nonconnected crossings in the Schematic. For example, Pins 4 and 8 are definitely connected but there is no dot there. Are the other "no dot" points where wires join to be connected, or not? Perhaps the OP has miswired something, due to this inconsistent usage.Is the circuit built on a solderless breadboard? We have seen other breadboarded timer circuits that malfunction because the breadboard contacts are flaky. I really don't think the 555 should be heating up so much in this kind of service. But maybe, since it is acting as a current source for turning on the power transistor. I would strongly suggest using a mosfet instead of the TIP transistor. You can probably pull a good mosfet out of a defunct CFL lightbulb power supply, everybody has those lying around don't they? (Although some do use bipolar transistors.)The convention of using non-dotted crossings to indicate no connection has always driven me mad. There should be a "jump" symbol or just a little gap in the line where non-connected crossings occur in schematics, and definite Dots where they do connect.

author: android
author_rank: Regular Contributor
timestamp: July 26, 2015, 10:18:48 pm
content: Shouldn't the batteries be in series?

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 27, 2015, 01:36:48 am
content: Quote from: android on July 26, 2015, 10:18:48 pmOh s**t, my bad. They are supposed to be in series.

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 27, 2015, 01:54:01 am
content: Quote from: alsetalokin4017 on July 26, 2015, 03:29:40 pmI had no idea how to use a 'jump' in EAGLE. Tried using the 'arc' but EAGLE keeps automatically adjusting to meet the wire which I wish to intersect in the first place. I ended up showing those junctions that I wish to join as dots.I'm currently using a solderless breadboard to test, though I swopped my jumper wires for plain solid core because the jumpers were heating up.Quote from: alsetalokin4017 on July 26, 2015, 03:29:40 pmI have to consider myself an odd one out here. Everybody I knew scrapped them long ago. I've ordered some jellybean MOSFETs from evilBay last week, and they're going to take another month++ to reach me.

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 27, 2015, 11:50:20 am
content: I've updated the schematic, and tried some changes that you guys suggested.Now the circuit seems more weird than before (see edit).

author: mij59
author_rank: Frequent Contributor
timestamp: July 27, 2015, 12:04:54 pm
content: Quote from: thejoggingmat on July 26, 2015, 12:03:43 pmThe 1000 uF capacitor should be on the power supply rail NOT parallel on the transistor !

author: mij59
author_rank: Frequent Contributor
timestamp: July 27, 2015, 12:12:19 pm
content: To avoid led flicker you could use a buck boost converter based on the XL6009 like thishttp://www.ebay.nl/itm/Hot-Selling-DC-DC-Boost-Buck-Step-Down-Up-Converter-XL6009-Solar-Voltage-Module-/301596262442?hash=item463889c02a

author: Gyro
author_rank: Super Contributor
timestamp: July 27, 2015, 12:17:39 pm
content: QuoteAbsolutely! and as close to the transistor and LED array as possible.You also still need to add local supply decoupling to the NE555 - 100nF between pin 1 and pin 8.

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 27, 2015, 01:33:31 pm
content: Quote from: Gyro on July 27, 2015, 12:17:39 pmTried putting the cap on the power supply rail, but the sound gotmuchlouder. By default, shouldn't filtering the power supply make the power line cleaner (and thus reduce this problem)?

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 27, 2015, 01:34:51 pm
content: Quote from: mij59 on July 27, 2015, 12:12:19 pmSo I should use this module instead of the 555-based circuit?

author: mij59
author_rank: Frequent Contributor
timestamp: July 27, 2015, 01:42:54 pm
content: Quote from: thejoggingmat on July 27, 2015, 01:34:51 pmYes, considering the price you can't go wrong.

author: mij59
author_rank: Frequent Contributor
timestamp: July 27, 2015, 01:53:31 pm
content: An other module with constant current adjustment, should give a better control of the brightnesshttp://www.ebay.nl/itm/Automatic-Converter-Boost-Buck-LX6009-4-35V-to-1-25-25V-CC-CV-Voltage-Regulator-/400873719224?pt=LH_DefaultDomain_3&hash=item5d55ef85b8

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 27, 2015, 01:57:18 pm
content: Quote from: mij59 on July 27, 2015, 01:53:31 pmQuote from: mij59 on July 27, 2015, 01:42:54 pmI'll order a few samples in a while to try out, but they're going to take a while to reach me.In the meantime, are there any long-term implications if I were to use per the schematic I posted?As 'dirty' as the circuit is, there's no denying that it makes the least audible high pitched noise. (Unless I can whip up a better one)

author: mij59
author_rank: Frequent Contributor
timestamp: July 27, 2015, 02:19:42 pm
content: Quote from: thejoggingmat on July 27, 2015, 01:57:18 pmRunning components at high temperature will decrease their life expectancy.The audible noise could drive you really mad, since its a long wave transmitter the Pentagon may ask you to shutdown the device so the can communicate with their submarines.

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 27, 2015, 02:45:30 pm
content: Quote from: mij59 on July 27, 2015, 02:19:42 pmNo worries, I'll just donate free tin foil hats to whoever they send knocking on my door.

author: Gyro
author_rank: Super Contributor
timestamp: July 27, 2015, 06:05:52 pm
content: Still a bit curious about what mechanism in the LED array is responsible for the noise production (the interconnects? thermal expansion of the LEDs themselves?) - it is clearly related to the peak current or rise time which would have increased with the improved decoupling.When the 1000uF cap was directly across the transistor it would have slowed the rise time significantly, hence the lower noise. Of course very bad for the health of the transistor and the cap so not a solution!It implies that a low value series resistor between the transistor and LED array (or possibly in the emitter lead) to control / define the peak current would quieten it down, hopefully without too much loss.I agree though, a module is probably the way to go.

author: jlmoon
author_rank: Unknown
timestamp: July 27, 2015, 06:37:20 pm
content: Damping resistor (low value 5 watt or so) between supply rail (+) and anode of led. Then that 1000uF Cap and a .01 cap as bypass to ground at junction of resistor and Led to ground.

author: jlmoon
author_rank: Unknown
timestamp: July 27, 2015, 06:45:19 pm
content: I would also think the worst case Current gain of 12 for that TIP41 would stress the 555 timer output considerably with that kind of load and supply voltage.

author: Gyro
author_rank: Super Contributor
timestamp: July 27, 2015, 06:50:05 pm
content: QuoteI'd try the damping resistor after the decoupling first - from the OP's comments the noise really is coming from the LED array itself. The 1000uF directly decoupling (discharging into) the array and transistor makes it louder. It's remote from the rest of the circuit so the interconnects are already providing some resistance.

author: IanB
author_rank: Super Contributor
timestamp: July 27, 2015, 08:03:08 pm
content: Quote from: Gyro on July 27, 2015, 06:05:52 pmI think feeding something (anything) with PWM is going to make it "sing".The solution is to use a PWM frequency out of the audible range, or put an LC tank circuit on the output of the PWM (but then the tank circuit will sing).

author: jlmoon
author_rank: Unknown
timestamp: July 27, 2015, 08:32:04 pm
content: Quote from: IanB on July 27, 2015, 08:03:08 pmThe third orders will get you as well.

author: leblanc
author_rank: Regular Contributor
timestamp: July 28, 2015, 01:12:17 pm
content: If you're gonna have a potentiometer, why not just use a common collector and avoid PWM altogether?The potentiometer varies the base voltage from 0V to 11.4V, which makes the Ve vary from 0.6V to 12V. If you know the drop across the LEDs (the voltage at which they start conducting), you can add a resistor in series with D1 in order for R1 to give you a full range of dimming (no dead zone). A variation in Ve gives a variation in VLED, which will control the current (and therefore brightness) from 0mA to (almost) 800mA.Q1 will need to be sized appropriately (I'd say 3W minimum, 5W is better).You won't be as efficient, but you won't need PWM (no sound, lower EMI, less circuitry, no flicker).There are a number of improvements that can be made to the circuit I attached, but it's a starting point.

author: Zero999
author_rank: Super Contributor
timestamp: July 28, 2015, 03:02:28 pm
content: Or you could use constant current drive.

author: leblanc
author_rank: Regular Contributor
timestamp: July 28, 2015, 03:06:34 pm
content: I was going to suggest a constant current drive, but he has resistors in series with the LEDs already. It would work though, but you'd have a smaller range of brightness.

author: SL4P
author_rank: Super Contributor
timestamp: July 28, 2015, 04:27:06 pm
content: Late arrival here...The LEDs are salvaged from aVisualiser...What's a visualiser?Perhaps there is more to the load than 'just' LEDs ?

author: poot36
author_rank: Frequent Contributor
timestamp: July 29, 2015, 05:30:15 am
content: This might sound like a dumb question but how close to a object is the light output side of the leds? I have had a pwmed light bar which drew around 800ma and had high quality red cree smd leds on it and when it got close to a object you could sometimes hear it buzzing. The pwm frequency was 400Hz with a relatively low duty cycle. It would even happen on carpet! If you want a more extreme example of this effect lookup youtube user tesla500 and find the dlp tv take apart videos and you will find a section where he is focusing the light output of the dlp lamp with a magnifying lens on a piece of wood and the pulsed nature of the lamp can be heard as sound.

author: Gyro
author_rank: Super Contributor
timestamp: July 29, 2015, 11:50:19 am
content: Audible noise from LEDs / arrays seems to be a very common problem (haven't turned up anything describing any LED device specific noise mechanism though)A search for "audible noise LED" brings up a fair number of hits, including a PDF app note from Linear Tech:www.linear.com/docs/27822And an article from LEDs Magazine (A Technological Lads' Mag clearly)http://www.ledsmagazine.com/articles/print/volume-10/issue-6/features/proper-driver-design-optimizes-led-lighting-magazine.htmlThe LinTech note looks as if it could be quite helpful.

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 31, 2015, 07:28:14 am
content: Quote from: SL4P on July 28, 2015, 04:27:06 pmIt's one of those gadgets used in classes to project hardcopies onscreen. The successor to an OHP.

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 31, 2015, 07:35:24 am
content: Quote from: leblanc on July 28, 2015, 03:06:34 pmQuote from: Hero999 on July 28, 2015, 03:02:28 pmQuote from: leblanc on July 28, 2015, 01:12:17 pmI'd have used constant current drive, however whatever I'm doing needs to be as efficient as I possibly can. Fully charged 3x18650s already take around 2++hr to drain to ~10V under load in PWM adjusted to its max brightness as is. I'll be using whatever I build out of this to use on the field in my videography.

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 31, 2015, 07:38:39 am
content: Quote from: poot36 on July 29, 2015, 05:30:15 amIt's quite far from a carpet or any other electrical objects, so I doubt it comes into play here. I used a sheet of aluminium foil glued to a paper sandwich as a shield to test, just to make sure. Same result.

author: thejoggingmat
author_rank: Regular Contributor
timestamp: July 31, 2015, 07:40:08 am
content: Quote from: Gyro on July 29, 2015, 11:50:19 amHmm... Although most of them I googled are referring to the in-circuit caps singing. But that LT IC looks interesting.

author: poot36
author_rank: Frequent Contributor
timestamp: August 01, 2015, 04:14:15 am
content: Sorry I meant to say that the noise would happen if the light output of the LEDs was near any object soft or hard. Ie. LEDs pointed at a table or in my other interesting case the carpet. The carpet was interesting because you would think it would absorb the sound as well as diffuse the light enough to stop the sound altogether.

author: ignator
author_rank: Regular Contributor
timestamp: August 01, 2015, 09:13:14 am
content: Maybe I'm missing something. I didn't see any comments about C3 the 1000uF cap. Every time Q1 is turned on, it has to discharge this. This is a large current spike. And this can produce audio sound. The current spike would be of interest, depending on how fast Q1 switches.

author: Gyro
author_rank: Super Contributor
timestamp: August 01, 2015, 11:56:49 am
content: C3 was drawn in the wrong place and got moved to the supply rails where it should have been (where it made the noise worse due to the higher peak current drive capability).Edit: The OP did actually briefly try the cap as drawn, where it quietened things down a bit due to increased rise / fall times, but as you say, the transistor was having to discharge it every cycle!

author: thejoggingmat
author_rank: Regular Contributor
timestamp: August 12, 2015, 09:14:09 am
content: I've finally went on to doing the veroboard version. Strange things are happening. I think I have narrowed down to:1) The transistor2) The 555 (I used a DIP socket the 2nd round and tried with a 2nd 555, still same result. Will try with more from my stash)3) The rubbish veroboard connections (I am still a complete noob at veroboarding admittedly)Unless parasitic capacitance or some third order is flirting with my circuit. Any ideas?