Dear BTstack user
We didn't post much about what was going on in the BTstack repository. Last year, we've implemented and tested HSP and HFP as well as finished LE Central.
After that, we decided that it's time for BTstack to get some "Spring Cleaning" - getting rid of old idiosyncrasies like suffixing public functions with _internal, a mysterious connection_t * argument to many functions, forwarding events through all layers, almost random subset of headers in include/btstack...
Here's the full list and overview of changes:
https://bluekitchen-gmbh.com/btstack/v1.0/appendix/migration/
For existing/older projects, the v0.9 branch has been created. It won't get any feature updates but we will backport important fixes.
https://github.com/bluekitchen/btstack/tree/v0.9
To help with migration, we're providing a migration script and also a web service that take care of most of the work: basic renaming of functions and events, but also tricky actions like updating packet handlers to the unified btstack_packet_handler_t type.
Asides from getting your project to compile with the newer API, please make sure that you read the parts on:
- flow control: to send an L2CAP, RFCOMM, BNEP packets or ATT Notifications, you should use X_request_can_send_now_event
- HCI events are received directly from the HCI layer.
- GATT Client results are in the form of HCI events now.
Please don't mind asking here, so we can improve the migration outline/scripts.
Next: we'll implement the missing optional features from the Bluetooth 4.2 specification: LE Secure Pairing and LE Data Channels, before getting started with A2DP and friends (SBC, mSBC, AVRTP, AVRCP...). Also, we're eager to start on the new BLE Mash stuff for the Internet of Things
Cheers,
Matthias
—
Dr. sc. Matthias Ringwald
BlueKitchen GmbH, Zurich