in reply to baudrate issue with script
It looks like the Device::SerialPort->new("/dev/ttyS0"); statement isn't returning a serial port for you. You should check things like that in your code. For example:
my $port = Device::SerialPort->new("/dev/ttyS0"); die "Can't open /dev/ttyS0: $!" if ! defined $port;
Please note: Your code may not have enough permissions to open the serial port. For some versions of *nix, you may not even have a /dev/ttyS0!
...roboticus
When your only tool is a hammer, all problems look like your thumb.
In Section
Seekers of Perl Wisdom