public inbox for linux-bluetooth@vger.kernel.org
 help / color / mirror / Atom feed
From: "David Stockwell" <dstockwell@frequency-one.com>
To: "Marcel Holtmann" <marcel@holtmann.org>,
	"Johan Hedberg" <johan.hedberg@gmail.com>
Cc: "BlueZ development" <bluez-devel@lists.sourceforge.net>
Subject: Issues with BlueZ v3.31 Object Path Naming
Date: Wed, 21 May 2008 18:23:37 -0500	[thread overview]
Message-ID: <013e01c8bb99$b4ba5580$6701a8c0@freqonedev> (raw)

[-- Attachment #1: Type: text/plain, Size: 2955 bytes --]

I have not been chiming in for several weeks, because I have been busy hacking through code to figure out how bluez is supposed to work, how it actually works, and issues and incompatibilitites I am struggling with between bluez (DBus, v3.31) and the CSR BlueLab libraries (v4.0, compatible with BT2.1).; What fun.

In working with my test application, talking with bluez, I have run into the following and need clarification before proceeding:
  1.. What is the path name for the top level Manager interface?  Is it going to be "/org/bluez"? Or is it supposed to be "/"? 
    If you call the DefaultAdapter method with the "/org/bluez" path, it is resolved to call old_default_adapter in hcid/manager.c, returning a String representing the old Default Adapter path, or "/org/bluez/hci0"? 

    On the other hand, call the DefaultAdapter method with the "/" path, it is resolved to call default_adapter in hcid/manager.c, returning an Object (actually a string representing an object path), representing the NEW Default Adapter path: "/hci0".  However, when returning the Object, it also throws an error because, somehow, /hci0 was never registered.  (Unregistered object at path '/hci0'). Very bad result. 

    So, what should it be?  /org/bluez and /org/bluez/hci0?  Or / and /hci0? 

    And, while we are at it, should we clean up the documentation in docs/manager-api.txt and docs/adapter-api.txt?  Both refer to the "old" paths.  Let me know and I will be happy to "dive in". 

  2.. For what it is worth, the "new" and experimental Adapter methods ARE registered with path "/hci0", despite the apparent fact that no object '/hci0' is registered... 
  3.. I had been confused about opening an audio.Control device as opposed to (or in addition to, or in sequence with) a device under org.bluez.Adapter, using CreateDevice and CreatePairedDevice.  When I did get things to "work", sort of, CreateDevice would return a device path name like "/hci0/dev_xx_xx_xx_xx_xx_xx", but on return would fail with the same "Unregistered object at path" error as above. 
  4.. Along the lines of the last item, it does appear that one must pair, then one must create an audio "device" using the org.bluez.audio.Manager CreateDevice method (with path /org/bluez/audio).  Am I correct in this understanding? 
  5.. Yet another question: is the "/org/bluez/audio" path correct, or will it be changed in the future?  When I have used this method, it returns a device path of "/org/bluez/audio/device0".  It is interesting (and perhaps a bit strange) to use the device address, as opposed to the device path, to create this pseudo-device to provide the audio services (Device, Headset, Gateway, Sink, Source, Control).
I can quickly submit patches to unify the naming, etc., if you will tell me your current thinking and roadmap in this area.  However, I do not want to waste my time hacking if you are going in some other direction.

David Stockwell

[-- Attachment #2: Type: text/html, Size: 3641 bytes --]

             reply	other threads:[~2008-05-21 23:23 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-21 23:23 David Stockwell [this message]
2008-05-21 23:41 ` [Bluez-devel] Issues with BlueZ v3.31 Object Path Naming Marcel Holtmann
2008-05-22  2:26   ` David Stockwell
2008-05-22  7:54     ` [Bluez-devel] " Marcel Holtmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='013e01c8bb99$b4ba5580$6701a8c0@freqonedev' \
    --to=dstockwell@frequency-one.com \
    --cc=bluez-devel@lists.sourceforge.net \
    --cc=johan.hedberg@gmail.com \
    --cc=marcel@holtmann.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox