I have a Raspberry Pi with this FTDI cable and a Roomba 560. The Roomba has an SCI port to allow for control of the roomba via serial. I installed the PySerial library on the pi and send valid commands to Roomba, but the roomba doesn't respond. I have the TXD of the cable attached to the TXD of the roomba, the RXD on the cable wired to the RXD on the roomba, and a ground on the cable wired to the ground on the roomba (everything in  it's respective port). I do not have power going from the cable to the roomba or vice-versa.

What I can't figure out is why the commands aren't working. There's no error message upon running the python code. This is the information sheet for the Roomba's SCI port.

Code:

import serial

ser = serial.Serial('/dev/ttyUSB0')
# this is the defualt Roomba baud rate
ser.baudrate = 57600

# Start SCI - puts into safe mode
ser.write(chr(128))
# Enable full mode
ser.write(chr(131))
# Spot clean
ser.write(chr(134))

print 'Done'



Question: Does port forwarding a port on one computer expose other computers in the network as well?
Answer: If we accept the assumption that opening a port to a machine allows that machine to be compromised, then yes. Every port on a machine is open to every other machine on the same network. So if opening port X to machine Y risks a compromise of machine Y, anyone who has compromised machine Y has access to port X on machine Z. So they can compromise machine Z too.

But this really just shows that talking in generalities such as "exposes to security breaches" is really just too vague to be useful. Plugging a machine in exposes it to security breaches. Dealing with non-quantified levels of risk leads to silly conclusions.