Proposals
Kernel Space
- L2CAP enhanced retransmission (Difficult)
Description: This is an optional L2CAP feature, still missing from most Bluetooth stacks, that allows more control of the Error Rate and more information about the data flow, very useful for audio streaming. Additional Info: Mentor(s): Luiz von Dentz Marcel Holtmann Skills: C, Kernel hacking, audio programming
User Space
Audio Service
- A2DP sink (medium)
Description: Implement support of A2DP sink role making it possible to receive audio streams from sources. This would enable linux to linux streams, bluetooth microphones support or broadcasting the audio via others transports. Additional Info: Mentor(s): Luiz von Dentz Skills: C, glib, gobject, codec, audio/realtime programming Related Projects: Alsa, GStreamer, ffmpeg
- VDP source (difficult)
Description: In the coming months, the Bluetooth SIG will announce the new AMP spec, which gives enough bandwidth to make video streaming really feasible through Bluetooth. This project aims to implement the Video Distribution Profile (VDP) inside BlueZ. Additional Info: Mentor(s): Luiz von Dentz Vinicius Gomes Skills: C, glib, multimedia programming, gstreamer Related projects: GStreamer, ffmpeg
- Telepathy plugin for HFP (difficult)
Description: Telepathy is a unified framework for many different kinds of real-time communications. The plugin will be a bridge between applications using the telepathy framework and the Hands-Free Bluetooth device. For Phone stacks, who use Telepathy for GSM, it should be possible to use the hands free device to handle GSM calls on their bluetooth Hands Free Units. Additional Info: Mentor(s): Vinicius Gomes Claudio Takahasi Skills: C, dbus Related Projects: Telepathy, Empathy
Input Service
- Generic HID (easy)
Description: Implement a flexible service(plugin based) allowing any company implement their own plugin. Basically, this service needs to provide an abstraction for USB HID protocol over a Bluetooth wireless link --- device role implementation. Plugin examples: export N810 keyboard, OpenMoko, virtual keyboards or any other platform. Additional Info: Mentor(s): Claudio Takahasi Skills: C Related projects: Remoko, BlueMaemo
Proposal from Uros Nedic
SIM Access Service
- SIM Access client (medium)
Description: Implement a service(plugin based) to access and control the GSM SIM card of the SIM Access server via Bluetooth link. Additional Info: Required hardware with GSM module Mentor(s): Claudio Takahasi Skills: C Related projects: none
- SIM Access server (medium)
Description: Implement a service(plugin based) to export GSM SIM card information. Assisting the SAP client to access and control the GSM subscription module via Bluetooth link. Additional Info: Required hardware with GSM module Mentor(s): Claudio Takahasi Skills: C Related projects: none
Network Service
- DUN Client (easy)
Description: Part of the work would be adding native Bluetooth support to pppd, including the user-space changes, and the implementation of line discipline in the Linux kernel. Additional Info: Mentor(s): Luiz Dentz Skills: kernel hacking, user-space C Related projects: NetworkManager, pppd, kernel
Others
- Wireshark live capture integration (easy)
Description: This would allow the use of wireshark to study Bluetooth protocol dumps. This is very useful, for example, for debugging complex cases, when wireshark filters can be very useful. For now, there is support inside wireshark to decode low-level protocols, like HCI events and RFCOMM. Extending wireshark to understand higher level protocols like OBEX and AVTDP, for example, would be a nice improvement. Additional Info: http://wiki.wireshark.org/Bluetooth/ Mentors: Luiz Dentz Vinicius Gomes Skills: C, libpcap, network programming Related projects: Wireshark, libpcap, tcpdump
- One step setup (medium)
Description: Recently NFC forum released NFC Connection Handover, it combines the simple, one-touch set-up of NFC with high-speed communication technologies, such as WiFi or Bluetooth. NFC hardware still inaccessible, however other out of band(OOB) mechanism could be simulated for this purpose. Aiming evaluate if the current BlueZ services Plugins structure is ready for this concept, 2D data matrix symbols can be used to represent Bluetooth infos such as Bluetooth address and service record attributes. Use case 1: NAP setup The user can capture the a printed 2D data matrix attached to a Bluetooth NAP server and use the data embedded in the symbol to automatically setup a connection skipping inquiry and service search. Use case 2: HID setup Most of HID devices have fixed PIN. Considering the resolution constraint, is it possible create a 2D data matrix capable of store all data required to create a "device object"? Additional Info: http://www.libdmtx.org/ Mentors: TBD Skills: c, v4l2 Related projects: TBD
OBEXD
- Message Access Profile (medium)
Description: Extend obexd server and client to support MAP Additional Info: Linux cellphone to implement MAP server Mentor(s): TBD Skills: C Related projects:
Additional Information
As many projects, most of the discussion happens on IRC, so to get a feel of the project, please hang around #bluez@….
And if there is still some doubt left, do not hesitate to contact some of these guys (name, email, nick, timezone).
- Marcel Holtmann <marcel [at] holtmann.org> - holtmann (GMT+2)
- Brad Midgley <bmidgley [at] gmail.com> - bmidgley (GMT-6)
- Claudio Takahasi <claudio.takahasi [at] gmail.com> - krau (GMT-3)
- Johan Hedberg <johan.hedberg [at] gmail.com> - jhe (GMT+3)
- Luiz Augusto von Dentz <luiz.dentz [at] gmail.com> - Vudentz (GMT-3)
- Alok Barsode <alokbarsode [at] gmail.com> - alokb_ (GMT+5:30)
- Eduardo Lima <eblima [at] gmail.com> - etrunko (GMT-3)
- Vinicius Gomes <vcgomes [at] gmail.com> - vcgomes (GMT-3)
