Hi Dialog.
We need to change interval time in gapm_start_advertise_cmd to 32bit.
所以我们改变类型的intv_min intv_max印尼t32_t.
struct gapm_start_advertise_cmd
{
/// GAPM requested operation:
/// - GAPM_ADV_NON_CONN: Start non connectable advertising
/// - GAPM_ADV_UNDIRECT: Start undirected connectable advertising
/// - GAPM_ADV_DIRECT: Start directed connectable advertising
struct gapm_air_operation op;
/// Minimum interval for advertising
uint32_t intv_min;
/// Maximum interval for advertising
uint32_t intv_max;
///Advertising channel map
uint8_t channel_map;
/// Advertising information
union gapm_adv_info
{
/// Host information advertising data (GAPM_ADV_NON_CONN and GAPM_ADV_UNDIRECT)
struct gapm_adv_host host;
/// Direct address information (GAPM_ADV_DIRECT)
/// (used only if reconnection address isn't set or privacy disabled)
struct gap_bdaddr direct;
} info;
};
In addition, we changed arguments of related functions defined in app_mid.h to 32 bits.
As a result, we can no longer scan advertising.
Do you have good idea to change interval time to 32bit?
Thank you.
Hi Mimura,
It is strongly recommended to not change the advertising interval to 32 bit integer, and the reason is because the stack probably handles the message as 16bit. Also, according to BLE specifications, the time between the beginning of two consecutive ADV_IND PDUs within an advertising event shall be less than or equal to 10 ms. So, the most possible reason that the device is not advertising yet is because of the large advertising interval. Could you please let me know if the is a specific reason that you want to change the advertising interval to 32bit?
Thanks, PM_Dialog
Hi PM_Dialog
Thank you for yuor advice.
We will review the specifications.
Thank you.
Hi Mimura,
Yes, please, it would be very useful to check the BLE core specifications. Also, be aware that the advertising interval shall be an integer multiple of 0.625 ms. If you found any of the above answers useful please mark one of them as accepted.
Thanks, PM_Dialog