GSoC Bluetooth Improvement Midterm Recap | Haiku Project

Hello! The GSoC’s midterm (at least for me) has just passed, so I thought of making a recap post about the improvements I’ve made so far. I’ll try to keep the post brief to make it easier for readers (foreshadowing: I realized that’s impossible :P). I’ve already posted an introduction about me and the project. You can read it here if you haven’t already.


This is a companion discussion topic for the original entry at https://www.haiku-os.org/blog/mohammedrattia/2026-07-18_gsoc_bluetooth_improvement_midterm_recap/
9 Likes

Ahoy Mohammed ( @mohammedrattia )

Thanks for the report … it was interesting to read.
Me myself waiting to have a working local device - unfortunately I cannot replace with an Intel one, so I opened a ticket about my Broadcom device. Now such improvements, I guess freezed due to new Beta release is under transition, so just fixes should arrive under this period. I created as enhancement :slight_smile:

Anyway, the one and only thing both of you mentioned as would work on - was SDP protocol.
You would create the SDP Client, and Vignesh would create the SDP Server, if I understand well.

Another common area can be the USB bus - as on motherboards the most BT devices attached to the host system via USB bus, several version, if I observed well. At least I still had not met BT device via PCI. It should have been on desktop, and just in case when the BT chip was on an expansion card.

Would there be a common intersection elsewhere in the BT stack ?

Hi Kitsune (@KitsunePrefecture )

I’m happy you enjoyed reading the report.

Yeah, Vignesh told me he’d be working on the SDP server. Both server and client are critical for different Bluetooth services (profiles) to work. While other transportation busses exist, I guess you’re right USB is very popular in BT devices. However, I didn’t need to work on the BT USB module yet, fortunately the HID needs ACL channels which should be working properly. While I was testing the SDP client some issues occurred from the those kernel parts (L2CAP), so I might need to work on that soon. Actually, I was trying to know the source of the bug during the last a few days.

Until now, we didn’t have another common intersection (we didn’t need to work together on the same module yet). After finishing the SDP and SCO channels (I guess Vignesh finished a great deal in SCO), several Bluetooth profiles should be feasible using the Bluetooth stack. I guess after this summer the next step would be supporting more profiles and more vendor specific local devices (like your Broadcom). Of course none of that is Low Energy Bluetooth yet. So… yeah we still have a lot of work to be done before we have a finalized Bluetooth stack :- ).

2 Likes