All of lore.kernel.org
 help / color / mirror / Atom feed
* Question about power tables or other transmit power limit
@ 2008-11-04 13:15 Florian Schwehn
  2008-11-24  3:03 ` Marcel Holtmann
  0 siblings, 1 reply; 3+ messages in thread
From: Florian Schwehn @ 2008-11-04 13:15 UTC (permalink / raw)
  To: linux-bluetooth

Hi all,

we are looking into limiting transmit power for our bluetooth file  
server project. The idea is to limit sending radius so that people  
don't feel harassed if they do not want to receive files.

First we tried to read the RSSI during device discovery and base our  
decision on that. But the readings varied too much because of power  
saving methods like power tables.

Since we cannot update the firmware of the mobile phones, we decided  
to try to limit the transmit power for our device discovery HCI  
device. After reading about things a bit and browsing through the docs  
that CSR provides, we tried to cap the maximum power or to change the  
power tables with the bccmd. Unfortunately, the dongle doesn't seem to  
accept the change. After setting the value and re-reading it, the  
change is gone:

[root@horst Desktop]# bccmd psget 0x0017
Maximum transmit power: 0x0004 (4)
[root@horst Desktop]# bccmd psset 0x0017 0
[root@horst Desktop]# bccmd psget 0x0017
Maximum transmit power: 0x0004 (4)

I also tried dump all PS keys and restoring the modified dump - same  
issue.

Does anybody have experience with this? Do we need special BT dongles?  
We are also inquiring with CSR at the moment, but using a windows  
software is not an option, as our project is using embedded Linux (of  
course :).

Looking forward to any help.

Best regards,

Florian.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Question about power tables or other transmit power limit
  2008-11-04 13:15 Question about power tables or other transmit power limit Florian Schwehn
@ 2008-11-24  3:03 ` Marcel Holtmann
  2008-12-12 22:00   ` Clemens Cap
  0 siblings, 1 reply; 3+ messages in thread
From: Marcel Holtmann @ 2008-11-24  3:03 UTC (permalink / raw)
  To: Florian Schwehn; +Cc: linux-bluetooth

Hi Florian,

> we are looking into limiting transmit power for our bluetooth file  
> server project. The idea is to limit sending radius so that people  
> don't feel harassed if they do not want to receive files.
>
> First we tried to read the RSSI during device discovery and base our  
> decision on that. But the readings varied too much because of power  
> saving methods like power tables.
>
> Since we cannot update the firmware of the mobile phones, we decided  
> to try to limit the transmit power for our device discovery HCI  
> device. After reading about things a bit and browsing through the  
> docs that CSR provides, we tried to cap the maximum power or to  
> change the power tables with the bccmd. Unfortunately, the dongle  
> doesn't seem to accept the change. After setting the value and re- 
> reading it, the change is gone:
>
> [root@horst Desktop]# bccmd psget 0x0017
> Maximum transmit power: 0x0004 (4)
> [root@horst Desktop]# bccmd psset 0x0017 0
> [root@horst Desktop]# bccmd psget 0x0017
> Maximum transmit power: 0x0004 (4)
>
> I also tried dump all PS keys and restoring the modified dump - same  
> issue.
>
> Does anybody have experience with this? Do we need special BT  
> dongles? We are also inquiring with CSR at the moment, but using a  
> windows software is not an option, as our project is using embedded  
> Linux (of course :).

this is a hardware detail that you better discuss with CSR people  
since while I know a lot about their hardware, I am not that deep into  
all the details. And messing with PS keys can result in unexpected  
things.

Regards

Marcel


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Question about power tables or other transmit power limit
  2008-11-24  3:03 ` Marcel Holtmann
@ 2008-12-12 22:00   ` Clemens Cap
  0 siblings, 0 replies; 3+ messages in thread
From: Clemens Cap @ 2008-12-12 22:00 UTC (permalink / raw)
  To: Marcel Holtmann; +Cc: Florian Schwehn, linux-bluetooth

Hello Florian,

we are researching a similar issue.

Marcel Holtmann wrote:
>> we are looking into limiting transmit power for our bluetooth file 
>> server project. The idea is to limit sending radius so that people 
>> don't feel harassed if they do not want to receive files.
>>
>> First we tried to read the RSSI during device discovery and base our 
>> decision on that. But the readings varied too much because of power 
>> saving methods like power tables.

RSSI does not work - power regulation mechanisms compensate signal 
strength loss and you only get indications of signal break down near at 
the limit of the range. Better approaches may be LQ, BER, inquiry 
response rates, l2ping delay rates and others. There are plenty of 
recent research papers on this at ieee or acm digital libraries which do 
not go rather deep but are proofs of concepts. We have a student digging 
into fusion concepts of the various indicators using statistical 
filtering approaches.

>> power tables with the bccmd. Unfortunately, the dongle doesn't seem to 
>> accept the change. After setting the value and re-reading it, the 
>> change is gone:
>>
>> [root@horst Desktop]# bccmd psget 0x0017
>> Maximum transmit power: 0x0004 (4)

First, make sure that you write into the correct memory bank (find out 
the memory structure using bccmd).

Second make sure you warmstart the dongle after adaption and be aware 
that the bluecore only reacts to a PS key value at certain moments 
during the operation cycle. There is not an immediate reaction of the bc 
to the ps key value.

>> I also tried dump all PS keys and restoring the modified dump - same 
>> issue.

Which dongles are you using?

This does not work with most class 2 dongles. Took us a while to figure 
that out as well.

>> Does anybody have experience with this? Do we need special BT dongles? 
>> We are also inquiring with CSR at the moment, but using a windows 
>> software is not an option, as our project is using embedded Linux (of 
>> course :).
> 
> this is a hardware detail that you better discuss with CSR people since 
> while I know a lot about their hardware, I am not that deep into all the 
> details. And messing with PS keys can result in unexpected things.

Beware of this remark... We already "consumed" 3 dongles by typos and 
mistakes in setting up incorrect ps keys. We got them working again, but 
it took us a while to "unbrick" them.


Please let me know if you get some results regarding the power table. We 
currently are trying this approach but without much success lately.

Best regards
Clemens.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-12-12 22:00 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-04 13:15 Question about power tables or other transmit power limit Florian Schwehn
2008-11-24  3:03 ` Marcel Holtmann
2008-12-12 22:00   ` Clemens Cap

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.