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.

FDC1004: Capacitance-to-digital converter for capacitive sensing

Part Number: FDC1004
Other Parts Discussed in Thread: ENERGIA, LDC1614

Hello there,

By using this FDC1004 4-channel capacitance-to-digital converter, can I read the change of capacitance of a capacitive sensor with 0.01 pF resolution?

My sensor shall be connected to FDC1004 with about 1 meter long micro coaxial cable and measure the change of capacitance under water. 

And need the information of MCU compatible with the FDC1004 and/or any other interface to complete this setup.

  • Hi Tae,

    The meter long cable will introduce a great deal of parasitic capacitance to your system, which could possibly saturate the maximum capacitive system offset. It will likely severely reduce your resolution. The FDC1004 can measure 0.5fF capacitance shifts in very low noise environments. I would recommend testing the FDC1004 EVM with your cable and sensor setup to determine a noise floor for your measurements.

    Regards,
  • Thank you Kristin,

    As you recommend, will test with FDC1004 EVM first.
  • Kristin,

    As you recommended, have purchased FDC1004 EVM and am investigating how it works.

    There are two questions on this product.

    1. My capacitive sensor is connected to a long coaxial cable. Do I need to break the "touchless sensor" part down and then connect the coaxial cable of my sensor to one of CINs and GND of the CNFDC1004?

       (Actually the coaxial cable is connected to the bottom and top plates of my capacitor, respectively)

    2. It seems that the touchless sensor of the EVM, as received, is connected to the FDC1004 by CIN1 and Shld, and CIN4 and Shld only. How then the EVM generates the capacitance values of all four channels?

        (the software has been installed and ran to collect the values of all four channels as the manual describes)

  • Hi Tae,

    1. Yes, in order to test the effect of the coaxial cable on your noise floor, you would need to connect it between the FDC1004 section of the EVM and your sensor. You should connect the sensor to one of the CINs and one of the SHLDs. You should not ground the sensor through the coaxial cable.

    2. That is correct: only 2 of the 4 available channels of the EVM are connected to sensors. If you touch the points where the other signals (CIN2 AND CIN3) are broken out while the EVM is streaming data, you should see the FDC1004 respond. The channels are still being driven and measured; they just don't have sensors connected. If you connect sensors (which can be a simple as a piece of copper tape), these channels will be fully functional.

    Regards,
  • Hi Kristin,

    For an initial test, the EVM is connected to my capacitive sensor by about 20 cm long micro coaxial cable.

    As you recommended, the coaxial cable is connected to CIN1 and Shld. The capacitance of my sensor including the coaxial cable is about 0.8 pF, which is bigger than the capacitance (~0.4 pF) of the EVM itself without the touchless sensor part. However, it seems that the capacitance of my sensor and the coaxial cable is smaller than what I expect. 

    My sensor is actually pressure sensor that the gap between the top and bottom plates changes by the change of applied pressure. Do you think that there is no need to change this configuration (connection to CIN1 and Shld) to read the change of capacitance by the change of applied pressure?

    Then, what is the main purpose of GND here? And please let me know if there is something I have to check first.

  • Hi Kristin,

    I am testing differently. At this time the coaxial cable is connected to one of CINs and GNDs. Actually, a commercial capacitor is being used instead of my fabricated capacitor. It provides reasonable capacitance of the commercial capacitor.

    By the way, how can I define an offset capacitance? The manual says that it is available to setup up to 100 pF as an offset capacitance. I tried to setup an offset capacitance in the column of "Calibration/Offset Capacitance" on the configuration page, but it seems that it accepts only up to 16 pF. How can I increase the offset capacitance up to 100 pF? Would you please give me your comments. If there is a manual explaining this matter, it will be greatly helpful. 

    Thanks

  • Hi Tae,

    In answer to your first question, you should use your original setup with your coaxial cable, though you may wish to ground either the top or the bottom plate (whichever side acts as the target for your capacitive sensor). The purpose of the GND pin on the FDC1004 is just to ground the chip to the system ground. Often the target is indirectly connected to earth ground, so it will form a capacitor with the charged sensor plate. The target ground does not need to be part of the system ground. Additionally, if your sensor is not shielded through a SHLD pin, it will not be as resistant to noise.

    For the offset capacitance, you should use the CAPDAC. The offset calibration you are working with is used to set the +/-15pF full scale input range (in conjunction with the gain calibration). This is to account for parasitic differences between each channel. For a common-mode capacitance, you should use the CAPDAC. Your output data will be: DATAx = CINx - CAPDAC. Section 8.3.2 of the datasheet describes how the CAPDAC works, and section 8.6.2 describes how to configure the CAPDAC.

    Regards,
  • Hi Kristin,

    Have tested with a commercial capacitor (5 pF) on the both ways. By the connection to CIN and GND, it measured about 5.3 pF (0.3 is due to a long leg of the capacitor), which is a reasonable value. But, by the connection to CIN and SHLD, it is about 0.7 pF only.

    And, with the 20 cm long coaxial cable and the connection to CIN and GND, it measured about 24 pF, which is expected. But by the connection to CIN and SHLD, it measured only about 0.8 pF. As you mentioned, by shielding there may be a minimized nose level. However, in reading accuracy of capacitance how can I explain the too small capacitance by the connection to CIN and SHLD?

    Best,
    Tae
  • Hi Tae,

    Are you connecting the commercial capacitor between CIN and SHLD? Ideally, there should be no voltage difference (and therefore no capacitance) between CIN and SHLD. The allows the parasitic capacitances to form between SHLD and ground and not between CIN and ground.

    Your sensor should not be a complete capacitor. It should be two plates of copper, one connected to CIN and one connected to SHLD. The target object will form the other plate of the capacitor. I would suggest reading sections 8 and 9 of the FDC1004 datasheet for more information about designing your sensor.

    Regards,
  • Hi Kristin,

    Is there any way to increase the offset capacitance more than 100 pF by connecting an external capacitor? 

    Best,

  • Hi Tae,

    Unfortunately, it's not possible to increase CAPDAC beyond 100 pF.

    Regards,
  • Hi Kristin,

    I would like to ask you about sampling speed. In the manual it says that by the software 400 sampling is available in a second as a fastest speed. By the way, I observed the total data points collected for a fixed time (ex. 3 minutes) at the 400 sampls/S mode and then counted the number converted to capacitance. Realized that it has only about 6 data points per second.

    Is there anyway to have more data points per second? For example, can I have about 50 data points per a second?

    Thank you for helping me. 

  • Hi Tae,

    The GUI does not output every sample collected by the FDC1004. This is largely to make the graphics easier to handle. If you need to view all of the samples collected by the FDC1004, you will need to write different firmware for the MSP430 or another MCU.

    Regards,
  • Hi Kristin,

    Does the EVM  have MSP430 inside? I do not see MSP430 from the block diagram of the EVM. Should I purchase and connect to the EVM for a different firmware?

    Best,

  • Hi Tae,

    Yes, the EVM does have an MSP430. You can find it in the schematic or the bill of materials in the FDC1004 User's Guide. You do not need to purchase a different MCU unless you do not wish to use the MSP430 on the EVM.

    Regards,

  • Hi Kristin,

    Is it "FDC2x14_LDC1313xx ...." the one for MSP430 firmware you are suggesting? As the manual describes there are only two firmware files.

    Best,

  • Hi Kristin,

    I guess that the one I mentioned does not work for me. The firmware is to measure inductance of circuit. After upgrading with the firmware I mentioned, the measurement software is continuously disconnected. How can I go back to the previous firmware or the firmware for MSP430 you suggested?

    Best,

  • Hi Kristin,

    After uploading the firmware, the EVM has Red LED instead of Green LED. I guess it mean that the EVM is out of service anymore. Would you please check it.

    Thank you,

  • Hi Tae,

    The firmware you used is meant for the FDC2x1x devices, not for the FDC1004. I would need to send you the proper firmware file via private message in order to restore the functionality of your EVM. However, I am only able to send you the firmware .txt file, not the source code. In order to achieve the sample rate you want you would need to write your own firmware.

    Regards,
  • Hi Kristin,

    You say that I need to write my own firmware in order to achieve the sample rate I desire. It is a little bit hard to understand. Would you please let me know how to do that? Or Can you upgrade the EVM with the firmware you are mentioning at your company and sell it to me directly?

    Best,

  • Hi Tae,

    Unfortunately we cannot write custom firmware for the EVM. You would need to write firmware for the MSP430 (or another MCU) that will configure the FDC1004 using I2C. You would need to have the MCU read the FDC1004's data registers at your desired sample rate. We have some sample code available on the FDC1004 product page under the Tools & Software tab.

    Regards,
  • Hi Kristin,

    You say that the EVM I purchased has already MSP430 inside. And then, I understand that the EVM has already the MSP430 and the MCU reading FDC1004. I guess that it is already ready to update the FDC1004 initially installed to the device at your factory, if the initial FDC1004 installed to the EVM device, as received, is need to be updated with the code  you are mentioning. Would you please give me some comments about this?

    Is this "Capacitive Sensing Sample Code (Energia) v1.1 (Rev. A)" the code you are talking about? 

    Best,

  • Hi Tae,

    Yes, the sample code you found is the code I was talking about.

    Regards,
  • Hi Kristin,

    I guess that the code must be written under the section of registers of the EVM GUI software, for it is not a firmware?

    Best,

  • Hi Tae,

    The code is firmware. It must be compiled and can then be uploaded to an MSP430. It is completely separate from the GUI. It will only run without modification if you buy an MSP430 Launchpad. I would recommend reading the Getting Started Guide that came with the code and the comments in the code for further help.

    While we are happy to support device-specific questions, we do not have the bandwidth to support all questions, especially general engineering questions. If you encounter issues with the device's performance or have questions about the contents of the datasheet or any other documents, please feel free to post them. However, we are unable to assist you in each step of the system design process. I believe that I've helped you as much as I can with this thread.

    Regards,

  • Hi Kristin,

    I have the same problem where I updated the firmware on my FDC1004 with "FDC2x14_LDC13xxRevB_LDC16xxRevB_EVM_Firmware.txt". Now my device is detected as a LDC1614 and doesnt work as required. Can you send me the firmware for the FDC1004. I tried searching it but couldnt find it.

    Regards,
    Don Sooriyaarachchi
  • Hi Don,

    I will respond on the new post you created here:

    Regards,