Post Go back to editing

AD7746 liquid level monitoring

Hello guy,

My application is similar to liquid level monitoring method that described below, pasting the ruler outside the container and monitor the liquid level inside the container.

We build our own the ruler (~5cm x ~2cm and without grounding) and connect 4 wires to EVAL-AD7746EBZ and then showing the capacity and water level on PC software "AD7746 Capacitive Level Sensor Demo v2.2", the result is what we expected but when we build a longer ruler, the capacity value is very unstable and easy to hit the maximum level 4pF when inside have water.

Below are my questions:

1)  We keep searching on Engineer Zone, but cannot find any reference circuit about EVAL-AD7746LDZ and any design guideline for the "Ruler" that may fit for our application?

2) Is it possible to calculate / design the PCB traces for measuring over 30 cm of water if just pasting outside the container?

3) Is there any way to adjust the maximum capacity level if keep using the PC software?


Thank and regards,


Parents Reply Children
  • two more questions:

    1) If following below setup, I still have no idea how to add shielding, is that only need a ground plate cover all electrodes and connect it to AGND of EVB-AD7746EBZ? 4 electrodes are connecting to two CDC (CIN1 / CIN2 / CEXCA / CEXCB).

    2) As CEXCA and CEXCB are connected to two of electrodes for compensation, does it mean no way to extend the capacity level? Because according to the App Note AN-1585, the range extension circuit is connecting to EXCA and EXCB, please advise.

    Thanks and regards,


  • You can use additional CDC to get the EXC signals.

    Other option is to use the same EXCA+EXCB for both CIN1 and CIN2.

    Nothing restricts you from experimenting with the choices that you have.

    EXCA and EXCB are generated by the same source and in sync/out of sync with small phase error caused due to internal buffer delays.

    Refer to Figure 6 in the link Liquid Level Sensing Using Capacitive-to-Digital Converters | Analog Devices for grounding.

  • thanks vesthia, we've got other questions about CAPDAC.

    Refer to Figure 29 in datasheet, Output Data approximately equal to (Cx - CAPDAC(+))

    If I connect CIN(+) only and set CAPDIFF set to 0, then:

    Q1) does CAPDAC(+) equal to CAPDAC A in evaluation software?

    Q2) if so, I don't why after changing CAPDAC A value, the output data seems not followed the equation, below is the test data. I would expect Output Data + DAC A should be approximately equal to the output without adding CAPDAC, but the result is a bit off to my target when CAPDAC is at low value and off a lot when CAPDAC is higher, do you know why? 

    Output Data (pF) CAPDAC (A) Output Data + CAPDAC(A) value (pF)
    1.055 OFF 0 1.055
    0.877 1 0.1328 1.0098
    0.712 2 0.2656 0.9776
    0.567 3 0.3984 0.9654
    0.437 4 0.5312 0.9682
    0.294 5 0.6641 0.9581
    -1.156 f 1.992 0.836
    -3.43 1f 4.117 0.687
    -4.096 7f 16.87 12.774

    Thanks and regards,


  • CAPDAC is like a negative offset to the external capacitive sensor.  So, instead of adding, you need to subtract the CAPDAC value as mentioned in the equation.

    However, in the snapshot, you have not enabled any of the CAPDACs, and so its effects are not visible on the output.

    Also, in the above results, you have not mentioned what external capacitive values you have used. Further you need to do offset and gain calibration as per your system requirements.

  • If I just connect Cx to CIN(+), still need to subtract the CAPDAC CIN(-)?

    During testing, I have enabled the CAPDACs.

    The data is getting from a small plastic cup and fill in water as a external capacitor (see below photo), and we use a copper paper to cover it as shielding.

    Therefore, if Data = ( (Cx - CAPDAC (+) ) - (Cy - CAPDAC(-) ) ), I am assuming Cy and CAPDAC(-) should be zero, then Data = Cx - CAPDAC(+), refer to the test result

    the output data of CIN1(+) is 1.055pF and CAPDAC is off, so the Cx should be 1.055pF, am I correct? 

    If so, then enable CAPDAC and set to 1, the output data is 0.877pF, apply to the equation, 0.877 = Cx - (0.1328), Cx is 1.0098pF now, why it is not close to 1.055pF? Anything I missed or misunderstanding something?

    Thanks and regards,


  • Also, about the capacitance measurement, C = E0 x ER x (a x b) / d, I'm assuming E0 and ER is constant in my testing, but when I change "d", the C seems not changed as expected. I know it may due to the noise in the testing environment, any other factor that may affect E0 and ER?

  • You need to apply offset and gain error calibration to find the true capacitance whether with CAPDAC enabled or disabled.

  • E0 is a standard. 

    ER will change depending on the density ratio of the mediums.

  • I see, so if the medium is the same, ER should be the same, thanks!

  • so the output data is including offset and gain. Let say if the output data is 1.055pF with CAPDAC disabled. Offset is 0 and Gain H is 0x65 and Gain L is 0x0A, how can I find the true capacitance?