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.

INA228: I2C communication using TI SCB controller

Part Number: INA228

Tool/software:

I am using the SCB controller to talk to the INA228 that I have on my board (via I2C) by wiring the SCL, SDA, 3.3V and GND from the INA228 to the SCB. I use the same GUI as the eval board. I set the address SW0 and SW1 to match the address of my INA228. I try to configure the registers to my desired setting in the GUI. However, when I click "Write All Register", the "MODE" under ADC_Config changed to "SHUTDOWN". I observe no clock signal at the SCL. Can you advise if I can actually use the SCB this way? What could be wrong that cause it to go to SHUTDOWN? Below is my INA228 schematic. Thanks

  • Hello,

    Yes you can use the SCB this way, it sounds like there is a connection problem somewhere.

    Could you send me a screenshot of the home screen with the SCB connected? I am specifically trying to check that the connected icon shows the SCB is connected to the GUI with no problems.

    You should also check that the SCL line is physically connected to the right pin on the SCB and that there are no physical connection issues here.

    Let me know if this resolves your issue,

    Levi DeVries

  • Hi, 

    The hardware is connected. 

    I am very sure that the SCL line has the correct connection and no physical connection issue (checked continuity with DMM). Blue wire is SDA, yellow is SCL, red is 3.3V and green is GND

    I have tried bypassing the onboard INA228 and wire out my sense resistor onboard to the INA228 EVM and the I2C communication is working fine. I can program the registers and monitor current, voltage etc.

    The following are the GUI when I am connecting the SCB to my onboard INA228.

    Setting:

    Register config that I wish to write (I just changed the first 3 registers for this test):

    Once I pressed "Write All Register", the Mode changed to "Shutdown". When I probed the SCL using scope, SCL is always low (0V) and SDA always high (3.3V)

  • Hello,

    The first screenshot you showed me indicates that the SCB connection is good but that the SCB cannot connect to the INA228 over I2C. Additionally, if the SCL line is always being held low it indicates that the communication bus is grounded somewhere. As the EVM worked for you, there is most likely a short to GND somewhere on the board you are trying to connect to.

    If you cannot find any GND shorts, it is also possible that the device has ESD damage from handling or board assembly, so you could also try swapping the INA228 used with a new device.

    Let me know if this solves your issue,

    Levi DeVries

  • I have checked my board for any GND short, and there's none.

    I did not do the swapping. I have multiple INA228 on my board, I have tried to communicate to each of them but all showing the same symptoms. They all have unique address

    Anything else I should try?

  • Hello,

    I have checked my board for any GND short, and there's none.

    Sorry I should have been more explicit - there may also be a strong (compared to the Pull-up resistors) resistive path to ground causing this issue.

    If the SCL line is being pulled down from somewhere on the bus through a resistance or a faulty device it may not look like a short to a DMM, just a resistance lower than the pull-up resistors. If the SCL line is being pulled low that is the problem with the communication bus you are seeing - while the bus is held low the SCB cannot communicate with the I2C devices on the bus and you will not be able to read their registers. If you can determine what device is holding the bus low, you will be able to remove it and the bus should start working again.

    Let me know if you have any more issues,

    Levi DeVries