Maker Pro
Maker Pro

USB to serial question

Harald Kapp

Moderator
Moderator
USB to TTL.
USB is a complete bus protocol (including voltage levels, encoding etc.)
TTL is only a scheme defining voltage levels.
A direct conversion from USB to TTL makes no sense. What the module you linked does (using the drivers on the PC side) is to create a virtual COM port (virtual UARTserial interface) on the PC and a physical UART interface in the module. note that the physical UART interface on this module uses TTL level, not standard RS232 levels. This may be what you want - you'd have to state in more detail your requirements (aka to what you want to interface the module).
 
Hi Harald!
I'm sorry for dont respond before. You moved the post (With all the reason) and I didn't recive the mail notifying the response on the post.

You are right, I had an error of concept. Thanks you very much for clarify me this.

I have a Combro Cb625(Chronograph for airgun shooting, my other hobby), and it let you buy or make a interface to connect the combro to the computer.
I would like to make becouse in my country nobody sells it.

The manufacturer gives you the circuit to connect the combro, but it works with DB9 serial port. So, the idea is to make a USB interface and not to use serial ports:
m625-3.gif

With these properties:
"The serial output. The little three pin connector near the clamp bolt allows you to connect your cb-625 directly to a computer. See elsewhere on this web-site for details of the interface to buy or here for the details to build one. In brief the output is 9600 baud, 8 bit ASCII, no parity, one stop bit as 0-5 volts that needs inverting and converting to the RS232 for the computer. The output is an ASCII text number followed by representing the number of 4MHz counts to cover the 2.353 inch gap so "1000" represents 784ft/sec. There is free software available on this site for Windows systems to collect and display this data."

Googling I found a post here, similar to my request:
https://www.electronicspoint.com/threads/usb-to-serial-question.266832/

But the owner of the post bought this cable:
http://www.amazon.co.uk/gp/product/B00F2F5HVK/ref=oh_details_o00_s00_i00?ie=UTF8&psc=1

I cant buy that, the only thing I could buy was:
http://articulo.mercadolibre.com.ar...uart-ttl-cp2101-programa-arduino-pro-mini-_JM

(I attached more pics of the USB, and the configuration on the PC)

I also used the circuit that the user "gorgon" recomended to Peter, instead of the original.:
combro_if-png.11237


Yesterday, I recived the Usb to UART converter, and I made the circuit...But it didnt work.

Could you help me?
Can this usb converter be usefull?

Thanks you very much!!! And sorry for my bad English.

Regards.
 

Attachments

  • IMG_20141011_115451582.jpg
    IMG_20141011_115451582.jpg
    70.1 KB · Views: 464
  • IMG_20141011_115511385.jpg
    IMG_20141011_115511385.jpg
    74.7 KB · Views: 352
  • Config.jpg
    Config.jpg
    31 KB · Views: 305

Harald Kapp

Moderator
Moderator
Sorry you didn't receive a notification when I moved the post. Normaly you should have been informed by the forum system.

As I stated in my first answer, the converter you have converts USB to UART. But the UART interface it provides has TTL leel (0V...5V), not the standard RS232 level (-12V...+12V) that is required for connecting it to a PC. The PC's serial interface (D-SUB connector) will not recognize the TL level. You need an additional TTL to RS232 converter (e.g. like this one). Or build one yurself using e.g. a MAX232 chip plus some capacitors.

The circuit from gorgon is for converting an RS232 signal to TTL level, that would be suitable for interfacing the PC's TxD to the RxD input of the USB to TTL converter. But you still lack the converter from the USB module's TxD output (TTL) to the PC's RxD input (RS232).

Also note that you conect Txd and RxD crosswise.

By the way: the website you linked shows the USB to TTL converter priced at 119$ I hope you haven't paid that sum - it's way overpriced. Maybethis is only a faulty rendering of the currency sign in my browser.
 
Sorry you didn't receive a notification when I moved the post. Normaly you should have been informed by the forum system.
Dont worry, mate!!

But the UART interface it provides has TTL leel (0V...5V), not the standard RS232 level (-12V...+12V) that is required for connecting it to a PC. The PC's serial interface (D-SUB connector) will not recognize the TL level. You need an additional TTL to RS232 converter (e.g. like this one). Or build one yurself using e.g. a MAX232 chip plus some capacitors.
I dont know if I am understanding well. The idea is to not use any serial port connector. I want PC-USB-COMBRO insted of PC-SERIAL-COMBRO.

