Thread (5 messages) flat view 5 messages, 3 authors, 2011-07-20

Re: [RFC 1/3] Bluetooth: Implement Read RSSI command

From: Claudio Takahasi <hidden>
Date: 2011-07-20 14:48:27

Hi Marcel,

On Wed, Jul 13, 2011 at 4:47 PM, Marcel Holtmann [off-list ref] wrote:
Hi Anderson,
quoted
quoted
quoted
This patch implements helper functions to make Read RSSI command
interceptable by MGMT Interface. It adds a new wrapper in HCI layer and
add a hook to call mgmt_read_rssi_complete when MGMT Interface has been
loaded.

Read RSSI command is defined on Part E, section 7.5.4 of Bluetooth 4.0
Spec.
I think that I mentioned this before. This is not something I like to
see at all. 1:1 copies of HCI commands is pointless.

If you need RSSI results, then something like proper interval and
thresholds should be supported. Also with future Bluetooth SIG work on
having controller driven notifications in this area.
Note that even the RSSI and TX Power are implemented, it is not
possible to userspace request a RSSI or TX Power actively. If
userspace wants to receive RSSI and TX Power from the kernel, it must
add to the "monitored commands" and wait for the responses. Read RSSI
and TX Power Level are not being parsed on mgmt_control().
Maybe I should change the commit message of this patch and the next one.

New Management commands were implemented in the last RFC patch to
monitor selected commands.
no matter what, this needs to be done future proof in conjunction with
where the Bluetooth SIG is going for the controller driven notifications
of RSSI changes.

With older controllers we just have to emulate the behavior via a simple
poll mechanism.
The command to enable RSSI changes notification is not public, I hope
the changes in the Management API proposed by Briglia yesterday is
aligned with this new command.
However such monitored commands things seems like a hack as well. Please
use proper interfaces for threshold and interval values. Otherwise this
is all pointless. And you just wake up userspace for no real reason. The
plan is to get away from pointless userspace wakeups.

Regards

Marcel
About Tx Power... I understand that you don't want 1:1 mapping for HCI
commands in the management interface. Tx Power doesn't need to be
monitored, for LE it doesn't change. We could add a new management
command for Link Information command, but which relevant information
could be exposed by this Link Information command? Some commands are
applied to BREDR only, others to LE or AMP only.

At the moment we need Tx Power only, putting together Remote and Link
Information can be one alternative. Do you have other suggestion?
For example, we could create a management command called "Remote
Information" which returns: Tx Power, Features, version, ... Does it
make sense?

Regards,
Claudio
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help