From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Question about FTDI cables

Hello guys. I have some trouble with the FTDI cables. I created a small circuit on a breadboard. I'm sure about the connections I created are good but I see something strange.

On the RTS I put a led between it and the ground. The led lights on while I connect the first time the Usb to the pc and in general the RTS is set as unasserted, while it should light on when it is asserted.

I also put a switch between CTS and the ground. In the way it is set on the breadboard it should set CTS at 1 without be pressed, in the labview debug I see that it do the opposite.

Considering that I'm sure about my circuit since I have used a tester to see if the connections and the logic was good...the question is how it is possible?is there something that am I missing?

 

Attached there is the circuit I created.

0 Kudos
Message 1 of 17
(2,891 Views)

Hi Inu..

 

What are you trying to do? I can only see here from your information a little circuit and you trying to connect it using the USB port. It is not enough info to help you.

 

Please elaborate this.

 

Fernando H. Solórzano
HW Automation Test Engineer
0 Kudos
Message 2 of 17
(2,883 Views)

The circuit you see is to test a driver I have created in labview.

The idea is:

1- the user put the RTS at 1

2- when the RTS is up, a string is sent on the TXD

3- the driver does a test to see if the CTS is  on or off ( it is on when I press the switch on the circuit, off in the other case)

4- when the CTS is on, we are ready to read the response from the RXD.

 

it is a normal comunication protocol (or more or less normal ^^ ).

 

the problems are described above in my first post.

 

Thank you

0 Kudos
Message 3 of 17
(2,873 Views)

Looking at the circuit and your explanation looks like it is something wrong on you driver app and not in the circuit.

 

I dont know if you have seen this web site before if not there  are some examples communicating with FTDI.

 

http://www.ftdichip.com/Support/SoftwareExamples/CodeExamples/LabVIEW.htm

 

Let me know if that help or if you are able to upload your driver so we can check it.

 

 

Fernando H. Solórzano
HW Automation Test Engineer
0 Kudos
Message 4 of 17
(2,855 Views)

Hi Ferchu.I already saw that examples.

Attached there is my driver but I don't see the error on my VI...

 

 

Download All
0 Kudos
Message 5 of 17
(2,843 Views)

Mate,

 

This is the same as "REPORT ERROR VISA".

 

Shall we carry on with the other threat?

 

Fernando H. Solórzano
HW Automation Test Engineer
0 Kudos
Message 6 of 17
(2,834 Views)

No since the questions are different I prefer to continue to talk about this problem here. if you don't care ofc.

0 Kudos
Message 7 of 17
(2,832 Views)

Actually it may be the same problem you are having in the other thread.  Your architecture may not be allowing you to detect when the signal lines are being changed.

0 Kudos
Message 8 of 17
(2,828 Views)

mmm no I don't think that is a problem of the architecture because I see that also in a simply VI without cicles or event structures the led goes on at the beginning while it should be 0.

0 Kudos
Message 9 of 17
(2,824 Views)

I am sure you went through this informaiton as well.

 

If not double check connections.

 

How does RTS/CTS flow control work in an FTDI chip?

FTxxx RTS# pin is an output. It should be connected to the CTS# input pin of the device at the other end of the UART link.

If RTS# is logic 0 it is indicating the FTxxx device can accept more data on the RXD pin.

If RTS# is logic 1 it is indicating the FTxxx device cannot accept more data.

RTS# changes state when the chip buffer reaches its last 32 bytes of space to allow time for the external device to stop sending data to the FTxxx device.

FTxxx CTS# pin is an input. It should be connected to the RTS# outout pin of the device at the other end of the UART link.

If CTS# is logic 0 it is indicating the external device can accept more data, and the FTxxx will transmit on the TXD pin.

If CTS# is logic 1 it is indicating the external device cannot accept motre data. the FTxxx will stop transmitting within 0~3 characters, depending on what is in the buffer.

 

This potential 3 character overrun does occasionally present problems. Customers shoud be made aware the FTxxx is a USB device and not a "normal" RS232 device as seen on a PC. As such the device operates on a packet basis as opposed to a byte basis.

Word to the wise. Not only do RS232 level shifting devices (e.g. MAX232) level shift, but they also invert the signal.

Fernando H. Solórzano
HW Automation Test Engineer
0 Kudos
Message 10 of 17
(2,818 Views)