This is a problem I have been slowly chasing down.
At first I was using 10% caps that caused the poor output accuracy. After changing the capacitor to a 1% I thought the problem would be fixed, but it was not fixed.
Here is the circuit ignore values because they are old.
Important values:
- R1: 649 1%
- R2: 3.24k 1%
- C1: 10nf 1% (12063A103FAT2A) (ceramic)
- f = 1.44(R1+2R2)C1
- Pw = .693(R1+R2)C1
After plugging all of this in I should get (mathematically) f = 20kHz with Pw = 27u (the values I want.)
In reality I get f = 18kHz and Pw=28us.
This value is completely unusable for the application.
I considered the surrounding circuit to possibly cause issues so I breadboarded just the 555 circuit. This circuit obtained exactly the same f and Pw as the one on the PCB.
After some more digging I found that a small R1 could be the problem. I added two pots to the breadboard and picked some random R values. Then checked f and Pw vs the calculation and it had worse accuracy than the hand picked resistors. (I understand the pots could be the reason they were more wrong.)
Is there anything I am doing wrong? Is there a better solution for this?
I have a uC controlling other things, but I want to keep it isolated from this circuit because the load is a flyback circuit (20kV.)