blecm_startAdv() not work correctly when advInterval<160

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

When I using mybeacon example(in SDK 2.2.1), I got the same issue when I adjust blecm_startAdv()

blecm_startAdv() - advInterval <= 128 not working?

Register the callback function to print some message and check how many times advertisement_packet_transmission() been called before each adv.

bleprofile_notifyAdvPacketTransmissions(&advertisement_packet_transmission, 200);

    // Start advertisements

    blecm_startAdv(

        HCIULP_ADV_NONCONNECTABLE_EVENT,                // non-connectable undirected advertisement

        160,                                            // adv interval 100 msec

        HCIULP_ADV_CHANNEL_MAP_MASK,                    // all channels

        HCIULP_PUBLIC_ADDRESS,                          // int advAdrType,

        HCIULP_ADV_FILTER_POLICY_WHITE_LIST_NOT_USED,  // int advFilterPolicy,

        HCIULP_PUBLIC_ADDRESS,                          // int initiatorAdrType,

        NULL);                                          // UINT8* initiatorAdr

When advInterval=160, it works fine, advertisement_packet_transmission() called 10 times in one second,

but if the value lower than 160, advertisement_packet_transmission() been called only 1 time in one second.

in  ~/include/blecm.h

advInterval The advertisement interval in BT slots (min 32, max 16384).

typo?

1 Solution
Anonymous
Not applicable

Hello Jim,

The spec for NON-CONNECTABLE is 100msec and cannot be reduced.

Thanks

JT

View solution in original post

2 Replies