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: FDC1004 does not respond after initialization on Arduino Uno (3.3V, powered via LP29501

Part Number: FDC1004
Other Parts Discussed in Thread: LP2950

Tool/software:

Hello, I am using an Arduino Uno powered at 3.3V (via LP2950 voltage regulator) and trying to interface with an FDC1004 via I2C.

My setup:

  • Arduino Uno @ 3.3V (powered by LP2950 regulator from a 5V source)

  • FDC1004 powered by 3.3V from the LP2950 (VCC-GND confirmed 3.3V with multimeter)

  • SCL/SDA connected directly (no level shifter, as Uno is at 3.3V)

  • 5kΩ pull-up resistors from SCL and SDA to 3.3V

  • I2C address: 0x50 (confirmed with I2C scanner, stable detection)

  • Decoupling capacitors:

    • 0.1μF + 1μF capacitors from LP2950 VOUT (3.3V) to GND (placed close to FDC1004)

    • 0.1μF capacitor from LP2950 VIN to GND

The problem:

When I run my initialization code (writing to MEAS1 config and FDC config), the program stops right after printing "FDC1004 initialization started". It appears to freeze at Wire.endTransmission().

What I have tried:

  • I2C scanner repeatedly detects 0x50 without issue

  • Continuity test between Arduino and FDC1004 SCL/SDA pins: no breaks

  • Confirmed 3.3V output from LP2950 remains stable during communication

  • Verified decoupling capacitor placement near both the FDC1004 and the LP2950

My question:

What could cause the FDC1004 to lock up at I2C write (stuck at Wire.endTransmission()), even when I2C address 0x50 is consistently detected?
Are there any timing, startup, or configuration considerations for the FDC1004 in this setup that I might be overlooking?


  • Hello Bunpei,

    Does this issue occur if you write to FDC_CONF or one of the OFFSET_CAL registers?  It could be there is an issue with the code.  Also I would try monitoring the communication with an oscilloscope to see if there is anything peculiar occuring.