Re: monitoring advertisements from specific device(s)

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

 



Hi Luiz,
Quoting Luiz Augusto von Dentz (2024-08-14 16:47:27)
> Hi Anton,
> 
> On Wed, Aug 14, 2024 at 5:14 AM Anton Khirnov <anton@xxxxxxxxxxx> wrote:
> >
> > Hi,
> > I'm developing a program that needs to monitor advertisements from
> > a known LE device (or several) and take action based on their contents.
> > From looking at the kernel code, there seem to be two relevant ways to
> > initiate passive scanning:
> > 1) performing MGMT_OP_ADD_DEVICE with HCI_AUTO_CONN_REPORT;
> > 2) using an advertisement monitor.
> >
> > However, it seems that 1) always enables the duplicates filter, so only
> > one advertisement for a given device is ever reported; meanwhile 2) can
> > (after my recent patch) report all the advertisements, but disables
> > device filtering - so userspace receives reports from all devices, not
> > just those I care about, which seems inefficient.
> >
> > My question then is this - should my use case be implemented by
> > a) extending HCI_AUTO_CONN_REPORT processing code to allow disabling the
> >    duplicates filter on request;
> > b) extending the advertisement monitor interface to allow monitoring
> >    only specific devices;
> > c) something else?
> 
> Have a look at scan.pattern, it sets a filter which can be either the
> name or address using active scanning, passive scanning is only meant
> for auto-connect and depending on things like LL privacy being enable
> the host may not even see the advertisement reports since it would be
> done using acceptlist/whitelist filtering which is done directly in
> the controller.

I would very much prefer to avoid active scanning. Perhaps it was not
clear from my email, but my program is intended to be a daemon that
spends most of its time waiting for advertisements to come in. In my
understanding it's very undesirable to spend extended periods of time
actively scanning.

Also, the advertisement monitor interface already does almost exactly
what I want, except for the fact it forces me to receive advertisements
from devices I'm not interested in.

Thanks,
-- 
Anton Khirnov





[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