nRF5 SDK v17.1.0
ANT SDM simulator
This information applies to the following SoftDevice: S212

This module simulates data for the SDM Transmitter. The API for this module is available here: ANT SDM simulator

The module uses the Sensor Data Simulator to simulate automatic changes of the cadence value.

Initialization

Use the following command to initialize the module:

const ant_sdm_simulator_cfg_t simulator_cfg = DEFAULT_ANT_SDM_SIMULATOR_CFG(&m_ant_sdm,
SIMULATOR_STRIDE_LEN,
SIMULATOR_BURN_RATE,
SIMULATOR_MIN,
SIMULATOR_MAX,
SIMULATOR_INCR);

If you want the cadence to be changed automatically, add the following statement:

ant_sdm_simulator_init(&m_ant_sdm_simulator, &simulator_cfg, true);

If you want to be able to change the cadence manually, add the following statement:

ant_sdm_simulator_init(&m_ant_sdm_simulator, &simulator_cfg, false);

Including the module in an application

Periodically call the SDM simulator in the application to prepare data for each TX event occurrence. The following snippet shows how to do this:

void ant_sdm_evt_handler(ant_sdm_profile_t * p_profile, ant_sdm_evt_t event)
{
switch (event)
{
/* fall through */
/* fall through */
/* fall through */
/* fall through */
/* fall through */
/* fall through */
ant_sdm_simulator_one_iteration(&m_ant_sdm_simulator);
break;
default:
break;
}
}

The following snippet shows how to change the cadence manually:

void bsp_evt_handler(bsp_event_t evt)
{
switch (evt)
{
ant_sdm_simulator_increment(&m_ant_sdm_simulator);
break;
ant_sdm_simulator_decrement(&m_ant_sdm_simulator);
break;
default:
return; // no implementation needed
}
}

Documentation feedback | Developer Zone | Subscribe | Updated