BluetoothStack

Note: please don't edit this spec without contacting the author or approver first

Use Cases

Audio

User A wants to pair a headset with his netbook; after doing that he can happily use his headsets to listen to music and use VOIP applications like ekiga and skype.

File Transfer

User B1 wants to transfer a file from his phone to a netbook; he searches for his computer using bluetooth and requests access from his phone; after granting access user can upload files from the phone to his computer.

User B2 wants to browse his phones file system; he pairs his phone and can directly use "Browse files on device ..." to open a filemanager and then navigate happily on the phones filesystem.

Bluetooth devices for suspend/resume

User C wants to suspend his netbook and have bluetoosh devices still connected on resume.

Use Phone over bluetooth as 3G modem (DUN)

User D pairs his phone and connects to it. Next he goes to his connection manager and initiates a connection through the now detected modem device.

Input

User E1 wants to use his bluetooth keyboard; after pairing the device, he wants to start typing.

User E2 wants to use his bluetooth mouse; after pairing the device, he wants to be able to use the mouse.

Design

Due to lack of dedicated resources for the elements of the bluetooth stack, this spec suggests to take the following steps to continuously improve the ubuntu bluetooth experience:

  1. upgrade bluetooth stack to the latest upstream versions, in particular:
    • gnome-bluetooth - upgrade to latest; apply notification patch; replace bluez-gnome as the default bt management frontend in ubuntu
    • pulseaudio - latest pulseaudio brings improvements to bluetooth stack
  2. verify use cases named in this document to identify feature bugs
  3. communicate identified feature bugs and work with upstream
  4. identify hardware/real-world bugs by calling for testing (e.g. ubuntuforums).
  5. communicate identified hardware/real-world bugs to upstream; help getting feedback.

Implementation Details

Implementation details sorted by elements affected by this spec. This section is explicitly left incomplete. Assignee should fill in details when they become available.

bluez-gnome

  • remove from seeds
  • demote to universe (or remove from archive)

gnome-bluetooth

  • promote to main
  • add to seeds
  • update to latest upstream
  • port, apply and upstream notification patch carried over from bluez-gnome
  • ensure desktop integration works (nautilus, etc.)
  • 2.27.6 will need obexd instead of obex-data-server

pulseaudio

  • update to latest upstream (will happen naturally)
  • investigate how to ensure good default setup
  • investigate if both -sink and -source work properly
  • identify UI management issues like: volume control integration; application recognition
  • how can we make alsa applications behave properly

NetworkManager/Modemmanager

Connman

  • bluetooth PAN support is available in latest connman; DUN as well as 3G support in general are still missing though.

obexd/ obex-data-server

  • obexd needs packaging and will replace obex-data-server (for gnome-bluetooth 2.27.6)

Comments

  • To complete the spec, it should be added that bluetooth file reception is implemented in the GNOME stack in gnome-user-share, a small tool that implement obexpush, obexftp and webdav sharing. This is a part of the official GNOME Desktop since 2.26, but not shipped by default in Ubuntu. g-u-share relies as of writing on obex-data-server and not obexd, so both obex servers will be used.

    Consider blueman instead of gnome-bluetooth; get users input in a call for testing - AlexanderSack (asac)

    We need to make sure that the package transition is done nicely (currently the conflict with gnome-bluetooth vs bluez-gnome causes held-back gnome-bluetooth for jaunty->karmic upgrades if both g-b and b-g were installed on jaunty) -- mvo


Warning /!\ Edit conflict - other version:


Receive files still does not work for me in Karmic RC. Is Bapiste's comment above addressed? please solve this problem as it really makes for a bad impression. Rest all things work well.


Warning /!\ Edit conflict - your version:


Receive files still does not work for me in Karmic RC. Is Bapiste's comment above addressed? please solve this problem as it really makes for a bad impression. Rest all things work well. --tgpraveen


Warning /!\ End of edit conflict


DesktopTeam/Specs/Karmic/BluetoothStack (last edited 2009-10-25 16:26:00 by tgpraveen89)