AMC3306M05: Use for thermocouple measurement, but no open circuit detection

Part Number: AMC3306M05
Other Parts Discussed in Thread: LMT01, AMC3336, AMC131M03

Tool/software:

I was tasked to come up with an isolated thermocouple reader, capable of at least 300V of isolation. I stumbled upon the AMC3306 and decided to give the chip a shot at reading thermocouples.

The main differences from what was given in the AMC3306 datasheet are the addition of a few resistors to set the bias point for the thermocouple input. I added two 100k resistors and caps to the H_GND after the low pass filter on the INP and INN lines of the AMC3306 which *greatly* reduced noise during testing.  My schematic looks like this; nearly identical to the TI documentation except with the addition of two resistors and two caps:




To read the delta-sigma data, I'm using a Raspberry Pi RP2040 microcontroller, making extensive use of the PIO units. This is something like a 'sub-processor' for very fast GPIO access. To read the delta sigma encoding with the RP2040, I set up two state machines in the PIO. The first generates the clock for the AMC3306, with an IRQ for another state machines. The second state machine waits until the IRQ goes high, then reads the output of the AMC3306, puts it into an input shift register, and eventually pushes it out the main loop with DMA. It sort of looks like this:



The data I'm getting on this setup is impressive, and I think I've verified that this will work as an isolated thermocouple reader. My first version of the circuit was too noisy, but after the slight modification to set the bias point I believe I have something. This is a test with a Type-T thermocouple on my desk for a little over eight hours. Even though this is effectively measuring the temperature of my office (cold at night, warming up in the morning), I'm getting very tight measurements without much noise. Most of this is probably due to the Sync3 filter I implemented; I'm using 32*2048 samples with a 16x decimation ratio. 



While this will probably work for my application, I'm wondering if there is any possibility of adding open circuit detection to this device. I've read the datasheet for the ACM3306 and it appears the DIAG pin is just a self-test for the isolation barrier, correct? Would it make sense to replace the resistor between INP and HGND with a 200k resistor between INP and H_LDO_OUT for open circuit detection?

I still have some further work to do characterizing this circuit and adding the thermocouple type lookup tables, doing cold junction compensation (there's a TI LMT01 already on my test board), and comparing this with other thermocouple readers in a dry well calibrator, ice water bath, etc... But this works well so far. 

If this implementation approach would be useful to document more formally for other engineers working with thermocouples, I'd be happy to collaborate on expanding it into application note format. I've written a little more documentation on this if you'd like to check it out: bbenchoff.github.io/.../IsoTherm.html


  • Hi Brian,

    Very interesting application! 

    I've forwarded to one of my team members. We'll brainstorm a bit on how to help you handle this. 

  • Hi Brian,

    I am an applications engineer and will try to assist you here. This is really a wonderful application. Please allow me reading and digesting your github page first.

    Kind regards, Jiri Panacek

  • Brian, a few thoughts from my end.

    * You sometimes refer to AMC3336 (e.g. the circuit diagram) and sometimes to AMC3306 device. The main difference is that the AMC3306 is similar to AMC1306 that is intended for shunt-based current sensing thus the low input voltage range. (50 or 250mV). (as you correctly state on the github). Please note that they have significantly different input bias current. The AMC3306 has -48 to -28uA whereas AMC3336 has -10 / +10nA.

    * I would like to mention that we also have a new device https://www.ti.com/product/ISOTMP35. It is not a replacement for a thermocouple sensor but you may find it interesting for isolated temperature sensing applications.

    * The fact that you're able to decode the delta-sigma stream in RP2040 is impressive. I need to give it a try as I too have RP2040 for tinkering :-)

    * The DIAG pin is not able to help you for the open-circuit detection. It truly indicates only if the output of the integrated DC/DC converter is within the regulated level and if the internal communication over the isolation barrier works properly.

    * Last but not least - have you seen our AMC131M03 device and derivatives?
    (AMC13xM0y) x is either 16 or 24b resolution and y is the number of channels. They come with additional GPIO function that you could use for open circuit detection. Additionally, the other channel can do local cold-junction compensation. I believe this part would be a better fit.

    What do you think?

    Kind regards, Jiri Panacek