This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LDC1614: Nonlinear crosstalk when multiplexing sensing coils on one channel

Part Number: LDC1614
Other Parts Discussed in Thread: CD74HC4051-Q1, , TS3A5017

Since March I have built a prototype circuit using one LDC1614 chip to sample 25 Coils. on Channel 0, 1 and 2 I connected an 8:1 multiplexer with 8 coils each and on channel 3 a single coil (reference coil) without a mux as normal. It works already quite nicely. There is a little crosstalk, as I expected, in the order of 0.05% of the induced signal from neighboring coils in the mux. I can tolerate that in my application. The used mux are also from Texas Instruments (CD74HC4051-Q1), they should switch fast ( max. 340 ns ).

On the other hand: In my circuit I observe an other special phenomena that I can not completely understand and I do not have an optimal solution for it now. It is difficult to explain in few words, therefore I also attach a document that explains everything in more details for those who are interested.
The phenomena occurs only within a channel, meaning different channels of the LDC1614 do not influence each other. Considering channel 0, whenever a coil is sampled on this channel the next time this channel samples a coil the previous measurement influences the actual measurement. For example when I attach a mux to channel 0 and 4 coils to this mux, always the measured value of the previous coil strongly Influences the next coil. I think did not violate any timing conditions, I carefully checked them and set long safety margins. For safety reason I put the LDC1614 to sleep mode, then update mux selection bits, then wait some milliseconds, then start the LDC1614 again with a long settling time for all channels. There is always this strong nonlinear crosstalk from the previous sampled coil to the next one. It is not in the physical layout because when the sequence of sampled coils change, this special crosstalk follows the sequence and affects physically different coils than before.
The only way I found to get rid of this special crosstalk is to shut down the LDC1614 and restart + re-initialze it every sampling round instead of putting it to sleep-mode. I think the LDC-chip internally adapts the "Resonant Circuit Driver" part of each channel to the coil that is connected to it for more stable measurements, but if this connected coil is switched through a mux every sampling round a nonlinear special crosstalk occures from previous coils to the next one.

- Are there other ideas what causes this special crosstalk?
- What else could be done to solve the special crosstalk problem? Preferable with less time loss.

Thank you for advices.


More details in Attached Document.

Crosstalk_report.pdf

  • Hello Thomas,

    Thanks for the detailed question. What's still unclear is what the signals look like on an oscilloscope. It could be the case that when you switch from one channel of the MUX to the other there is still some residual LC oscillation from the previous LC tank that is physically connected by new LC tank. You've shown this connection already in blue. Try also increasing the SETTLE_COUNT to help with any transient effects.

    Additionally, what you could considering doing is using a differential MUX like the TS3A5017 so that each LC tank is completely isolated from the others. We've used this MUX for the LDC1614 and it works quite well.

    Regards,

    Luke

  • Hello Luke,

    Thanks for all the ideas, I will have a look at the coil signals with an oscilloscope and also try out maximal SETTLE_COUNT time.

    Regards,

    Thomas

  • Hello Luke,

    I did check the oscillation on the coils with an oscilloscope. All the coils have oscillation on them whenever the LDC1614 is sampling even if another coil is sampled at the moment. This happens because all the LC tanks are physically connected on one side (blue connection as you mentioned), but the resonant frequency is manly determined by the active coil connected on the other side trough the mux, the influence from all other coils is in the order of normal crosstalk as I mentioned before and the previous coil did not had a detectable stronger influence on the following one than any other coil. With the differential MUX you proposed I could get results with much less of this crosstalk, anyhow this effect is so small I can tolerate it in my application. The only thing I want to get rid of is that strong special crosstalk mentioned before. The only way so far is to shutdown and restart the LDC every sampling round.
    Without shutting down the LDC chip but with the sleep mode (the way special crosstalk occurs) I did some more experiments/ tests:
    1. I set SETTLE_COUNT to the maximum value: It did not help against special crosstalk.
    2. I put additionally 1 second delay between every sampling round (meaning 1 second no signal on all coils, then sample a channel once, then repeat): It did not help against special crosstalk. This way there is surely no residual LC oscillation from the previous LC tank because the signal is completely off for a hole second.
    3. I let the LDC chip sample two times the same coil in a row and only reading out only the value in the end: It did not help against special crosstalk.
    4. I let the LDC chip sample two times the same coil in a row and also reading out values in between: The first value is affected by special crosstalk, the second value is fine. (This way the time loss is similar to the restart...)

    I think the differential MUX will help against normal crosstalk. But the special crosstalk lies within the LDC1614, it adjusts internally to the seen load. But if you can assure me that in your circuit there is no influence of the previous sampled coil to the following one I will rethink my opinion.

    Thanks for you help & ideas.
    Best regards,

    Thomas