2008-06-12 10:09:07

by Fritz Code

[permalink] [raw]
Subject: [Bluez-users] implement hcitool cc call with dbus interface

Hi all,

hcitool cc --role=s <bdaddr>
establishes a low level ACL connection.

I have to do that in a self-written tool with error-handling etc.
How can this be done through the dbus-interface, I've actually found no
method in the interfaces listed here http://wiki.bluez.org/wiki

Thanks a lot!

--
Regards,
--Codefritz


Attachments:
(No filename) (322.00 B)
(No filename) (439.00 B)
(No filename) (247.00 B)
(No filename) (164.00 B)
Download all attachments

2008-06-12 13:09:44

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] implement hcitool cc call with dbus interface

Hi Fritz,

> Ok taking a look at hcitool.c I understand.
> I will simply take the functions hci_open_dev and
> hci_create_connection (provided by bluez-lib) in order to implement
> the
> hcitool cc call in my application. So the kernel handles the low-level
> stuff like socket-calls etc ....

I am serious here. If you are trying to do this, then you are doing
something wrong. Your application should not deal with low-level ACL
link establishment.

> But anyway is there a way to do that through the comfortable dbus
> interface? I guess not.

No and that is because it is not needed.

Regards

Marcel



-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2008-06-12 13:08:31

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] implement hcitool cc call with dbus interface

Hi Fritz,

> hm but I have to setup a connection manually just like hcitool does
> (hcitool cc --role=s) in my programm.
> Is there now way to do that through the comfortable dbus interface?
> So just the same as hcitool cc --role=s <bdaddr> (this establishes a
> ACL connection, right? ) but more comfortable to implement
> error-handling etc.

let me repeat this. You should not do this at all! If a layer like
L2CAP, RFCOMM, SDP or whatever needs an ACL link, the kernel will create
it for you. No need to deal with it. So even in the case you issue a
manual HCI_Create_Connection, the kernel will take this down for you
after 2 seconds, if it has no users.

So again, don't deal with low-level ACL links by yourself. Your program
has no idea what it is doing anyway.

> >you don't have to do that at all. Never ever establish ACL links by
> >yourself. Let the kernel do it for you.
>
> In which ways does the kernel that for me, or how can I initiate it?
> I thought this can be done with socket-calls etc. as it done by a lot
> of tools like hcitool etc.

Call l2test -P 1 -n <bdaddr> and it will connect to the PSM for SDP and
the kernel will create the ACL in the background for you. Creating an
ACL link only is not useful at all. You always have to run a higher
level protocol.

Regards

Marcel



-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users

2008-06-12 11:12:09

by Fritz Code

[permalink] [raw]
Subject: Re: [Bluez-users] implement hcitool cc call with dbus interface

Ok taking a look at hcitool.c I understand.
I will simply take the functions hci_open_dev and hci_create_connection
(provided by bluez-lib) in order to implement the
hcitool cc call in my application. So the kernel handles the low-level stuff
like socket-calls etc ....

But anyway is there a way to do that through the comfortable dbus
interface? I guess not.

On Thu, Jun 12, 2008 at 12:37 PM, Fritz Code <[email protected]>
wrote:

> hm but I have to setup a connection manually just like hcitool does
> (hcitool cc --role=s) in my programm.
> Is there now way to do that through the comfortable dbus interface?
> So just the same as hcitool cc --role=s <bdaddr> (this establishes a ACL
> connection, right? ) but more comfortable to implement error-handling etc.
>
> >you don't have to do that at all. Never ever establish ACL links by
> >yourself. Let the kernel do it for you.
>
> In which ways does the kernel that for me, or how can I initiate it?
> I thought this can be done with socket-calls etc. as it done by a lot of
> tools like hcitool etc.
>
> Thanks,
> Fritz
>
>
>
>
> On Thu, Jun 12, 2008 at 12:29 PM, Marcel Holtmann <[email protected]>
> wrote:
>
>> Hi Fritz,
>>
>> > hcitool cc --role=s <bdaddr>
>> > establishes a low level ACL connection.
>> >
>> > I have to do that in a self-written tool with error-handling etc.
>> > How can this be done through the dbus-interface, I've actually found
>> > no method in the interfaces listed here http://wiki.bluez.org/wiki
>>
>
> >>you don't have to do that at all. Never ever establish ACL links by
> >>yourself. Let the kernel do it for you.
>
>>
>>
>> Regards
>>
>> Marcel
>>
>>
>>
>> -------------------------------------------------------------------------
>> Check out the new SourceForge.net Marketplace.
>> It's the best place to buy or sell services for
>> just about anything Open Source.
>> http://sourceforge.net/services/buy/index.php
>> _______________________________________________
>> Bluez-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/bluez-users
>>
>
>
>
> --
> Regards,
> --Codefritz
>
>
>
>


--
Regards,
--Codefritz


Attachments:
(No filename) (2.12 kB)
(No filename) (3.32 kB)
(No filename) (247.00 B)
(No filename) (164.00 B)
Download all attachments

2008-06-12 10:37:32

by Fritz Code

[permalink] [raw]
Subject: Re: [Bluez-users] implement hcitool cc call with dbus interface

hm but I have to setup a connection manually just like hcitool does (hcitool
cc --role=s) in my programm.
Is there now way to do that through the comfortable dbus interface?
So just the same as hcitool cc --role=s <bdaddr> (this establishes a ACL
connection, right? ) but more comfortable to implement error-handling etc.

>you don't have to do that at all. Never ever establish ACL links by
>yourself. Let the kernel do it for you.

In which ways does the kernel that for me, or how can I initiate it?
I thought this can be done with socket-calls etc. as it done by a lot of
tools like hcitool etc.

Thanks,
Fritz



On Thu, Jun 12, 2008 at 12:29 PM, Marcel Holtmann <[email protected]>
wrote:

> Hi Fritz,
>
> > hcitool cc --role=s <bdaddr>
> > establishes a low level ACL connection.
> >
> > I have to do that in a self-written tool with error-handling etc.
> > How can this be done through the dbus-interface, I've actually found
> > no method in the interfaces listed here http://wiki.bluez.org/wiki
>

>>you don't have to do that at all. Never ever establish ACL links by
>>yourself. Let the kernel do it for you.

>
>
> Regards
>
> Marcel
>
>
>
> -------------------------------------------------------------------------
> Check out the new SourceForge.net Marketplace.
> It's the best place to buy or sell services for
> just about anything Open Source.
> http://sourceforge.net/services/buy/index.php
> _______________________________________________
> Bluez-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/bluez-users
>



--
Regards,
--Codefritz


Attachments:
(No filename) (1.58 kB)
(No filename) (2.47 kB)
(No filename) (247.00 B)
(No filename) (164.00 B)
Download all attachments

2008-06-12 10:29:06

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-users] implement hcitool cc call with dbus interface

Hi Fritz,

> hcitool cc --role=s <bdaddr>
> establishes a low level ACL connection.
>
> I have to do that in a self-written tool with error-handling etc.
> How can this be done through the dbus-interface, I've actually found
> no method in the interfaces listed here http://wiki.bluez.org/wiki

you don't have to do that at all. Never ever establish ACL links by
yourself. Let the kernel do it for you.

Regards

Marcel



-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Bluez-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-users