With the 10.15.1 Beta (19B68f) when I try to open an USB serial port, I get a port already in use. But the lsof doesn't show this port.
I tried to reboot my computer, but I have always the same error.
With the 10.15.1 Beta (19B68f) when I try to open an USB serial port, I get a port already in use. But the lsof doesn't show this port.
I tried to reboot my computer, but I have always the same error.
The problem is still present on Beta 3
The system call open on the /dev return -1 and errno 16
The device is a FT232R USB UART (Vendor FTDI)
The source code to reproduce my issue on my usb serial
#include
#include
#include
#include
#include
#include
int main(int argc, char **argv) {
char file[] = "/dev/tty.usbserial-A600QJHB";
int fd = open(file, 0x20006, 0x0);
if (fd == -1) {
printf("Cannot open device %s errno %d\n", file, errno);
return -1;
}
printf("success\n");
clode(fd);
return 0;
}
On Catalina 10.15 I have the display of
Success
on 10.15.1 Beta
Cannot open device /dev/tty.usbserial-A600QJHB errno 16 (Device in use)
The device is not in use.
The console log:
On 10.15
par défaut 09:30:00.056107+0200 kernel IOUserSerial::call0(allocResources) ==>
par défaut 09:30:00.056118+0200 kernel IOUserSerial::call0() locklevel = 1
par défaut 09:30:00.056212+0200 kernel IOUserSerial::<private>: 527 0x600003500058
par défaut 09:30:00.056277+0200 kernel IOUserSerial::<private>: 57 0x600003500058
par défaut 09:30:00.057142+0200 kernel IOUserSerial::call0() <== 0
par défaut 09:30:00.057151+0200 kernel IOUserSerial::call0(hwProgramMCR) ==>
par défaut 2019-10-.05715325 09:30:00+0200 kernel IOUserSerial::call0() locklevel = 1
par défaut 09:30:00.057467+0200 kernel IOUserSerial::call0() <== 0
par défaut 09:30:00.057471+0200 kernel IOUserSerial::call0(hwActivate) ==>
par défaut 09:30:00.057472+0200 kernel IOUserSerial::call0() locklevel = 1
par défaut 09:30:00.057506+0200 kernel IOUserSerial::<private>: 546 0x600003500058
par défaut 09:30:00.057508+0200 kernel IOUserSerial::<private>: 117 0x600003500058
par défaut 09:30:00.058573+0200 kernel IOUserSerial::call0() <== 0
par défaut 09:30:00.058581+0200 kernel IOUserSerial::call0(hwResetFIFO) ==>
par défaut 09:30:00.058583+0200 kernel IOUserSerial::call0() locklevel = 1
On 10.15.1
par défaut 00:28:31.295445-0700 kernel IOUserSerial::call0(allocResources) ==>
par défaut 00:28:31.295501-0700 kernel IOUserSerial::call0() locklevel = 1
par défaut 00:28:31.296030-0700 kernel IOUserSerial::call0() <== e00002bf
par défaut 00:28:31.296044-0700 kernel IOUserSerial::call0(freeResources) ==>
par défaut 00:28:31.296046-0700 kernel IOUserSerial::call0() locklevel = 1
par défaut 00:28:31.296238-0700 kernel IOUserSerial::call0() <== e00002bf
On public release, Catalina v10.15.1 - I have the same issue using three DIFFERENT FTDI cables. If you use a 3rd party app or screen and attempt to opent the port, it will fail and will get logged accordingly
Using public v10.15.1 if you install FTDI's latest VCP 2.4.2 driver, it works around this problem.
I have installed that driver, and I still do not have access to my ESP32/8266 baords. nothing shows up in my .dev either