Reputation: 11810
I'm developping a Qt5 application on MacOS.
I would like to test my application serial port communication.
I'd like to use socat but I'm unable to open the port created with socat: QSerialPortInfo::availablePorts() lists only the /dev/cu-XXXXXX ports...
Upvotes: 7
Views: 7807
Reputation: 37
Maybe it's just a permission issue. Make sure the user running your application has permition to access the virtual port.
Upvotes: 0
Reputation: 141
You might be having troubles because of the symlink.
You could try something like this:
QFileInfo file_info("/dev/mytty");
QSerialPort* serial = nullptr;
if (file_info.isSymLink()) {
serial = new QSerialPort(file_info.symLinkTarget());
} else {
serial = new QSerialPort(file_info.path());
}
serial->open(QIODevice::ReadWrite);
You could also construct a QSerialPortInfo class with those paths instead of creating a port directly.
Upvotes: 1
Reputation: 4849
Socat port creation example:
socat pty,link=/dev/mytty,raw tcp:192.168.254.254:2001&
After this you get your pseudo port /dev/mytty
Now you can reference this port via QSerialPort
serial = new QSerialPort("/dev/mytty");
Upvotes: 3