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.

LMP92064: Inaccurate measurements from LMP92064

Part Number: LMP92064

I am using a LMP92064 on a circuit nearly identical to the LMP92064EVM BoosterPack evaluation board, with the following changes:

- SPI lines come from a 5V microcontroller with no series resistors (33 ohm resistors used in the evaluation module)

- No isolation on SPI bus

- Input to INVP/INVG voltage divider is 12V

I can communicate with the LMP92064 and read back the identification registers without issue. Reading the current returns seemingly random values (often 0xF00 or in the range of 0x0nn or 0x1nn). Reading the voltage returns values very roughly near 12V (as low as 10V or as high as 13V) with a high degree of variance so I have to take the average out of a big sample set to get an accurate voltage.

Now when I control the LMP92064EVM  evaluation board with the exact same software I've developed, using the same microcontroller over a 3.3V level translator there are no issues; current and voltage are reported accurately every time.

Given that the only significant difference between the two circuits are the series SPI resistors, could that be an issue? I'm not seeing any appreciable ringing on these signals on a scope and can read the ID registers back without error as many times as needed, so I'm tempted to say the SPI communication is fine.

The PCB layout has followed the guidelines given as closely as possible, though the shunt resistor is an appreciable distance from the LMP92064 now, about 1.5". On the evaluation board it's much closer.

Also the datasheet says DAP is a no-connect, yet the evaluation module schematic shows it tied to ground. How should it be attached?

  • Hello,

    I would need more information to fully debug your circuit. A schematic would be helpful, but here some considerations.

    a. So you are driving INVP with common-mode voltage of 12V*(1.6/(1.6+46.4 kOhms)) = 400mV correct?
    b. How are you connecting the ground of your MCU to the LMP92064 ground? In the EVM Booster Pack the U3 and U4 isolators are used to AC couple the MCU’s IGND and the LMP92064’s GND and DGND.

    According to LMP92064 datasheet section 8.2.2.1, the SPI isolation is also there to support 150 Mbps rates and provide small propagation delay necessary for bi-directional SPI communication at 12 MHz. If you are reading and writing commands at these speeds then this is another adding this isolation is a possible debugging step.

    The DAP should be connected to the ground plane as done in the LMP92064 EVM Booster Pack. This connection serves the purpose of heat dissipation. The LMP92064 datasheet’s Pin Functions table describes it as “No connection (Do not connect)” because it is not physically connected to anything in the chip. It should also be grounded as to not pick up any possible EMI as well.

    Peter Iliya
    Current Shunt Monitor Applications

  • Peter,

    I've tried SPI transfer rates down to 100 KHz with the same results. The read-only registers (manufacturer ID, etc.) return consistently good data but the voltage and current ADCs do not.

    The digital ground shared with the MCU goes to pins 7 (GND), 10 (DGND), 6 (INVG) of the LMP92064.

    The analog ground for both the shunt resistor and voltage divider bottom resistor are stitched together to the digital ground near the LMP92064.

    You are correct, I am reading a stable 400mV at the output of the voltage divider into INVP. I've tried adjusting the voltage across INCP/INCN with some fixed resistances to produce a range from 0V to 70mV and it seems to have no bearing on the data read from the ADCs.

    If I short INVP or INCP to ground the ADCs still produce fluctuating, non-zero values.

    I've got DAP grounded now and there is no change in operation.

  • Hello,

    What programmable load current are you expecting to measure? How are you generating the load current? What is the current rating of your 12V supply? How is all of this connected to your board?

    Also, how did you adjust the voltage across INCP/INCN to produce 0V – 70mV? Did you adjust the load current by adjusting some source resistor? What is your load?

    Since you have all of the grounds properly referenced and established SPI communication, the problem must involve either the setup of your current source or some layout issue with your board, specifically with the 50mOhm shunt resistor (R1 of the LMP92064 EVM booster pack). So any schematic or pictures would assist in debugging.

    Thanks,

    Peter Iliya

    Current Shunt Monitor Applications

  • For anyone else who has this issue, the problem turned out be a bad solder joint on the capacitor across REFC/REFG which was causing instability with the reference voltage. As a result REFC had been left floating.

  • I am glad you were able to find the problem.