In the many questions posted here about Bluetooth Low Energy, people seem to be referring to a bunch of different tools for using BLE. Most of these questions and answers revolve around using the command line to execute basic commands and put the radio into different modes.
I'm looking for the de facto standard SDK that I can use on Linux to perform more low-level setup and use the BLE radio. For example, the ability to do the following when in central mode:
- Configure connection parameters like connection interval, slave latency, timeout
- Scan for advertising BLE devices and retrieve advertisement data when in central mode
- Connect to peripherals, discover services and characteristics
- Read/write/notify on characteristics
and when in peripheral mode:
- Advertise exposed services
- Interact with a connected central, receiving events when central issues commands
I've seen bluez mentioned, but the bluez site seems to have no documentation at all. If this is the library to use, how to get started? Is there another library I should be looking at?