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.

INA219: INA219

Part Number: INA219

Hello,

I am using multiple INA219 devices with I2C comms.

I am able to program the calibration register and read the value back. This works well on all devices.

However, I get intermittent ZERO value reads for Current, Power, and sometimes for VBus registers.

Power to INA219 is sources full time after power up.

After a single configuration transactions after start up, I periodically read current, shunt, bus and power registers.

The power register is the last register I read prior to the next read which is after 5 seconds. so no measured/calculated data is cleared.

I see lots of intermittent zero values.

Would you please help what causes the read not to be stable?

Thank you in advance for your help and support.

Best regards,

Ziggy

  • Hello Ziggy,

    It's possible that you are right on the edge of a timing or voltage threshold.  I recommend testing your system with a slower I2C frequency to see if it works better.  If it does, you may need to lower your I2C pullup resistors.  Also, make sure that the communication lines are well within the voltage threshold for testing to see if that is an issue (both for logic high and logic low).  If you have a long transmission line between the MCU and INA219 then you may need pullup resistors at both ends.  If these suggestions don't work, then it would be good to take a scope shot and compare the transmission wave form with the bus timing diagram definitions in the datasheet.

  • Good afternoon Mitch,

    Thank you very much for your response. I did the firmware mod like you suggested and it seems it has gotten a bit better but still getting some zeros. I was running it around 20K baud rate and reduced it to 15K.

    The sensors are hard to reach. when I get the opportunity I will place a scope and observe the timing. I will let you know the outcome.

    Thanks again and best regards,

    Ziggy

  • Ok, glad to hear that slowing it down was working some.  That means that lowering the value of the I2C pull up resistors may also help you.