Important: Please read the Qt Code of Conduct -

Provide PIN to Qt Bluetooth

  • Re: Qt Bluetooth - How to provide a preset PIN

    How one is supposed to provide a Bluetooth PASSKEY to Qt Bluetooth API that should be used to connect&pair with the Bluetooth LE device?

    There is a quite old question with the similar content, but it is left unanswered, even no negative answer on that.

    Reading the overview on Qt BLE functionality does not provide information on whether it is possible to perform Bluetooth Low Energy pairing/bonding process with Qt Bluetooth module.

    For example, the documentation on Bluez (for Linux systems) shows that there are api's to do that (see here, especially RequestPasskey and DisplayPasskey methonds, for example) that are exposed over DBus interface.

    I suppose that securing your LE devices via PASSKEY is a crucial and needed part of the whole BLE protocol, and at least it should be confirmed that there is no such possibility in Qt Bluetooth module.

  • Moderators

    @podkiva said in Provide PIN to Qt Bluetooth:

    How one is supposed to provide a Bluetooth PIN to Qt Bluetooth API that should be used to connect&pair with the Bluetooth LE device

    About what BLE device are you talking.
    Basically PIN pairing isn't part of BLE AFAIK. Its rather part of the classic BT protocols.

  • @raven-worx Yes, your are right that it is a little unclear in the term that I had used, I think the term that actually used for BLE pairing is PASSKEY rather than PIN-CODE, but essentially the question stays the same. I have updated original question accordingly.

    Sorry for not answering on that for too long, but at the end of the day I have finished with using Bluez-Qt library. I had to update it with Low Energy functionality by myself, but it was rather easier for me since I am familiar with Bluez DBus Api.

    So, AFAIK, the Qt Bluetooth module does not provide any functionality similar to what Bluez's agent provides, i.e. it is not possible to perform general pairing/bonding procedure with different IO (Input-Output) capabilities. Please correct me, if I am wrong.