Search code examples
linuxbluetooth-lowenergybluez

Is there a way to advertise multiple beacons with BlueZ


I need to advertise 2 different sets of data, 31 bytes each. It doesn't look possible when I look at the core specification v4.0.

What I understand when looking a bit further, beacons can be advertised in 3 different channels : 37, 38, 39. LE Set Advertising Parameters Command makes it possible to choose a specific channel as well as all at once.

7.8.5  LE Set Advertising Parameters Command

Is it possible to advertise different data in different channels ?

If it is not possible, the only solution I remain with is changing the advertisement data periodically using LE Set Advertising Data Command.

I would be glad to see a bit insight on performance, stability and power consumption.


Solution

  • Yes, your device can act as several BLE beacons as long as you periodically change the advertising payload. Your suggestion of using LE Set Advertising Data Command is my recommended approach and you don't need to change the advertising channel for this purpose.

    In other words, what you can do on your device is set up a timer, and then as soon as the timer expires, you can switch to a different set of BLE data that is being advertised, which will create the affect of your device acting as multiple beacons.

    Please see the following links which may be helpful to your question as well:-

    I hope this helps.