# GSoC Bluetooth Improvement Midterm Recap

DevFeed: [GSoC Bluetooth Improvement Midterm Recap](<https://devfeed.tech/articles/gsoc-bluetooth-improvement-midterm-recap-34780.md>)

Original publisher: [Read original article](<https://www.haiku-os.org/blog/mohammedrattia/2026-07-18_gsoc_bluetooth_improvement_midterm_recap/>)

Author: mohammedrattia

Published: 2026-07-17T23:06:42Z

Content type: article

Language: en

Sources: [Haiku Project](<https://devfeed.tech/sources/haiku-project.md>)

Topics: [Bluetooth](<https://devfeed.tech/topics/bluetooth.md>), [Operating system](<https://devfeed.tech/topics/operating-system.md>), [Embedded Software Dev](<https://devfeed.tech/topics/embedded-software-dev.md>)

Tags: [bluetooth](<https://devfeed.tech/tags/bluetooth.md>), [commands](<https://devfeed.tech/tags/commands.md>), [devices](<https://devfeed.tech/tags/devices.md>), [firmware](<https://devfeed.tech/tags/firmware.md>), [gsoc](<https://devfeed.tech/tags/gsoc.md>), [gsoc2026](<https://devfeed.tech/tags/gsoc2026.md>), [haiku](<https://devfeed.tech/tags/haiku.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [interface](<https://devfeed.tech/tags/interface.md>), [midterm](<https://devfeed.tech/tags/midterm.md>), [recap](<https://devfeed.tech/tags/recap.md>), [software](<https://devfeed.tech/tags/software.md>)

## AI overview

This midterm recap describes improvements to Haiku's Bluetooth stack during a Google Summer of Code project. The work includes updating outdated Host-Controller Interface commands and events, implementing mandatory Bluetooth functionality, adding a setting for the device's friendly name, and adding support for canceling device inquiries.

## Source excerpt

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. Host-Controller Interface (HCI) Commands and Events The Host-Controller Interface (HCI) is the specification for how the operating system (the host, in our case, is Haiku) communicates with the Bluetooth controller. The Bluetooth controller is basically the firmware on the Bluetooth chip. So, it's vital to implement at least most of the mandatory HCI commands and events from the Bluetooth specification for Bluetooth to function properly. HCI commands and events were mostly outdated, dating back to version 2.0 or 2.1, so updating them was the first step to get the Bluetooth stack back to life. The Bluetooth SIG provides an Implementation Conformance Statement (ICS) for HCI, which can be used as a checklist for what's mandatory and what's optional. So, I started by completing what Haiku's Bluetooth stack lacked from the mandatory list. I'll mention here the features that users will be using without getting into internal details, so please feel free to contact me if you want to know more. Set Friendly Name Honestly... I personally don't think this would affect the user experience that much, but it's not me who decides anyway. It was mandatory in HCI, so I implemented it in the Bluetooth settings. Anyway, users can now set any name they want for their Haiku's Bluetooth device. Thanks to Máximo for solving a crash this caused later on and to KitsunePrefecture for reporting the crash :) Cancel Inquiry Discovering Bluetooth devices in Haiku wasn't working before the GSoC application phase. It lacked the handling of critical events needed to understand modern devices. Some GSoC applicants had already fixed a great part of it