Re: d-bus or management api for beacon stuff

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Nov 24, 2016 at 03:07:21PM +0200, Luiz Augusto von Dentz wrote:
> Hi Don,
> 
> On Wed, Nov 23, 2016 at 11:40 PM, Don Zickus <dzickus@xxxxxxxxxx> wrote:
> > Hi,
> >
> > I was trying to write some code to continuously scan the bluetooth field
> > for bluetooth devices sending advertising packets (ie beacon-mode).
> 
> That is tricky, if you have anyone else trying to use the adapter in
> this situation it will probably be blocked, we may add support for
> setting intervals but that will probably be a best effort in case
> there is no connection or other usage of the adapter by the system.
> 
> > These devices would come and go so I wanted to avoid the cache.
> 
> Beacon are not normally not connectable, connections and continuous
> advertisement don't go well together so we will probably have to
> reduce the intervals in order to maintain any traffic on the
> connections.


Hi Luiz,

Thanks for the response.  I am wondering if I explained it wrong.  I wasn't
looking to do advertisements but instead scan for advertisements.  I also
don't plan to connect to any of the advertising device, just read the
advertised data.


> 
> > I noticed the D-Bus interface doesn't quite allow me to do this (as it
> > caches the devices and I can't monitor the RSSI field).  But I think the
> > bluetooth management interface does. Is that the correct approach?
> 
> Yep you could in theory use the MGMT interface and manually add you
> beacon management on top, but I guess you don't want applications to
> do that since it would require root permissions to connect to the
> management socket, so making bluetoothd, via kernel?, to adjust the
> intervals is probably a better idea in the long run. We would probably
> have to maintain the biggest advertising window possible, and the
> consider:
> 
> 1.  Is it connectable/there any advertising instance that is
> connectable? If yes, the it has to adjust the window to allow them
> (perhaps using the default connection parameters).
> 2.  In case of a connection is made the controller may not be able to
> advertise anymore, and in case it can still advertise we need to make
> sure it doesn't interrupt the connection (this is not very clear if
> the controller is suppose to manage this somehow).
> 3. Similar to the connection situation we may have application
> scanning, again there might be problems if the controller cannot scan
> while advertising we would probably have to stop advertising.

Hmm, as I said above, I am wondering if I explained it wrong.

I was wondering how much was already done because in reality, I was just
going to mimic what android does on the phones with apple ibeacons except my
machines stay put and the ibeacons travel.

Currently I was using 'hcitool lescan --duplicates' and 'hcidump' and trying
to script that.  But wanted to be smarter. :-)

Cheers,
Don
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux