1 Answer
1

That's because udev dynamically creates the ttys on each boot. Without going into why your ttyS0 doesn't work by default, the brute-force solution is to simply add a chmod a+rw /dev/ttyS0 to your /etc/rc.local file (this way it's automatically executed on every boot.)

Ok, thank you, I'll try it when I get back to work. To give a more comprehensive view of the situation I might also have to add that I have added a path to a program utilizing serial communication in the .profile-file (The sole purpose of the computer is to control an industrial machine). What will execute first, rc.local or .profile? I would like to do it in a more proper way but the google results I got which was dealing with udev and adding the user to dialout etc. didn't seem to apply to 12.04. Files mentioned was not there on my system.
–
PaulMay 23 '12 at 18:46

The difference is that .profile is run on each bash login, while rc.local is executed only once upon boot. In your case, repeatedly setting permissions isn't going to cause any problems, so whatever works for you!
–
izxMay 24 '12 at 3:16