I'm looking for a cheap and easy way to monitor temperatures and came across the Microchip EMC1403 which interfaces to general purpose diodes (or transistors with their base tied to collector/emitter respectively).

This fits my application quite nicely as the sensing points are at close distance but outside the PCB and only two wires are needed per sensor. Also, I expect leaded transistor packages (such as TO-126) to be resonably easy to handle and thermally bondable to the components to be monitored.

However, the datasheet does not go into much detail on which diodes/transitors are suitable and only mentions 2N3904 NPN or 2N3906 PNP general purpose transistors.

I wonder whether there are any specific characteristics that make up a good temperature-sensing transistor/diodes? I'm especially interested in higher-power devices because they come in cases which I expect to give better thermal-bonding.

Is there a reason for using transistors instead of simple diodes?

  • \$\begingroup\$ A stud diode would give great thermal bonding ;) \$\endgroup\$ May 12, 2016 at 9:01
  • \$\begingroup\$ @IgnacioVazquez-Abrams very true but slightly too bulky. :-) \$\endgroup\$
    – Arne
    May 12, 2016 at 9:03

4 Answers 4


You can use many (but not any) type of BJT and get good results. You should not use general parts like 1N400x 1N4148 1N914 diodes or rectifiers or RF BJTs or OC71 germanium transistors or massive 2N3055 power transistors for this kind of \$\Delta\$-Vbe circuit.

The measurement principle here is to measure the difference in the diode-connected-transistor forward drop at two currents perhaps a decade apart, which is far more predictable than simple Vbe measurement. The difference has a well-defined behavior and unadjusted error can be less than 1°C, even for random (suitable) transistors. That's impossible with a simple Vbe measurement, and of course we always want to avoid individual calibration.

The trade-off is more complexity (it's all on one chip, so not your problem) and about 1/10 the voltage sensitivity (more like -200uV/°C than the -2mV/°C that everyone knows), which requires auto-zero circuitry on the chip.

enter image description here

A diode-connected transistor behaves much more like an ideal diode than, say, a 1N4148. In particular, the ideality factor \$n\$ is 1 (typically something like 1.004 for a 2N3904) rather than somewhere between 1 and 2. For this reason you'll also find diode-connected transistors used in log and antilog circuits.

\$\Delta V_{BE} = n \frac{kT}{q} \ln(\frac{I_{HIGH}}{I_{LOW}})\$

If \$n\$ = 1.0, kT/q = T * 8.61E-5, Ihigh/Ilow = 10 then

\$\Delta V_{BE} = 198\mu \$V/°C

Using a diode will give you 50-100% error. In absolute temperature.

The other factor that affects accuracy of this kind of circuit is the base resistance. To minimize this error, use a medium power transistor such as a 2N4401 or 2N4403 or 2SC1815 or C8050 etc. etc. (PNP or NPN will both work since it's a 2-lead connection). Silicon types only, of course. You could use a higher power transistor if you want a tab to bolt down, but leakage may begin to affect the measurement at very high temperatures.

  • \$\begingroup\$ The question asks Can any BJT be used for temperature sensing? so doesn't that make the headline answer 'Yes'? \$\endgroup\$
    – nekomatic
    May 12, 2016 at 12:22
  • \$\begingroup\$ @nekomatic Is that better? ;-) \$\endgroup\$ May 12, 2016 at 13:08

What you're using here is the properties of the PN junction in the device and this intrinsically has a temperature dependancy (of typically -2 mV/Kelvin).

This value varies over the current through the device and the doping profile of the PN junction and probably some other factors as well. But the temperature depenancy will always be there and is quite linear over a wide temperature range as well (like from -50 to 200 degrees C).

I think that as long as you can calibrate the device you're using together with the EMC1403 (so that the right current will flow through the PN junction) you can make this work.

You may not have to calibrate each individual device depending on the accuracy you need. You could calibrate 10 devices, see what you get, use the average of that as a standard calibration and then check with more devices if that gives the accuracy you need.

But in my opinion you can use almost any silicon based diode or transistor you want.

As long as you can properly thermally connect the sensor device to that which you want to measure, you do not need a large sensor device or such for good thermal bonding. The sensor will not dissipate much power so if it has a low thermal mass it will follow the temperature of whatever it is mounted on very quickly.


Page 38, beta compensation is your friend. This does sound like a very expensive solution to measure temperature but as long as it's a silicon device and majority carrier (diode or BJT, but there is a better word for this family of devices) you should be able to sense your temperature. Depending on doping level you will need to adjust that beta compensation though.

  • \$\begingroup\$ Silicone is what is used by some women's body parts, car maintenance etc, silicon is what we use in electronics ;-) \$\endgroup\$ May 12, 2016 at 9:16
  • \$\begingroup\$ @winny The part is sold at ~0.75€ for single parts which fits my bill. Also it doesn't seem to require much additional circuitry (board space) besides the usual decoupling and maybe a filter cap for each channel. \$\endgroup\$
    – Arne
    May 12, 2016 at 9:20
  • \$\begingroup\$ @Arne. Then you have considered that/isn't making series in the milions. Good. \$\endgroup\$
    – winny
    May 12, 2016 at 9:28

What Spehro said,
I wanted to add that I've used the TIP31C (TO-220 pack) as a temperature sensor with good luck. (C-B shorted) Here's a link to my calibration document. (I can do a single point calibration... but have to measure the curve once. I've tried a few different TIP31C date codes (all from Fiarchild) and 99% of them fit nicely on the curve.
I've also looked at the X10 current trick. (Currents in the 1uA to 100 uA current range seem to work best.) But there is typically an error of 0.5 to 1%, due to the non-ideality factor discussed by Spehro (1% of 300K is 3K)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.