3 Replies Latest reply on Aug 7, 2015 5:35 AM by ShawnA_01

    BLE - Difference between High and Low Advertising?

      Hi all,

       

      My table is like this:

       

      const BLE_PROFILE_CFG contact_exchg_cfg =

      {

        /*.fine_timer_interval            =*/ CONTACT_EXCHG_FINE_TIMER, // 500 ms

        /*.default_adv                    =*/ 4,    // HIGH_UNDIRECTED_DISCOVERABLE

        /*.button_adv_toggle              =*/ 0,    // pairing button make adv toggle (if 1) or always on (if 0)

       

            /*.high_undirect_adv_interval     =*/ 200, // slots (320 = every 200 ms)

            /*.low_undirect_adv_interval      =*/ 200, // slots

            /*.high_undirect_adv_duration     =*/ 4,   // seconds

            /*.low_undirect_adv_duration      =*/ 4,  // seconds

       

        /*.high_direct_adv_interval       =*/ 0,    // seconds

        /*.low_direct_adv_interval        =*/ 0,    // seconds

        /*.high_direct_adv_duration       =*/ 0,    // seconds

        /*.low_direct_adv_duration        =*/ 0,    // seconds

      ...

      };

       

      where one can see that High and Low advertising parameters are identical and set to 125 ms interval.

       

      If I call

      bleprofile_Discoverable(HIGH_UNDIRECTED_DISCOVERABLE, NULL);

      I do get an interval of 125 ms, which is what I expected.


      But if I call

      bleprofile_Discoverable(LOW_UNDIRECTED_DISCOVERABLE, NULL);

      I see an interval of 1 s (and I did NOT expect to see that).

       

      Why is it different?  Now I'm confused about this "high" vs. "low" advertising.  Why did it divide the frequency (multiplied the interval) by 8?

       

      Thanks,

      Gil