I've found that when I use Arduino Nano connected with USB everything is working great, and when I tryed to use it with USB to TTL connector I've understood that I can only read data. I tryed to connect GND to RST as it was on some picture in Internet, and it works! Now I can send data through my USB to TTL (and through another UART device). So I can't uderstand, why should I do it? Why can't I just send data through Rx Arduino pin? Why do I need an extra action? Is it related with Arduino microcontroller?
The key here is to remember the simple rules:
- One device can send to many devices
- One device can receive only from one device
In your situation you have three devices that are communicating:
- The USB to UART chip
- The on-board ATMega, and
- The off-board ATMega connected to the TX/RX pins.
All three of those are connected together through the TX and RX pins. This means that:
- The UART chip sends to the on-board ATMega, and
- The UART chip sends to the off-board ATMega
This fits with rule 1 above: one device can talk to many devices.
- The UART chip receives from the on-board ATMega, and
- The UART chip receives from the off-board ATMega
This breaks rule 2 above. You can't have two devices sending to one receiver.
By connecting the RESET pin to GND you are effectively turning off the on-board ATMega. It's like you removed it from the board. It's not allowed to do anything - including communicating with the UART chip.
So that fixes rule 2 above, because now you only have one device sending to the UART chip, not two.