This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Portable GATT Client Library

Hi, is someone of you aware of a portable (Win, Linux, OS/X) GATT client library, prefereable with C++ binding? The only one, that I've found so far is Qt. What do you use to write GATT Clients?

kind regards,

Torsten

  • Two application examples in C running on PC have been added a few weeks ago: github.com/.../examples

    You will need to use the connectivity application on the nRF side and then you can access the SoftDevice API from the PC side.

    The Qt BLE API is also nice. It will work with any HCI BLE dongle (it's a bluez wrapper) but for now it only works on Linux.

  • Sorry, if I made myself so unclear. But I think you got me wrong. Example: I have a BLE bootloader, with custom (128bit UUID) Services and Characteristics (something like this torstenrobitzki.github.io/.../md_bluetoe_services_bootloader.html). And now I want to write a C++ command line client to upload firmware to that bootloader. Now I'm looking for a library with functions to scan for devices, connect to a GATT server, discover services and characteristics and so on. Then I want to ship that command line client and let the customer run the command line client on their hardware (assumed that the hardware supports BLE).

  • Ok, which SDK version do you have ? You can use nRFutil tool to perform as DFU master.

  • Sorry, why does it matter with which SDK the hypothetically bootloader was build (or if the bootloader even runs on a nordic chip)?

    Again: I was looking for a Library. A library that provides me the very same interface to the basic GATT Client functions on different operating systems. The library should be used one three different PC operating systems to write one program (same source code, probably different binaries), that runs on all of these operating systems. I expect a recent PC hardware to have BLE on board or has a vanilla BLE USB dongle.

    I guess what you have in mind, is to use an nrf51/52 as some kind of BLE dongle connected to a PC by an UART and then do some kind of RCP and use the nrf SDK GATT Client. While this is, of cause a solution, I would prefer to use the PCs own BLE hardware.

    I think my fault was, not to state that this question is a question that is not directly related to a nordic controller. Sorry for that! I’ve asked here, because I thought that in this community, there might be others who had the same problem at hand and might have found a solution to it.

  • Hi Torsten,

    If you are looking for the library to use with the PC's native BLE stack then we don't have.

    What we provide is a driver so you can use when you plug a Nordic dongle/DK into it.

    I hope someone here may be able to help you. But I don't think there can be one single API to be used on both 3 OS.

Related