Hey guys,
a while ago I came across the SimpleBLE project on github (
https://github.com/OpenBluetoothToolbox/SimpleBLE), which is a cross-platform BLE library project implemented in C/C++. Since it provides a C API, I thought it should be possible to create Pascal bindings for this. I gave it a try and put together a Pascal unit, which exposes all relevant functions from the C API into Pascal.
SimpleBLE comes with some example projects, which I ported to Lazarus/FreePascal and these work fine. They involve BLE scanning, connect/disconnect as well as querying services and characteristics from a peripheral's GATT table and subscribing to notifications. Even though SimpleBLE is still work in progress (see issues on github), it looks quite promising to me and at least the basic BLE stuff seem to work properly.
I put everything on github at
https://github.com/eriklins/Pascal-Bindings-For-SimpleBLE-Library in case someone else finds this useful and would like to give it a try. I also added a release package including the Pascal unit as well as precompiled shared libraries (currently just DLLs for Windows 64 bit).
I'm far from being a Pascal expert, so any suggestions/feedback is more than welcome!
Cheers,
ER!K