Summary of Capacitance Meter
Summary: A DIY capacitance meter uses a 555 timer in monostable mode: a known resistor R and the unknown capacitor C set a pulse width T = 1.1·R·C. An Arduino measures the pulse length on pin 3 by detecting rising and falling edges and using micros(), then computes C = T / (1.1·R). This lets you determine capacitance when meter readout is unreadable or when your multimeter lacks capacitance mode.
Parts used in the Capacitance Meter:
- 555 timer IC
- Arduino (any compatible model)
- Known resistor R (precision resistor for timing)
- Unknown capacitor C (to be measured)
- Connecting wires
- Breadboard or PCB
- Power supply (5V for Arduino and 555)
- Pushbutton or trigger mechanism (optional to initiate measurement)
Capacitors are vital components in electronics, but sometimes they are broken, or the value printed on the cap has become unreadable. Because my multi-meter does not have a capacitance measurement, I decided to make one!The principle of measuring capacitance is quite simple. The voltage of a capacitor charging through a resistor increases with time T. The time it takes to reach a certain voltage, is related to the values of the resistor and capacitor. In this project, we’ll use a 555 timer circuit as a monostable multivibrator. If that sounds like some dark magic to you, don’t worry, it’s quite straightforward. I’ll refer to the the Wikipedia page for the details, as we’ll focus on the things we really need: the schematic and formula. The time in which the capacitor C charges through the resistor R is given by: T = ln(3) x R x C = 1.1 RC. If we know the value of the resistor and the time, we can calculate the capacitance: C = T /
Now we need a device for measuring the time, and that is where the Arduino comes in. The time is defined by the state of the output pin of the 555 timer (pin 3). It will be HIGH when the capacitor is charging, and LOW when it’s not. This means the output generates a pulse with length T.
The Arduino will be connected to pin 3 and will be detecting the rising and falling edge (transition form 5V to 0V and vice-versa). By using the function micros(),
For more detail:
Capacitance Meter
- How does the circuit determine the capacitance?
It measures the pulse duration T produced by the 555 monostable (T = 1.1·R·C) and then calculates C = T / (1.1·R). - Can I use any resistor value for R?
You can use a known resistor R; the formula requires its value to calculate the capacitance. - Does the Arduino measure voltage directly on the capacitor?
No, the Arduino measures the pulse on the 555 output pin 3 by detecting rising and falling edges. - What function does the Arduino use to measure time?
The project uses the micros() function to measure the pulse length T. - Is the 555 configured as a monostable multivibrator?
Yes, the 555 is used in monostable mode so its output is HIGH while the capacitor charges, producing the pulse of length T. - What is the relation between T, R, and C?
The relation is T = 1.1·R·C (derived from T = ln(3)·R·C). - Can this method measure capacitors when markings are unreadable?
Yes, the method measures capacitance when the capacitor value is broken or unreadable. - Do I need to consult additional theory for the 555 behavior?
The article refers to the Wikipedia page for 555 details but focuses on schematic and the timing formula needed for measurement.