0
\$\begingroup\$

I'm currently working on a small project using LMT86 and MCP3008 as a temperature sensor for Raspberry Pi. The schematic is very simple:

Schematic for connecting LMT86 to MCP3008

So a couple of questions that I have:

  1. The MCP3008 datasheet, "6.4 Layout Considerations" mentioned that The 3.3V power comes from the Raspberry Pi GPIO 3V3 pin. Is it necessary to use C1 to filter any potential noises? Or Raspberry Pi could guarantee that the 3V3 pin is noise-free?

  2. The LMT86 datasheet, "8.4.3 Capacitive Loads" states that

    Without any precautions, the LMT86 can drive a capacitive load less than or equal to 1100 pF as shown in Figure 11.

    And since the MCP3008 sample capacitor is only 20pF (page4), it should be okay without using a resistor between the LMT86 OUT and MCP3008 CH0. Did I read it correctly?

  3. Regarding C2, 9.2.1.1 Design Requirements said that

    When the ADC charges the sampling cap, it requires instantaneous charge from the output of the analog source such as the LMT86 temperature sensor and many op amps. This requirement is easily accommodated by the addition of a capacitor, CFILTER.

    And page3 said the "Analog Input Sample Time" is 1.5 clock, and page4 said the maximum "Clock Frequency" is 1.35MHz. Using a formula found here: (R_on + R_out) * C_sample < 1 / resolution * T_sample, where:

    • R_on = 1000Ω (page4, "Switch Resistance"),
    • C_sample = 20pF (page4, "Sample Capacitor"),
    • resolution = 10bit,
    • T_sample = 1 / 1.35MHz (the actual SPI clock is only 0.1MHz with the adafruit_blinka driver),
    • Although I didn't find the correct number of R_out, by testing I knew that LMT86 OUT pin generally has about 1~2V in my use case, and the max output current is 7mA (page5), so I guess R_out is a couple of hundred to one kilo ohms. Take R_out = 1kΩ

    then (R_on + R_out) * C_sample = (1000 + 1000) * 20e-12 = 4e-8, and 1 / 100 * T_sample = 0.1 * 1.35e-6 = 13.5e-8, so the formula holds even with the maximum clock frequency MCP3008 supports.

    So my question is, does this mean C2 is unnecessary?

    My tests showed that using or not using C2 yields the same result.

\$\endgroup\$
2
\$\begingroup\$
  1. Yes, it's needed, usually you don't want to argue with datasheet suggestions, they are there to make the device perform according to what is promised. These devices consume current in gulps based on clock they operate at, and any wiring you add will make voltage noise higher at the chips unless capacitors are used. Besides, Raspberry Pi has a switch mode power supply, so it will be extremely noisy. Prepare with space for extra capacitors and maybe some filtering options.

  2. The sensor can drive a capacitive load of 1100 pF that is connected all the time. The ADC input is a 20 pF capacitor that will be switched on and off periodically to the sensor output for charging to sample the voltage. The LMT86 datasheet specifically warns about connecting switched capacitance ADCs. However, as the ADC input switch has about 1kohm resiatance, it should work directly. But it does not hurt to draw an extra 0 ohm resistor there if you need to change it to something larger.

  3. It may be unnecessary. But you can leave a place for a capacitor should there be need for it. If the LMT86 did have a very high output impedance, it will need a capacitor. For example, rough calculations would be that to charge 20 pF so that the voltage does not drop more than half of 10-bit step is that take 20pF and multiply with 2^11 and you have about 47nF.

\$\endgroup\$
1
  • \$\begingroup\$ Thank you for your great answers! I'll follow your suggestions in my design! \$\endgroup\$
    – charlee
    Apr 6 '21 at 21:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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