I have recently purchased the GPIO to USB EVM Adapter and am having trouble configuring the 8 GPIO signals as inputs using the provided "USB Interface Adapter GUI-v1.10" application. Toggling the different checkboxes in the GPIO group box section and hitting Read/Write either changes the signals from an output driving high or an output driving low. I have yet to get the signals to tri-state as an input. What do I need to do to configure the 8 pins as inputs?
Also, any help on using the “USB Adapter Driver.dll” library to configure the device would be appreciated too. Are the following routines “gpioReadWrite()”, “setControl ()”, or “getControl()” correct for setting the pins as inputs an reading the values?.
The USB-TO-GPIO Reference GUIs and Libraries, which it sounds like you have, are about all the documentation we have on the USB-TO-GPIO; the original developers have moved on and we can't ask them for more information.
It does seem that the GUI you reference appears to support GPIO, but in fact doesn't, really. Your time is probably better spent trying things out with the DLL and seeing what works. I'll dig around some more to see if I can find any examples that use the GPIO, and if I find something, I'll post it here.
Sorry I can't offer more at this time -
A small usage document on the library or example code would have have gone a long way. I have been using the Visual Studio Object browser to look at the class members and make a best guess how to use them.
Thank you for investigating the issue and please post any more finding,
Yeah, I know - unfortunately, as the README says, "At this point, there is not any further documentation on this library."
I'll see what I can find...
We are also facing the same issue. We are not able to set the GPIO pins as input through the EVM GUI or through the dll calls. Has the issue been sorted? If yes can you elaborate on how to solve this.
Unfortunately, no, the issue remains. Suggestion given above is the best I can offer, or suggest you consider a commercial device that is supported for this type of usage.
I'm having a similar problem, but with trying to set outputs.
Nothing I do seems to make the IO lines wiggle. Which for a GPIO wiggler is pretty crap TBH.
Since the DLL has no documentation I have rewritten it to use the windows USB HID functions, which is working great for talking over I2C.
I have based my commands on this document: http://www.ti.com/lit/ml/sllu093/sllu093.pdf linked from http://www.ti.com/tool/usb-to-gpio
To send I2C, I write 0x00 (needed for all HID writes), 0x14 (I2C write command code), 0x20 (device address), 0x00 (register address), 0x01 (num bytes), 0xA5 (data).
In response I get 0x00 (HID thingy), 0x94 (I2C write ack), 0x00 (success) As expected, and scoping the bus shows me the I2C transaction.
However when trying to set GPIO outputs I send: 0x00 (windows HID thingy), 0x16 (read/write port 0 command code), 0x03 (all outputs except 0 and 1 (I2C lines)), 0x88 (outputs 3 and 7).
In response I get 0x00 (HID thingy), 0x8F (Expecting 0x96 here), 0x00 (success), 0x07 (expected inputs here), .... (no idea)
This is all with firmware version: 1.0.10, I managed to update to 2.0.19, but in that the device does not respond at all to the read/write port 0 command code.
Is there any more documentation for 1.0.10 / 2.0.19? Or is the firmware code available? If it is can I either see it / have a TI engineer have a look and tell me what command codes to send to get GPIO to work correctly?
Does the lack of documentation on this device mean that any new EVMs will not use this? Is there any source code for any of the programs that are provided with the EVM. The source code for the program that came with my TLC59116FEVM would be a good starting point.
Regardless if the software could be useful to learn how to write code for the USB to IIC/GPIO converter, this program (TLC59116 EVM Software.exe) has several bugs and resembles some internal test program more than it does a finished product for public use. I am somewhat mystified as to why TI would distribute such second rate software with a module that is intended to demonstrate an IC. This code seems to indicate that the product engineer for the 59116 is not interested in demonstrating his or her product in the best way possible. This software does not raise my confidence that the product being demonstrated is produced by a company that cares to do the best it can do.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.