bool SerialCommandQueue::open(QSerialPortInfo info) { if (isConnected()) { qCritical("Already connected to serial device"); return false; } qDebug() << "connecting to " << info.portName(); #if defined(Q_OS_OSX) // Note: This should be info.portName(). Changed here as a workaround for: // https://bugreports.qt.io/browse/QTBUG-45127 serial->setPortName(info.systemLocation()); #else serial->setPortName(info.portName()); #endif serial->setBaudRate(QSerialPort::Baud115200); if (!serial->open(QIODevice::ReadWrite)) { qDebug() << "Could not connect to serial device. Error: " << serial->error() << serial->errorString(); return false; } return true; }
/*! Sets the port stored in the serial port info instance \a serialPortInfo. \sa portName(), QSerialPortInfo */ void QSerialPort::setPort(const QSerialPortInfo &serialPortInfo) { Q_D(QSerialPort); d->systemLocation = QSerialPortPrivate::portNameToSystemLocation(serialPortInfo.systemLocation()); }
/*! Sets the port stored in the serial port info instance \a serialPortInfo. \sa portName(), QSerialPortInfo */ void QSerialPort::setPort(const QSerialPortInfo &serialPortInfo) { Q_D(QSerialPort); d->systemLocation = serialPortInfo.systemLocation(); }