Found the answer:
The second set of advertisement data appears to be the Scan Response Packet. It has the
AdvDataBluetoothDeviceAddress block checked off. Since the Advertisement Packet did not have it checked it wasn't included. Therefore there was an additional two elements in the array of the Scan Response Packet.
Once I checked the box, I expected the two sets of data to be the same size. However, the actual result was that only one set then appeared to be sent. That's fine. It's what I really wanted, but I don't understand the details.
If anyone would care to explain it to me I'd be grateful.
>>"I have the fast advertising interval set to min=20ms and max=30ms but it appears to be advertising just every 10 seconds. "
--> Can you please tell how are you actually measuring the time between two advertisements? Are you using any analyser? If yes, can you please attach that file?
We have tested configuring advertisement with FAST advertising interval as 20 milli seconds. Please find the attached image showing the advertisement packets with corresponding time stamp.
Please ensure you have called the API CyBle_GappStartAdvertisement(CYBLE_ADVERTISING_FAST); with correct argument in your application.
If possible, please attach the application that you are testing to this thread.
advertisement.PNG 87.5 K
The data present in Scanresponse packet is only obtained when the Central performs Active scanning.
In case of passive scanning, the central receives only the advertisement data packet where as in case of passive scanning the central gets both the advertisement packet data and scan response packet data in the same event "CYBLE_EVT_SCAN_PROGRESS_RESULT"
Please update if your query is something else/if you need any other information.