Solved Qt 5.15.2 Windows 10 BLE (QLowEnergyService::UnknownError, The process is being used by another process.)
-
Hi folks.
I am trying to create an application to read data from a BLE device. This is my first experience with Qt in general.
Using the Qt examples, I created a code that successfully searches for devices, successfully connects to the device, finds all the services of the device, but I cannot get the characteristics of the service using the discoverDetails() method.
When trying to use discoverDetails(), I get stateChanged() signals with QLowEnergyService::DiscoveringServices signals (which seems to be correct), but then the error() slot is called with the error QLowEnergyService::UnknownError.
I am using Windows 10 Pro 20H2, with a Bluetooth CSR 4.0 adapter.
The Qt examples (LowEnergyScanner and HeartRate-Game) work fine.Can anyone help? Header file and source code:
Header - https://pastebin.com/04mnYQZr
Code - https://pastebin.com/ufRefgxE -
I select the service from Qlist<QBluetoothUuid> as indicated in the documentation for createServiceObject() but an error occurs.
An adapter error appears to occur, is the device busy? But why does everything work with examples? Windows error? But then again, why does everything work with examples?
-
Installed Ubuntu 20.10, installed Qt 5.15.2 and my program seems to work fine!
The question is, why doesn't it work on Windows 10, but works on Ubuntu? That being said, the Qt examples work fine on WIndows 10 as well as on Ubuntu, but my program doesn't work. Why?
And I went through all the services of my BLE device, each service works great, the search works great. But not on Windows. Help, my head is broken.
-
Trillions of years later, I returned to this program, and solved my problem by simply switching the discoveryFinished() slot in Qt::QueuedConnection.
-
You are a god! I had absolutely no idea what was causing that error.
-
This post is deleted! -
This post is deleted!