Developer meeting – Portland 2008

Meeting was hosted by the Open Source Technology Center at Intel from September, 22th – 24th in Portland. This was right after the Linux Plumbers Conference.


The meeting took place in The Benson hotel in Portland downtown.


  • Marcel Holtmann (Intel/BlueZ)
  • Johan Hedberg (Nokia)
  • Claudio Takahasi (INdT)
  • Luiz Augusto von Dentz (INdT)
  • David Woodhouse (Intel)
  • Bea Lam (Trolltech)
  • Denis Kenzior (Trolltech)
  • David Vrabel (CSR)
  • David Stockwell (Frequency One)
  • Bastien Nocera (Red Hat)
  • Nick Pelly (Google)
  • Oleg Perelet (Qualcomm)
  • Yaniv Yehudai (Texas Instruments)
  • Danny Kukawka (Novell)

Day 1 (Sep 22nd)


Marcel gave a quick overview of the planed agenda for the meeting which was followed by a introduction round by everyone present.

Lightning talks

  • Ultra-Wideband (UWB) and where Bluetooth fits in by David Vrabel
  • BlueZ within Maemo by Johan
  • Intro to INdT Bluetooth work by Claudio and Luiz
  • Android demo by Nick Pelly
  • QTopia intro by Bea Lam
  • Bluetooth challenges in the embedded space by Oleg Perelet
  • Gnome Bluetooth demo by Bastien Nocerra

4.0 API overview

Proposed “node” API

Profile implementation status

What’s implemented, what’s not. What makes sense, what doesn’t. Which ones have real implementations, which don’t. etc.

Day 2 (Sep 23rd)


Quick overview of what’s currently implemented and some discussion about the direction in which the design needs to evolve.

AVRCP status by David Stockwell

  • Nice demo with his self-built AVRCP-only unit
  • Specification of new D-Bus signals and methods for org.bluez.Control

Discussion about mode properties and methods

  • Add new “Powered” and “Discoverable” properties
  • Deprecate RequestMode/ReleaseMode and replace with RequestSession/ReleaseSession

AMP discussion and initial design

  • Create AMP device infrastructure (amp0, amp1 etc.)
  • Implement IP based fake PAL with hciemu
  • Add support for L2CAP fixed channels
  • Use basic frames for AMP Manager Protocol (A2MP) to get started
  • Init routine for AMP devices (PAL ASSOC info)

Embedded devices and power saving

  • hciattach rewritten as a bluetoothd plugin
  • Add hci_dev->setup phase
  • Read BD_ADDR before DEV_REG
  • Make offmode devdown default

hid2hci as a plugin

  • commands for reading keys from macbook have been deciphered (using packet logger)

Day 3 (Sep 24th)

obexd extenstion

  • draft API for PBAP. Could also be reused for SyncML & Sync.


  • Simple OBEX client D-Bus API

unit-test framework

  • hciemu could be used
  • Either the check framework or the one from GLib (Glib might actually be nicer since we have that dependency anyway)

GUI widget discussion

random hacking

  • Fixed Bastien’s crash bug
  • Investigated weirdness with using bluetooth in vmware fusion