Не работает bluetooth в Qt
Пишу проект умного дома, работающего через bluetooth, первую мобилку написал на mit app inventor, и дом отлично работает, поэтому все проблемы связанные с самим устройством отметаются. в .pro подключил bluetooth,bluetooth адаптер - usb с модулем realtek, устанавливал qt через msys2, версия Qt - 6.8.0. Если что то не сказал пишите в комментах, дополню, заранее большое спасибо!
bool VoiceHome::isconnectpossible()
{
QString localDeviceName;
try {
QBluetoothLocalDevice localDevice;
if(localDevice.isValid()){
try {
localDevice.powerOn();
localDeviceName = localDevice.name();
localDevice.setHostMode(QBluetoothLocalDevice::HostDiscoverable);
socket.connectToService(addr, QBluetoothUuid(serialPortUuid));
}
catch (const std::exception &e) {
QMessageBox::warning(this, "Bluetooth error", "Не удалось подключиться к устройству");
qDebug() << e.what();
return false;
}
}
else{
QMessageBox::warning(this, "Bluetooth error", "Блютуз адаптер не доступен!");
return false;
}
}
catch (QBluetoothLocalDevice::Error error) {
QString errorString = QString("Bluetooth Error: %1").arg(static_cast<int>(error));
QMessageBox::critical(this, "err", errorString);
return false;
}
}
void VoiceHome::checkconnection(){
if(isconnectpossible() == false){
QMessageBox::StandardButton reply = QMessageBox::question(this, "Ошибка!", "Возникла ошибка, показанная вам ранее. Попробовать переподключиться?",
QMessageBox::Yes | QMessageBox::No);
if(reply == QMessageBox::StandardButton::Yes){
checkconnection();
}
else{
exit(0);
}
}
else{
loadinterface();
}
}
loadinterface()
- просто открывает новое окно.
Вот все подключённые библиотекик и переменные:
#include <QMessageBox>
#include <QBluetoothLocalDevice>
#include <voicehomemainwindow.h>
#include <QBluetoothDeviceDiscoveryAgent>
#include <QBluetoothDeviceInfo>
#include <QBluetoothSocket>
#include <QBluetoothUuid>
#include <QTimer>
#include <QCoreApplication>
#include "voicehome.h"
#include "ui_voicehome.h"
#include "voicehomemainwindow.h"
QBluetoothAddress targetAddress("00:19:06:34:DD:B5");
QBluetoothUuid serialPortUuid = QBluetoothUuid(QStringLiteral("00001101-0000-1000-8000-00805F9B34FB"));
QBluetoothAddress addr(targetAddress);
QBluetoothSocket socket(QBluetoothServiceInfo::RfcommProtocol);
Функция isconnectpossible()
постоянно возвращает false, говоря о том, что bluetooth адаптер недоступен, в чём может быть проблема?