Cannot open an usb serial port

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.

Replies

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