Error in MATLAB-Open failed: Port: COM Port is not available. No ports are available.
87 views (last 30 days)
Show older comments
Hello, I am taking serially data in matlab from a hardware.First time when i run the code of taking data in matlab through COM port,it gives me appropriate data, also get appropriate plot.But when second time i run the same code in matlab,i am getting error like 'Open failed: Port: COM Port is not available. No ports are available' even port is available.Please give me any suggestion over it.My code is-
s=serial('COM3','BaudRate',9600);
fopen(s);
data=fscanf(s);
d23=str2num(data);
plot(d23)
0 Comments
Answers (5)
mohammad hosin golshadi
on 31 May 2022
Hi,your ans:
type The following sentence in top of your code in malab
delete(instrfind({'Port'},{'COM3'}));
I hope the problem is solved!
Roshni Garnayak
on 5 Nov 2019
When a serial port connection is opened and the device becomes unavailable, the device remains unavailable after reconnecting. There is currently no way in MATLAB to fully reset the status of this connection, once this state is reached.
As a workaround you can first delete the serial port connection and then reconnect the device. For instance:
myComPort = serial('COM3');
fopen(myComPort);
% now disconnect the device
delete(myComPort)
clear myComPort
% now connect the device again, the following will now be successful:
myComPort = serial('COM3');
fopen(myComPort);
5 Comments
Mohamed Zineldin
on 20 Nov 2022
@li I had the same error, but the problem was that when I checked my Device Manager >>Ports(COM&LPT) I found my USB-ttl which is (Prolific USB-to-Serial Comm Port ) has this message: (resolve pl2303hxa phased out since 2012. please contact your supplier) , therefore I followed the steps of this video : https://www.youtube.com/watch?v=m1RTEAo6jRI&t=16s
Downloaded the Prolific PL2303 driver v3.3.2.102
from the link driver: http://www.mediafire.com/file/982x6iy...
And this solved my problem ,
Harshita Pandey
on 3 Dec 2020
Hello,whenever im runnning my code im getting an error given below:
Error using serial/fopen (line 72)
Open failed: Port: COM3 is not available. No ports are available.
Use INSTRFIND to determine if other instrument objects are connected to the requested device.
Error in IR (line 5)
fopen(arduino);
I'am a beginner so i dont know how to exactly resolve this issue.
My code is:
clear all;
close all;
clc;
arduino = serial('COM3','BaudRate',9600);
fopen(arduino);
i=1;
while(1)
data(i) = fscanf(arduino);
plot(data);
pause(0.01);
i=i+1;
end
grid on;
fclose(arduino);
It would be really helpful if someone can help me with this.
1 Comment
Laura Sandoval
on 21 Jul 2021
Hello, were you able to figure this out? I am having the same issue. Thanks in advance
1 Comment
Walter Roberson
on 21 Jul 2021
fopen() of a COM port will fail if you already have it open in MATLAB (because your code did not close it, or your code stopped running before it reached the close)
See Also
Categories
Find more on Data Import and Analysis 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!