Serial Communication in Maltab using Linux 64 Bit
    18 views (last 30 days)
  
       Show older comments
    
I use Matlab 2015a (64 Bit) on a Ubuntu Linux distribution system. I want to build a communication to a device with a RS232 port. For this task I use a USB to RS232 converter cabel. In Linux I get the information, that the cable is connected to ttyUSB0. But if i want to start the communication over Matlab with:
s = serial('/dev/ttyUSB0', 'BaudRate', 9600);
fopen(s)
I get the error:
Error using serial/fopen (line 72)
Open failed: Port: /dev/ttyUSB0 is not available. ....
I tested this process on a WIN System and there is no problem. The communication runs pretty well. Have anyone experieances with Linux/Matlab and serial communication?
1 Comment
  William Harwin
 on 9 Mar 2017
				This is in fact a Linux permissions problem rather than a Matlab problem. To test permissions see if there is a difference between
 sudo stty -a -F /dev/ttyUSB0
and
 stty -a -F /dev/ttyUSB0
If the latter says 'permission denied' or similar then you are probably not a member of the relevant group. The group on the USB port can be seen by using
 ls -l /dev/ttyUSB0
and can be changed via
 sudo usermod -aG groupname username
e.g.
 sudo -aG dialout harrypotter
Check membership via the `group' command (a reboot may be necessary)
Answers (2)
  Álvaro Cortés Sánchez-Migallón
 on 20 May 2022
        I followed other way. I got exactly the same error (Over Manjaro distribution) and of course is about permissions:
- From terminal:
sudo chmod +777 /run/lock
sudo chmod +777 /dev/ttyACM0
- From Matlab:
% Scan all serial ports
serialPorts = serialportlist
% Get serial port i want as serial communication
ACM0 = serial(serialPorts(1))
% Open file (now works)
fopen(ACM0)
% Read data all data available
data = fread(ACM0, ACM0.BytesAvailable);
1 Comment
  Ravi Kiran Aggadi
 on 8 Jun 2022
				Thanky you! the solution that you have mentioned helpd me in resolving the problem.
See Also
Categories
				Find more on Introduction to Installation and Licensing in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



