Re: Exposing bssid information
James Prestwood <[email protected]>
| Newsgroups | dev.linux.lists.iwd |
|---|---|
| Message-ID | <[email protected]> |
Hi Jim,
On 2/15/25 12:10 PM, James Hanley wrote:
> Hi,
> I’m looking to access (and/or expose) via dbus scanned information on
> bssid. Specifically, information as follows:
>
> {
> "wifiAccessPoints": [
> {
> "macAddress": "f0:d5:bf:fd:12:ae",
> "signalStrength": -43,
> "signalToNoiseRatio": 0,
> "channel": 11,
> "age": 0
> },
> {
> "macAddress": "3c:37:86:5d:75:d4",
> "signalStrength": -35,
> "signalToNoiseRatio": 0
> },
> {
> "macAddress": "30:86:2d:c4:29:d0",
> "signalStrength": -35,
> "signalToNoiseRatio": 0
> }
> ]
> }
>
> This would be for geolocation services such as skyhook or google
> https://developers.google.com/maps/documentation/geolocation/requests-geolocation
> to allow a device to estimate its location. It seems that what is
> exposed is ESSID information with the strongest AP, or does is this
> information already exposed in iwd and which module/interface should
> be used? If not exposed, which model would be the most appropriate to
> add this to - scan, station, or another - and what interface for dbus
> should the method be exposed through?
Take a look at the ExtendedServiceSet property [1] on the network
objects. This contains a list of BasicServiceSet object [2] paths. At
the moment the BasicServiceSet objects only contain the BSSID as this
was all I really needed for the affinity functionality, but I'm not
opposed to additional info being added such as signal strength/channel
etc. If you need any pointers for this let me know, but it should be
relatively straight forward to add extra properties in the interface
setup [3].
iwctl also supports showing the BSS object paths/properties via:
"station wlan0 get-bsses"
[1]
https://git.kernel.org/pub/scm/network/wireless/iwd.git/tree/doc/network-api.txt#n54
[2]
https://git.kernel.org/pub/scm/network/wireless/iwd.git/tree/doc/basic-service-set.txt
[3]
https://git.kernel.org/pub/scm/network/wireless/iwd.git/tree/src/network.c#n2196
>
> -Jim
>