basic-lm399
Publiccellularmitosis/basic-lm399
Loading…
Imported from GitHub: cellularmitosis/basic-lm399 · commit fa58a80 · license MIT
Description
A very basic LM399 voltage reference board design.
README
basic-lm399 (v1)
This board was designed to be a basic "utility" board for working with the LM399. Some features which support versatiliy:
- This board supports the use of either single or dual-package DIP-8 op amps (whatever you have on hand!)
- Multiple supply connection options (barrel jack, terminal blocks, or header pins)
- The LM399 footprint supports using a 2x2 header socket, so that LM399's can be quickly swapped and compared.
- For the single op amp footprint, input offset voltage (Vos) trimming circuitry footprints are included (which could be used to make a temporary small adjustment to the final output voltage).
- A "TEST" point is included which can be used with an oscilloscope probe equipped with a ground spring.
This board's dimensions are under 50mm x 50mm, which means it fits in the cheapest pricing tier of most board manufacturers (e.g., in case you'd like to spin a bunch of these boards for bulk LM399 ageging).
The Circuit
Full schematic: pdf
This board uses the basic "bootstrapped zener" concept:

Here's the actual implementation:

Configurations
This board can be configured in a few ways.
In all configurations, populate the reference,
| Component | Populate | Value |
|---|---|---|
| U2 | ✅ | LM399 |
Note that a 2x2 0.1" female header can be used as a socket for quick testing of many LM399's.
populate the feedback resistors,
| Component | Populate | Value |
|---|---|---|
| R4 | ✅ | 1k, 1% metal film |
| R5 | ✅ | 6.8k, 1% metal film |
| R6 | ✅ | 1k, 1% metal film |
populate the supply and feedback capacitors,
| Component | Populate | Value |
|---|---|---|
| C2 | ✅ | 0.1uF, ceramic |
| C3 | ✅ | 10nF, ceramic |
Note: 0.1uF for C3 will also work if that's all that you have on hand.
and populate your choice of input and output connectors (barrel jack, terminal block, or header pins.
Basic Single Op Amp Configuration
To use this board with a single op amp, populate the U1 op amp and leave U3 op amp unpopulated:
| Component | Populate | Value |
|---|---|---|
| U1 | ✅ | OP07, etc |
| ❌ | ||
| ❌ | ||
| ❌ |
Because most single op amps are pin-compatible, this configuration can be used with a number of DIP-8 op amps, e.g.:
- OP07
- LT1001
- TL061, TL071, TL081
- uA741
Leave the Vos trimming circuit unpopulated:
| Component | Populate | Value |
|---|---|---|
| ❌ | ||
| ❌ | ||
| ❌ | ||
| ❌ |
Example:
Single Op Amp Configuration with Vos Trim
In addition to the above components, also populate the input voltage offset (Vos) trimming circuitry.

| Component | Populate | Value |
|---|---|---|
| R1 | ✅ | ??? |
| R2 | ✅ | ??? |
| R3 | ✅ | ??? |
| RV1 | ✅ | ??? |
The component values here can be tailored to your needs, and may require some experimentation to discover.
Dual op amp configuration

| Component | Populate | Value |
|---|---|---|
| ❌ | ||
| ✅ | LM358, etc. |
Because most dual op amps are pin-compatible, this configuration can be used with a number of DIP-8 op amps, e.g.:
- LM358
- TL062, TL072, TL082
- LT1013
You may need to "terminate" the unused op amp:
| Component | Populate | Value |
|---|---|---|
| R7 | ✅ | (any large value, e.g. 100k) |
| R8 | ✅ | (any large value, e.g. 100k) |
Leave the Vos trimming circuit unpopulated:
| Component | Populate | Value |
|---|---|---|
| ❌ | ||
| ❌ | ||
| ❌ | ||
| ❌ |
Start-up issues
With an ideal op amp, this circuit actually has two stable configurations:
- Nominal (7V) output
- 0V output
That is, if the output pin were very slightly negative at start-up, and a rail-to-rail op amp was used, the output could "stick" at 0V and be stable there.
One way to solve this issue is to tie a very high value resistor from output to Vcc, so that some current always flows through the zener, keeping the output positive at all times. (This circuit board does not have a footprint for such a resistor, but it could be "bodged" in).
The other way to solve this is to use an op amp which cannot go all the way to 0V output when used in a single-supply configuration (i.e., a non rail-to-rail op amp). The OP07 fits this bill nicely, as it is fairly precise, and is cheap. The LT1001 (which is used in the LM399 datasheet circuits) is essentially Linear Tech's upgraded version of the OP07.
If your output does "stick" at 0V, you can briefly touch the leads of a large-valued resistor (e.g. 10k) from Vcc to output and the circuit will "start".
Ordering this board
Gerber files: zip
For this board I'd recommend ordering them as a "proto pack" from DirtyPCB's. It's about $12 for about 10 boards.
Alternatively, you can order 3 boards from OSHPark for $19: link.
More than one
Having multiple LM399 references can be handy, as measuring the difference between two references allows you to use a more sensitive range your meter.
6.5-digit meters typically use an LM399 reference internally, so when using the 10V range to measure the 7V output of an LM399 directly, one must ask if you are measuring the drift of the LM399, or the drift of your meter's internal LM399...
If you instead measure the difference between two LM399's, you could use the 1V range of your meter, which effectively attenuates the error introduced by your meter's drift by 10x.
If you are lucky and find two LM399's which are less than 100mV apart, you get 100x attenuation and 100nV resolution!
If you get very lucky and find two LM399's which are less than 20 or 30mV apart, you can use relatively inexpensive 5.5-digit meters Keithley 195A (<$100) or HP 3478A (<$125) which feature 100nV resolution on their lowest DCV ranges (20mV and 30mV, respectively).
See also gear.
No comments yet. Be the first to ask about this board.