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.

USB2ANY: Possible to usa as a I2C-Master Device with a GUI and a Remote-Inferface (Software e.g. C++)

Part Number: USB2ANY

Tool/software:

Hello,

 

I am searching for an alternative I2C-Master Device for my present application and would like to substitute my I2C-Master.

So I found the product USB2Any from TI and thought that would be the perfect one.

 

1.: Question: Is it possible to substitute my present I2C-Master in my previous Applikation?

2.: When (1. = yes). How does the controlling of the I2C Master work?

      First for Debugging at the Desk (at personal Computer) for example a GUI? And second as a remote Inferface, controlling via Software C++?

 

For better understanding: Present I2C-Master is IPort from MCC or RS232-I2C-Master from Coptronix.

 

 

Sincerely und greeting from germany,

Manuel

  • USB2ANY is an EVM evaluation tool first and foremost. We don't recommend incorporating USB2ANY or its software into products or applications beyond internal evaluation and debug, since support for the tool is best-effort only, and CE certification for the tool is predicated on its use as an EVM evaluation tool so available volumes are extremely limited. Please keep this in mind in case it impacts your planned use case.

    USB2ANY could potentially work as an incidental alternative to I2C-Master from IPort, or RS232-I2C-Master from Coptronix, with some caveats:

    • Only 3.3V I/O is supported - you'd need to bring an external level shifter to communicate with devices with other bus voltages
    • Maximum packet size is 54 bytes for write, and around 47 bytes for read. Repeated start write-then-read transactions are more limited, allowing a 1-2 byte preamble write, or limiting total bytes to 32 for the sum of the write and read transaction.

    Assuming these caveats are acceptable, the USB2ANY SDK supplies both statically- and dynamically-linked binaries, and an API to communicate with the USB2ANY.

    The SDK for v2.8.2.0 of the firmware (which includes an API manual, schematics and pinout of the USB2ANY box, status code explanations, the static and dynamic linked libraries, several example projects in various languages, and a few auxiliary binaries such as a firmware loader and an explorer GUI) can be found here: https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/964057/tmp117evm-usb2any-sdk-required-to-safely-work-with-the-module/3562141#3562141

    For a deep dive on I2C transaction APIs in USB2ANY, see here: https://e2e.ti.com/support/amplifiers-group/amplifiers/f/amplifiers-forum/1389829/usb2any-multibyte-i2c-transactions

    The typical order of operations for USB2ANY usage is:

    • Call the u2aFindControllers API to detect attached controllers
    • Call the u2aOpen API to open a connection to a controller and receive a handle
    • Call the u2aI2C_Control or similar APIs to set up the bus peripherals to be used
    • Call the relevant communication APIs
    • When finished, call u2aClose API to release the handle and close the connection to the device