I'm a bit confused. Because Peter used the cable "USB TO TTL TO UART RS232 COM", and never mentioned the conversor TTL to RS232 that you say. And the USB I bought supposed to be similar to that cable.
And Gorgon only mentioned the noninverting buffer between the output from the combro and the input on the TTL Interface for it work:
https://www.electronicspoint.com/threads/usb-to-serial-question.266832/#post-1596357


Also note that you conect Txd and RxD crosswise.
Where is crosswise connected ? I have to change it?



By the way: the website you linked shows the USB to TTL converter priced at 119$ I hope you haven't paid that sum - it's way overpriced. Maybethis is only a faulty rendering of the currency sign in my browser.
It is in ARS, it is equally to 8USD more o less(A bit expensive, but not so much)


Thanks you very much mate!!
 

Harald Kapp

Moderator
Moderator
I think I understand better now:
1) you only send data from the chronograph to the PC, not in the reverse direction.
2) the chronograph has a TTL interface (0V...5V)

In this case the USB interface you bought should work. You still have to connect the output (TxD) of your chronograph to the input (RxD) of the module. TxD and RxD denote data directions. This means one device's transmit line (TxD) has to be connected to the other device's receive line (RxD) (and vice versa, but you need only one direction).
You might be tempted to think that RxD_sender is connected to RxD_receiver, but this is not so.
This is why in the original image you posted in #3 the output of the circuit is labeled RxD - it is connected to RxD of the PC.

With this converter module you only need to connect GND to the center pin of the chronograph and RxD to the right pin. You may need to use the 100kΩ resistor between the right and left pin of the chronograph. This is not entirely clear from the information we have here. It may be required as a pull-up resistor?
You will also need to install the right drivers on the pC to emulate a so called virtual COM port. You should then be able to read dat via this virtual COM port from the chronograph. Note that your application will not "see" a USB connection but a serial connection (COM port) instead. The translation from serial to USB and back is handled by the driver software on the PC and by the module.
 
I think I understand better now:
1) you only send data from the chronograph to the PC, not in the reverse direction.
2) the chronograph has a TTL interface (0V...5V)
Exactly, sorry for not explain correctly.

In this case the USB interface you bought should work. You still have to connect the output (TxD) of your chronograph to the input (RxD) of the module. TxD and RxD denote data directions. This means one device's transmit line (TxD) has to be connected to the other device's receive line (RxD) (and vice versa, but you need only one direction).
You might be tempted to think that RxD_sender is connected to RxD_receiver, but this is not so.
This is why in the original image you posted in #3 the output of the circuit is labeled RxD - it is connected to RxD of the PC.
You are right! I was connecting TxD, and I have to connect RxD on the usb-TTL converter.

It worked!!!!

You may need to use the 100kΩ resistor between the right and left pin of the chronograph. This is not entirely clear from the information we have here. It may be required as a pull-up resistor?
Yes, it disables the power saving features of the Chrony.
Like it has battery, in normal mode it turns off automaticaly after some time if you dont use it.

It works messuring the time that the pellet cross two IR emitter-receiver separate 1 inch. When you use the battery, between each shot, you have to reset the chorny so its turns on the IR emitters, and after the shot they turns off.
If you take out the power saving features, they remain continuously active.

The combro have a option that allow you to send a virtual speed measurement to the PC, to test the interface. This is the way how I tried it. But I realiced that the chrony turns off after some time not using it. So I am wondering if something is wrong.

I have left to test it shooting.


Thanks you very much for all, Harald!!!
 
Update:


Now in hollydays, I continued the proyect.

I was able to comunicate the chrono to the computer with the circuit.
But I have the problem that the "power saves" does not turns off.
So I have to reset manually the chrono between each shot.

I tryed a lot of things, but I couldnt get both (Send data and power save off).

So I decided to build the circuit that recommend the manufacturer (The circuit with the AMP).

I connected the GND, RXD and TXD to the adaptor(USB-SERIAL).
The adaptor does not have RTS, but I suposed that the RTS is used in this case to power the AMP. So first use the 5V from USB.
I tested the interface, and didnt work. But the power saves turns off.

I searched info about Serial port, and I found that RTS use tension levels from 5 to 12V more o less.
So I connect a source of 12V, and didnt work either.

Someone could say me what I am doing wrong?

Thanks!
Happy New Year
 
Top