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)