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.

LMK05318: TICS PRO I2C Communication Setup

Part Number: LMK05318
Other Parts Discussed in Thread: USB2ANY,

Hi,

If I manually enter the I2C address of my device (0x65) and click "Set I2C Address", how can I verify that I am connected to the device at that address? Should I see a message in the bottom left window of the GUI?

Also, when using the "Scan I2C Bus" option on a bus with more than one device, does it default to the lower address?

Thank you,

Ishraq

  • Hi Ishraq,

    We will get back to you in next week.

  • Hello Ishraq, 

    How was the I2C address "manually entered"? Is it through EEPROM programming or through GPIO1? 

    Thanks and regards,

    Amin 

  • Hi Amin,

    Apologies for the confusion. I meant manually entering the I2C address in the TICS Pro GUI to connect to a device on the board using the USB2ANY dongle. 

    I have a customer who has two LMK05318 devices on the I2C bus and trying to load the tcs images using the GUI. The LMK addresses are set with the GPIO1 pin, floating or pulled down per the datasheet. Since there are two devices on the bus (0x64, 0x65), the "Scan I2C Bus" only finds the one at address 0x64. So the customer is using the "Set I2C Address" option to connect to the other device, shown below. How can we verify that the GUI is connected to the device at the desired address? Should we see any message on the bottom left window of the GUI? 

    Thank you,

    Ishraq

  • Hi Ishraq, 

    I think I understand better now, they're already using the GPIO1 to have 2 different addresses for the 2 devices. However when they use Scan I2C address, it just finds and shows the 0x64 address. 

    After they use the set I2C address, if they scan again, what happens? 

    Can they try set and just toggle a bit that would be able to identify which chip they're talking to? Something like a reset or an output channel disable can easily be identified and therefore confirm which chip is getting programmed. 

    Thanks and regards,

    Amin

  • Hi Amin,

    Yes, that is right. When they scan again after using the set I2c address, it only finds the one at 0x64 and changes the address to that. They were able to program their devices by setting the I2C address and then writing to EEPROM, but it could be confusing since there were no messages to confirm the communication. 

    What is the recommended way to program multiple devices on a bus through the GUI and USB2ANY dongle? Is the expected behavior to see both devices when they scan for the address?

    Thank you,

    Ishraq

  • Hi Ishraq, 

    I've confirmed that scan I2C address will always stop at the lowest address found, it assumes there's only 1 device on the I2C bus. So the work around is to set I2C address and program other device, exactly as they were doing. Unfortunately there's no way of confirming that the desired device is indeed being programmed, if you do scan again it'll go back to the original (lowest) one found. 

    Perhaps we'll have something that would enumerate all devices found/ACK and allow for the user to select which chip they want to communicate with, but that is not currently supported with GUI. 

    Thanks and regards,

    Amin 

  • Hi Amin,

    Thank you for the confirmation. Yes, a feature like that in the future versions of the GUI would be very helpful.

    Thanks for your support,

    Ishraq