This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi Team,
An advertising event (Legacy advertising event) can last <=20 ms as per specification and same event will repeated after (advertising interval + random delay). Within an advertising event the PDU's on 37 - 38 and 38 - 39 is also separated by <= 10 ms. My query is that what is the time between PDU's on 37 - 38 and 38 - 39 ?. Is it a constant value always as per TI implementation, if so what is the value ?. If not, I hope it's a random value and depends on type of advertising packet. If yes, what is the time separation between 37 - 38 and 38 - 39 corresponding to different advertising packets ?.
Thanks in advance.
Regards
Rahul
Hi Rahul,
I will ask internally and get an expert to comment. In the meantime, this is something that can definitely be measured with a launchpad and a packet sniffer. Have you tried to measure it yourself?
Best,
Nate
Hi Nathan,
No, I have not done that on my own. First, I want to get implementation details from your side and later I want to check them for my understanding.
Regards
Rahul
Hi Rahul,
In our software, if there is only one legacy advertising set, then we will send out adv on 38 39 asap followed PDU on channel 37.
The default spacing is around ~650us, however, if there is conflicts on scheduler, a advertising PDU might be discarded/postponed based on the application layer setting.
For more information on TI BLE STACK LL scheduler behavior, please see:
Hi Lee,
Thanks for the answer. I also observed more or less ~650 µs between 37 - 38 and 38 - 39 PDU's in legacy non connectable non scannable advertising event. Could you please comment on this time separation in the case of other PDU's, for example connectable and scannable PDU's require additional RX to get scan request or connection request and TX for sending scan response.
Thanks
Rahul
Hi Rahul,
for example connectable and scannable PDU's require additional RX to get scan request or connection request and TX for sending scan response.
I assume you're asking here about the timing when a device receives a scan request after advertising on channels 37/38/39 and sends a scan response as a result.
I measure approximately 1.3 milliseconds between beginning the advertisement on channel 38, scanning (and receiving a scan request), sending a scan response and beginning to advertise on channel 39.
I did this by adding the following right before BIOS_start() in main.c of the example simple_peripheral code.
#include <driverlib/ioc.h> main(){ ..... // Map RFC_GPO0 to DIO6 IOCPortConfigureSet(IOID_6, IOC_PORT_RFC_GPO0,IOC_IOMODE_NORMAL); // Map RFC_GPO1 to DIO7 IOCPortConfigureSet(IOID_7, IOC_PORT_RFC_GPO1,IOC_IOMODE_NORMAL); /* enable interrupts and start SYS/BIOS */ BIOS_start(); return 0; }
Best,
Nate
Hi Nate,
Thanks for the answer. I will check this on my side and I will get back in case if I have further queries.
Regards
Rahul
Dear Nathan,
Thanks for the answer. I just have a follow up question to this. From your timing picture it is clear that when peripheral sends advertising on 37th channel it will scan for either scan request or connection request from near central devices before sending advertising PDU on 38th channel. My query is that will the peripheral also scans advertising PDU's from near by broadcaster during the scan between 37th and 38th channel advertising apart from scan request/connection request?.
Thanks for the reply.
Regards
Rahul
Hi Rahul,
The peripheral defined by Bluetooth Specification does not receive(scan) other advertising packets. It will only listen too scan request/connection request.
So no, it won't listen to other broadcaster's adv packets.
Hi Lee,
Thanks for the quick reply. That answers my query. Please close this query.
Regards
Rahul