Archive for the ‘News’ Category.

BlueZ 4.0 repository created

It is now official that bluez-libs-3.36 and bluez-utils-3.36 were the last releases in the BlueZ 3.x series. Both repository are now in maintenance mode and only important security fixes will justify another release from the 3.x branch.

For the BlueZ 4.x series the repositories have been moved from over to and we are now using GIT for revision control. Also bluez-libs and bluez-utils have been merged back together into one common bluez.git repository.

The 4.x series brings two important changes. The first one is that the eglib support has been completely removed. This means that GLib now becomes a hard depedency. The second one is that we removed the old D-Bus and now fully concentrate on improving the new API and making the code simpler, cleaner and easy to read and understand.

We haven’t had time to move bluez-gnome over to the new D-Bus API. So if you wanna try bluez-4.x be warned that this will break.

Linux 2.6.27 merge window

The merge window for the Linux 2.6.27 kernel opened just after the official release of 2.6.26 and on the Bluetooth side we have a big update pending to be merged. Most changes are security enhancements and full support for Simple Pairing from the Bluetooth 2.1 specification.

After an absence of two kernel release, I started to produce my -mh kernel patches again. And since we are moving a lot of the infrastructure to these patches have their new home their, too. So have fun with it.


Lennart’s wish list

During the BlueZ developer meeting in Helsinki a month ago we talked with Lennart Poettering about the native integration of A2DP and Headset support with PulseAudio. He requested some enhancements to our Bluetooth support in the Linux kernel for a better synchronization of the audio stream.

  • Support for TIOCOUTQ and TIOCINQ ioctls
  • Support for retrieving the remote clock value

The current GIT tree is based on the 2.6.26-rc8 kernel release and contains support for the first two items on his list.

Adding the possibility to retrieve the remote clock value has not been implemented yet. The technical part is not really complicated, but I am not sure on how to present this information to the user-space.

This patch set also contains an update to the Simple Pairing support and a fix for the driver model integration of the low-level connections.

Simple Pairing patches available

The bluez-libs-3.33 and bluez-utils-3.33 release introduced the user-space support for Simple Pairing via the new D-Bus API. The missing piece to make this fully work where appropriate kernel patches. These are now available via a GIT tree.

This patch series is based on the 2.6.26-rc7 kernel release and also contains fixes for the HID disconnect detection and updates to the RFCOMM TTY handling.

It is important that these changes are intensively tested before we start submitting them for the 2.6.27 merge window. Everybody with Bluetooth 2.1 hardware, please start testing and give feedback via the BlueZ developer mailing list.

Preparing for 4.0

The 3.33 release was suppose to be the last one before hitting 4.0, but unfortunately it is not. We will have 3.34 and maybe 3.35 to stabilize the 3.x series before it can enter maintenance mode. This still means that 4.0 is only a glimpse away.

With 4.0 a lot of things will change. The first big one is that bluez-libs and bluez-utils will be merged back into one package called bluez like it was for the 1.x series. These two packages have been released in sync since the whole 3.x series and so it only makes sense to combine them. It is then up to the package maintainers to split the library part into a libbluetooth package and so on.

The old D-Bus API will be removed. We gonna have a whole new D-Bus API set that is smaller and more powerful. It is a big step and will improve the usage of Bluetooth for end user applications a lot. In the current 3.33 release, both APIs exists in parallel to give current developers an outlook what is coming. So start using the new API.

Our embedded GLib support will be removed. The 4.x series will have a hard dependency on the GLib base library. The reason for doing it is that mainting the embedded GLib part became to much of a burden and took a lot of resources.

All future development will be done in a GIT tree on and the CVS repositories at will be marked as read-only. We will keep them for reference and potential security updates for the 3.x series.

Stay tuned. More updates on this topic will follow…

Webserver back online

The webserver had a major harddrive crash and is now partially back online. It is expected that the missing content gets merged over the weekend.