You can definitely transmit data using just TX & GND.
Firstly, you want to hook up the ATtiny85 TX line to the FTDI RX line (yellow on the TTL-232R). Make sure that the USB adapter can handle 5V - I'm fairly sure even the 3.3V TTL-232R is 5V tolerant.
According to the example page for SoftwareSerial, you need to set the direction of the TX & RX lines in your setup function:
// include the SoftwareSerial library so you can use its functions:
#include <SoftwareSerial.h>
#define rxPin 2
#define txPin 3
#define ledPin 13
// set up a new serial port
SoftwareSerial mySerial = SoftwareSerial(rxPin, txPin);
byte pinState = 0;
void setup() {
// define pin modes for tx, rx, led pins:
pinMode(rxPin, INPUT);
pinMode(txPin, OUTPUT);
pinMode(ledPin, OUTPUT);
// set the data rate for the SoftwareSerial port
mySerial.begin(9600);
}
The baudrate will be 4800 in your case. The SoftwareSerial library doesn't seem to support CTS & RTS, so just make sure you aren't using them on the host software.
Check out the reference page for more details, where they talk about some potential timing issues which may be exacerbated if you're running at 1MHz using the internal oscillator on the tiny.
For USB, the easiest way it to monitor for the presence of VBUS.
I'm not sure what you mean by "overcurrent", you shouldn't need to load the USB power line much if at all. If you're really worried, stick a 10K resistor in series with the USB Vcc, and just run it to an input pin. That should protect you from any faults.
Unfortunately, for serial, it can be a lot more involved.
If you're lucky, your system uses either inverted TTL level signaling, which means the line level when there is no traffic is Vcc, or RS232 level signaling, which means the no-traffic line voltage is either ~+10v or ~-10v, depending on whether your bus is inverted.
Then, you can simply monitor for the voltage level. 0v means nothing connected.
If you're unlucky, your system uses TTL level signaling, with the quiescent bus state being 0V. In this case, really the only possible way to determine if a device is connected is to actually send out some traffic, and see if you get a response.
Best Answer
This is not about "external noise". The USB wires are differentially coupled TWISTED PAIRs, so you will be badly affected by signal coupling if the cable is long.