S212 SoftDevice v0.9.1
Modules | Data Structures | Macros | Enumerations
ANT Application Interface

ANT Stack Application Programming Interface (API). More...

Modules

 ANT Error Return
 
 ANT Stack Parameters
 

Data Structures

struct  ANT_ENABLE
 

Macros

#define STK_SVC_BASE_2   0xC0
 

Enumerations

enum  {
  SVC_ANT_STACK_INIT = 0xC0,
  SVC_ANT_EVENT_GET,
  SVC_ANT_CHANNEL_ASSIGN,
  SVC_ANT_CHANNEL_UNASSIGN,
  SVC_ANT_CHANNEL_OPEN,
  SVC_ANT_CHANNEL_CLOSE,
  SVC_ANT_RX_SCAN_MODE_START,
  SVC_ANT_TX_BROADCAST_MESSAGE,
  SVC_ANT_TX_ACKNOWLEDGED_MESSAGE,
  SVC_ANT_BURST_HANDLER_REQUEST,
  SVC_ANT_PENDING_TRANSMIT_CLEAR,
  SVC_ANT_TRANSFER_STOP,
  SVC_ANT_NETWORK_KEY_SET,
  SVC_ANT_CHANNEL_RADIO_FREQ_SET,
  SVC_ANT_CHANNEL_RADIO_FREQ_GET,
  SVC_ANT_CHANNEL_RADIO_TX_POWER_SET,
  SVC_ANT_PROX_SEARCH_SET,
  SVC_ANT_CHANNEL_PERIOD_SET,
  SVC_ANT_CHANNEL_PERIOD_GET,
  SVC_ANT_CHANNEL_ID_SET,
  SVC_ANT_CHANNEL_ID_GET,
  SVC_ANT_SEARCH_WAVEFORM_SET,
  SVC_ANT_CHANNEL_RX_SEARCH_TIMEOUT_SET,
  SVC_ANT_SEARCH_CHANNEL_PRIORITY_SET,
  SVC_ANT_ACTIVE_SEARCH_SHARING_CYCLES_SET,
  SVC_ANT_ACTIVE_SEARCH_SHARING_CYCLES_GET,
  SVC_ANT_CHANNEL_LOW_PRIO_RX_SEARCH_TIMEOUT_SET,
  SVC_ANT_ADV_BURST_CONFIG_SET,
  SVC_ANT_ADV_BURST_CONFIG_GET,
  SVC_ANT_LIB_CONFIG_SET,
  SVC_ANT_LIB_CONFIG_CLEAR,
  SVC_ANT_LIB_CONFIG_GET,
  SVC_ANT_ID_LIST_ADD,
  SVC_ANT_ID_LIST_CONFIG,
  SVC_ANT_AUTO_FREQ_HOP_TABLE_SET,
  SVC_ANT_EVENT_FILTERING_SET,
  SVC_ANT_EVENT_FILTERING_GET,
  SVC_ANT_ACTIVE,
  SVC_ANT_CHANNEL_IN_PROGRESS,
  SVC_ANT_CHANNEL_STATUS_GET,
  SVC_ANT_PENDING_TRANSMIT,
  SVC_ANT_INIT_CW_TEST_MODE,
  SVC_ANT_CW_TEST_MODE,
  SVC_ANT_VERSION,
  SVC_ANT_CAPABILITIES,
  SVC_ANT_BURST_HANDLER_WAIT_FLAG_ENABLE,
  SVC_ANT_BURST_HANDLER_WAIT_FLAG_DISABLE,
  SVC_ANT_SDU_MASK_SET,
  SVC_ANT_SDU_MASK_GET,
  SVC_ANT_SDU_MASK_CONFIG,
  SVC_ANT_CRYPTO_CHANNEL_ENABLE,
  SVC_ANT_CRYPTO_KEY_SET,
  SVC_ANT_CRYPTO_INFO_SET,
  SVC_ANT_CRYPTO_INFO_GET,
  SVC_ANT_RFACTIVE_NOTIFICATION_CONFIG_SET,
  SVC_ANT_RFACTIVE_NOTIFICATION_CONFIG_GET,
  SVC_ANT_COEX_CONFIG_SET,
  SVC_ANT_COEX_CONFIG_GET,
  SVC_ANT_ENABLE,
  SVC_ANT_RESERVED1,
  SVC_ANT_RESERVED2,
  SVC_ANT_EXTENDED0,
  SVC_ANT_EXTENDED1,
  SVC_ANT_EXTENDED2
}
 ANT Stack API SVC numbers.
 

ANT API functions

uint32_t sd_ant_stack_reset (void)
 Function for initializing or re-initializing ANT Stack. More...
 
uint32_t sd_ant_event_get (uint8_t *pucChannel, uint8_t *pucEvent, uint8_t *aucANTMesg)
 This function returns ANT channel events and data messages. More...
 
uint32_t sd_ant_channel_assign (uint8_t ucChannel, uint8_t ucChannelType, uint8_t ucNetwork, uint8_t ucExtAssign)
 This function assigns and initializes a new channel. More...
 
uint32_t sd_ant_channel_unassign (uint8_t ucChannel)
 This function unassigns a channel. The channel to unassign must be in an assigned state. More...
 
uint32_t sd_ant_channel_open (uint8_t ucChannel)
 This function opens and activates a channel. The channel to open must be in an assigned state. More...
 
uint32_t sd_ant_channel_close (uint8_t ucChannel)
 This function closes a channel. The channel must be in an open state (SEARCHING or TRACKING). More...
 
uint32_t sd_ant_rx_scan_mode_start (uint8_t ucSyncChannelPacketsOnly)
 This function starts receive scanning mode feature. Channel 0 must be assigned. All other channels must be closed. More...
 
uint32_t sd_ant_broadcast_message_tx (uint8_t ucChannel, uint8_t ucSize, uint8_t *aucMesg)
 This function is used to set broadcast data for transmission. More...
 
uint32_t sd_ant_acknowledge_message_tx (uint8_t ucChannel, uint8_t ucSize, uint8_t *aucMesg)
 This function is used to send an acknowledge message. This message requests an acknowledgement from the slave to validate reception. More...
 
uint32_t sd_ant_burst_handler_request (uint8_t ucChannel, uint16_t usSize, uint8_t *aucData, uint8_t ucBurstSegment)
 This function is used to queue data for burst transmission. After every successful call, the input buffer is held in use by the burst handler and must not be changed. When the burst handler releases the input buffer, it will either generate a EVENT_TRANSFER_NEXT_DATA_BLOCK event or clear a specified wait flag assigned to the burst handler. Transfer end events: EVENT_TRANSFER_TX_COMPLETED and EVENT_TRANSFER_TX_FAILED also releases the input buffer. Special care must be made to ensure that the input buffer does not change until it is released by the burst handler to avoid data corruption. Use of burst segment identifiers (BURST_SEGMENT_START, BURST_SEGMENT_CONTINUE, and BURST_SEGMENT_END) is required to indicate the sequence of the data block being sent as a burst transfer. More...
 
uint32_t sd_ant_pending_transmit_clear (uint8_t ucChannel, uint8_t *pucSuccess)
 This function clears a pending transmit. Primarily intended for shared slave channels (receive channel). More...
 
uint32_t sd_ant_transfer_stop (void)
 This function kills a receive transfer that is in progress. More...
 
uint32_t sd_ant_network_address_set (uint8_t ucNetwork, uint8_t *aucNetworkKey)
 This function sets the 64bit network address. More...
 
uint32_t sd_ant_channel_radio_freq_set (uint8_t ucChannel, uint8_t ucFreq)
 This function sets the radio frequency of an ANT channel. More...
 
uint32_t sd_ant_channel_radio_freq_get (uint8_t ucChannel, uint8_t *pucRfreq)
 This function returns the radio frequency of an ANT channel. More...
 
uint32_t sd_ant_channel_radio_tx_power_set (uint8_t ucChannel, uint8_t ucTxPower, uint8_t ucCustomTxPower)
 This function sets the radio tx power. More...
 
uint32_t sd_ant_prox_search_set (uint8_t ucChannel, uint8_t ucProxThreshold, uint8_t ucCustomProxThreshold)
 This function sets the sensitivity threshold for acquisition on a searching channel. One time set. More...
 
uint32_t sd_ant_channel_period_set (uint8_t ucChannel, uint16_t usPeriod)
 This function sets the channel period. More...
 
uint32_t sd_ant_channel_period_get (uint8_t ucChannel, uint16_t *pusPeriod)
 This function returns the current channel period. More...
 
uint32_t sd_ant_channel_id_set (uint8_t ucChannel, uint16_t usDeviceNumber, uint8_t ucDeviceType, uint8_t ucTransmitType)
 This function sets the channel ID. More...
 
uint32_t sd_ant_channel_id_get (uint8_t ucChannel, uint16_t *pusDeviceNumber, uint8_t *pucDeviceType, uint8_t *pucTransmitType)
 This function returns the current Channel ID of a channel. More...
 
uint32_t sd_ant_search_waveform_set (uint8_t ucChannel, uint16_t usWaveform)
 This function sets the searching waveform value of an ANT Channel. More...
 
uint32_t sd_ant_channel_rx_search_timeout_set (uint8_t ucChannel, uint8_t ucTimeout)
 This function sets the receive channel search timeout. More...
 
uint32_t sd_ant_search_channel_priority_set (uint8_t ucChannel, uint8_t ucSearchPriority)
 This function sets the channel's search priority. More...
 
uint32_t sd_ant_active_search_sharing_cycles_set (uint8_t ucChannel, uint8_t ucCycles)
 This function sets the search cycle number of separate searching channels for active search time sharing. More...
 
uint32_t sd_ant_active_search_sharing_cycles_get (uint8_t ucChannel, uint8_t *pucCycles)
 This function returns the search sharing cycles number of the specified searching channel for active search time sharing. More...
 
uint32_t sd_ant_channel_low_priority_rx_search_timeout_set (uint8_t ucChannel, uint8_t ucTimeout)
 This function sets the low priority search timeout value of a channel. More...
 
uint32_t sd_ant_adv_burst_config_set (uint8_t *aucConfig, uint8_t ucSize)
 This function sets the advanced burst configuration. Configuration structure is as follows: Required Byte0 = 0-Disable, 1-Enable. See Advanced Burst Configuration Defines in ant_parameters.h. Required Byte1 = RF payload size. See Advanced Burst Configuration Defines in ant_parameters.h. Required Byte2 = Required advanced burst modes. See Advanced Burst Configuration Defines in ant_parameters.h. Required Byte3 = 0, Reserved Required Byte4 = 0, Reserved Required Byte5 = Optional advanced burst modes. See Advanced Burst Configuration Defines in ant_parameters.h. Required Byte6 = 0, Reserved Required Byte7 = 0, Reserved Optional Byte8 = Advanced burst stalling count config LSB. Typical is 3210 (~10s of stalling) where each count represents ~3ms of stalling. Optional Byte9 = Advanced burst stalling count config MSB. Optional Byte10 = Advanced burst retry count cycle extension. Typical is 3 (15 retries) where each count cycles represents 5 retries. More...
 
uint32_t sd_ant_adv_burst_config_get (uint8_t ucRequestType, uint8_t *aucConfig)
 This function gets the advance burst configuration and supported capabilities. Returned structure is as follows for configuration: Byte0 = RF payload size. See Advanced Burst Configuration Defines in ant_parameters.h. Byte1 = Required advanced burst modes. See Advanced Burst Configuration Defines in ant_parameters.h. Byte2 = 0, Reserved Byte3 = 0, Reserved Byte4 = Optional advanced burst modes. See Advanced Burst Configuration Defines in ant_parameters.h. Byte5 = 0, Reserved Byte6 = 0, Reserved Byte7 = Advanced burst stalling count config LSB. Each count represents ~3ms of stalling. Byte8 = Advanced burst stalling count config MSB Byte9 = Advanced burst retry count cycle extension. Each count cycle represents 5 retries. More...
 
uint32_t sd_ant_lib_config_set (uint8_t ucANTLibConfig)
 This function sets the ANT Messaging Library Configuration used by Extended messaging. More...
 
uint32_t sd_ant_lib_config_clear (uint8_t ucANTLibConfig)
 This function clears the ANT Messaging Library Configuration. More...
 
uint32_t sd_ant_lib_config_get (uint8_t *pucANTLibConfig)
 This function returns current ANT Messaging Library Configuration. More...
 
uint32_t sd_ant_id_list_add (uint8_t ucChannel, uint8_t *aucDevId, uint8_t ucListIndex)
 This function is used to add a Device ID to an include or exclude list. More...
 
uint32_t sd_ant_id_list_config (uint8_t ucChannel, uint8_t ucIDListSize, uint8_t ucIncExcFlag)
 This function is used to configure the device ID list as include or exclude as well as the number of IDs to compare against. More...
 
uint32_t sd_ant_auto_freq_hop_table_set (uint8_t ucChannel, uint8_t ucFreq0, uint8_t ucFreq1, uint8_t ucFreq2)
 This function populates the frequency hop table list. This table is used when frequency hopping is enabled on a channel via extended assignment bit. More...
 
uint32_t sd_ant_event_filtering_set (uint16_t usFilter)
 This function is used to specify filter configuration for channel event message generation. More...
 
uint32_t sd_ant_event_filtering_get (uint16_t *pusFilter)
 This function is used to retrieve the filter configuration for channel event message generation. More...
 
uint32_t sd_ant_active (uint8_t *pbAntActive)
 This function gets the ANT activity status. More...
 
uint32_t sd_ant_channel_in_progress (uint8_t *pbChannelInProgress)
 This function gets the status if the channel is in progress. More...
 
uint32_t sd_ant_channel_status_get (uint8_t ucChannel, uint8_t *pucStatus)
 This function gets a specific channel's status. More...
 
uint32_t sd_ant_pending_transmit (uint8_t ucChannel, uint8_t *pucPending)
 This function determines if there is a pending transmission on a specific channel. More...
 
uint32_t sd_ant_cw_test_mode_init (void)
 This function initialize the stack to get ready for a continuous wave transmission test. More...
 
uint32_t sd_ant_cw_test_mode (uint8_t ucRadioFreq, uint8_t ucTxPower, uint8_t ucCustomTxPower, uint8_t ucMode)
 This function starts a continuous wave test mode transmission. More...
 
uint32_t sd_ant_version_get (uint8_t *aucVersion)
 This function gets the version string of the ANT stack. More...
 
uint32_t sd_ant_capabilities_get (uint8_t *aucCapabilities)
 This function gets the capabilities of the stack. More...
 
uint32_t sd_ant_burst_handler_wait_flag_enable (uint8_t *pucWaitFlag)
 This function assigns a wait variable to the the burst handler. When the input buffer is locked by the handler the wait flag is set to 1. When the input buffer is unlocked, the wait flag is set to 0. When a wait flag is assigned, EVENT_TRANSFER_NEXT_DATA_BLOCK events will not be generated until the wait flag unassigned. The wait flag should be declared as a static variable. More...
 
uint32_t sd_ant_burst_handler_wait_flag_disable (void)
 This function unassigns any previously assigned wait variable from the burst handler. The burst handler returns to the default method in generating EVENT_TRANSFER_NEXT_DATA_BLOCK to indicate input buffer unlock. More...
 
uint32_t sd_ant_sdu_mask_set (uint8_t ucMask, uint8_t *aucMask)
 This function is used to assign a selective data update (SDU) mask (8 octets) to an identifier, ucMask. More...
 
uint32_t sd_ant_sdu_mask_get (uint8_t ucMask, uint8_t *aucMask)
 This function returns the selective data update (SDU) mask (8 octets) from the specified identifier, ucMask. More...
 
uint32_t sd_ant_sdu_mask_config (uint8_t ucChannel, uint8_t ucMaskConfig)
 This function assigns a SDU mask configuration to a particular channel. The configuration specifies the mask identifier and the type of rx data in which the mask should be applied to. More...
 
uint32_t sd_ant_crypto_channel_enable (uint8_t ucChannel, uint8_t ucEnable, uint8_t ucKeyNum, uint8_t ucDecimationRate)
 This function enables/disables 128-bit AES encryption mode to the specified channel. Advanced burst must be enabled beforehand to enable encrypted channel. More...
 
uint32_t sd_ant_crypto_key_set (uint8_t ucKeyNum, uint8_t *aucKey)
 This function assigns a 128-bit AES encryption key to a key index. More...
 
uint32_t sd_ant_crypto_info_set (uint8_t ucType, uint8_t *aucInfo)
 This function sets specific information to be exchanged between the channel master and slave during encryption channel set-up/negotiation. More...
 
uint32_t sd_ant_crypto_info_get (uint8_t ucType, uint8_t *aucInfo)
 This function retrieves specific information to be exchanged between the channel master and slave during encryption channel set-up/negotiation. More...
 
uint32_t sd_ant_rfactive_notification_config_set (uint8_t ucMode, uint16_t usTimeThreshold)
 This function enables/disables event notifications to be generated to the application indicating the time to the next ANT radio activity exceeds the configured time threshold. Latency (delay in event notification being received and processed by application) must be taken into account if attempting to use this generated event to perform operations prior to the radio activity. Cannot be used if asynchronous tx channel is assigned or used. Please note that this only generates events for ANT radio activity. More...
 
uint32_t sd_ant_rfactive_notification_config_get (uint8_t *pucMode, uint16_t *pusTimeThreshold)
 This function retrieves the ANT rf active notification configuration. More...
 
uint32_t sd_ant_coex_config_set (uint8_t ucChannel, uint8_t *aucCoexConfig, uint8_t *aucAdvCoexConfig)
 This function sets ANT radio coexistence behaviour. Supported only if ANT is sharing radio HW concurrently with another wireless protocol. Configuration structure is as follows: Byte0 = Configuration enable bitfield bit0 - enable/disable tx/rx channel keep alive config (Byte4/5 & Byte6/7) bit1 - enable/disable tx/rx channel fixed interval priority config (Byte1) bit2 - enable/disable transfer keep alive config (Byte2) bit3 - enable/disable search channel fixed interval priority config (Byte3) else - reserved Byte1 = tx/rx channel fixed interval priority configuration Byte2 = transfer keep alive configuration Byte3 = search channel fixed interval priority configuration Byte4(LSB)/Byte5(MSB) = tx channel keep alive configuration Byte6(LSB)/Byte7(MSB) = rx channel keep alive configuration. More...
 
uint32_t sd_ant_coex_config_get (uint8_t ucChannel, uint8_t *aucCoexConfig, uint8_t *aucAdvCoexConfig)
 This function retrieves the configured ANT radio coexistence behaviour as described in ant_coex_config_set. More...
 
uint32_t sd_ant_enable (ANT_ENABLE *const pstChannelEnable)
 This function is used to specify the total number of ANT channels, number of encrypted channels (subset of total ANT channels) and transmit burst queue size to be supported by the ANT stack. Upon enabling the SoftDevice successfully, the ANT stack defaults to supporting 1 ANT channel (encryption capable) and a 64 byte transmit burst buffer. If additional channels are needed and/or more encrypted channels are needed and/or larger tx burst buffer size is needed, then the desired configuration can be specified to the SoftDevice using this function. In this case, a static RAM buffer (of minimum size defined by ANT_ENABLE_GET_REQUIRED_SPACE) must be supplied by the application to be used by the ANT SoftDevice stack. More...
 
uint32_t sd_ant_extended0 (uint8_t ucExtID, void *pvArg0, void *pvArg1, void *pvArg2)
 Extended0 ANT SVCs. Access extended SVC functions via ucExtID. More...
 
#define SD_ANT_EXT0_ID_WAKEON_RF_ACTIVITY_CONFIG_SET   0x00
 This function configures CPU wake on ANT RF activity behaviour. CPU is woken up via generation of SD_EVENT_IRQn interrupt upon the start of specified RF activity. In order to wakeup in the event that SD_EVENT_IRQn is disabled, the SEVONPEND flag has to be set in the Cortex-M0 System Control Register (SCR). CPU is dissallowed from entering low power state when calling sd_app_event_wait() for the duration of the RF activity. The intention of this function is to allow/disallow sudden shifts in current consumption during RF transmission/ RF reception window which may impact RF performance. When enabled there is a slight increase in average current consumption for ANT activities. More...
 
#define SD_ANT_EXT0_ID_WAKEON_RF_ACTIVITY_CONFIG_GET   0x01
 This function retrieves the configured CPU wake on ANT RF activity behaviour. More...
 
#define SD_ANT_EXT0_ID_ENHANCED_CHANNEL_SPACING_SET   0x02
 This function enables or disables a feature for preventing long periods of consecutive multi-tracking channel collisions. This feature is enabled by default/upon stack reset. More...
 

Detailed Description

ANT Stack Application Programming Interface (API).

Macro Definition Documentation

#define SD_ANT_EXT0_ID_ENHANCED_CHANNEL_SPACING_SET   0x02

This function enables or disables a feature for preventing long periods of consecutive multi-tracking channel collisions. This feature is enabled by default/upon stack reset.

Parameters
[in]ucExtID= SD_ANT_EXT0_ID_ENHANCED_CHANNEL_SPACING_SET
[out]pvArg0is a pointer to unsigned char (1 octet) denoting enable/disable control. See Enhanced Channel Spacing Defines in ant_parameters.h
[in,out]pvArg1is unused. Set to NULL.
[in,out]pvArg2is unused. Set to NULL.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
#define SD_ANT_EXT0_ID_WAKEON_RF_ACTIVITY_CONFIG_GET   0x01

This function retrieves the configured CPU wake on ANT RF activity behaviour.

Parameters
[in]ucExtID= SD_ANT_EXT0_ID_WAKEON_RF_ACTIVITY_CONFIG_GET
[out]pvArg0is a pointer to unsigned char (1 octet) denoting where the CPU wakeup configuration will be stored.
[in,out]pvArg1is unused. Set to NULL.
[in,out]pvArg2is unused. Set to NULL.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
#define SD_ANT_EXT0_ID_WAKEON_RF_ACTIVITY_CONFIG_SET   0x00

This function configures CPU wake on ANT RF activity behaviour. CPU is woken up via generation of SD_EVENT_IRQn interrupt upon the start of specified RF activity. In order to wakeup in the event that SD_EVENT_IRQn is disabled, the SEVONPEND flag has to be set in the Cortex-M0 System Control Register (SCR). CPU is dissallowed from entering low power state when calling sd_app_event_wait() for the duration of the RF activity. The intention of this function is to allow/disallow sudden shifts in current consumption during RF transmission/ RF reception window which may impact RF performance. When enabled there is a slight increase in average current consumption for ANT activities.

Parameters
[in]ucExtID= SD_ANT_EXT0_ID_WAKEON_RF_ACTIVITY_CONFIG_SET
[in]pvArg0is a pointer to unsigned char (1 octet) denoting the CPU wakeup configuration. See Wake On RF Activity Defines in ant_parameters.h.
[in,out]pvArg1is unused. Set to NULL.
[in,out]pvArg2is unused. Set to NULL.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM

Function Documentation

uint32_t sd_ant_acknowledge_message_tx ( uint8_t  ucChannel,
uint8_t  ucSize,
uint8_t *  aucMesg 
)

This function is used to send an acknowledge message. This message requests an acknowledgement from the slave to validate reception.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel to send the data on.
[in]ucSizeis an unsigned char (1 octet) denoting the size of the message, ucSize must be 8.
[in]aucMesgis the buffer where the message is located (array must be 8 octets).
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED NRF_ANT_ERROR_MESSAGE_SIZE_EXCEEDS_LIMIT NRF_ANT_ERROR_INVALID_SCAN_TX_CHANNEL NRF_ANT_ERROR_CHANNEL_IN_WRONG_STATE NRF_ANT_ERROR_TRANSFER_IN_PROGRESS NRF_ANT_ERROR_TRANSFER_IN_ERROR
uint32_t sd_ant_active ( uint8_t *  pbAntActive)

This function gets the ANT activity status.

Parameters
[out]pbAntActiveis the pointer to an unsigned char (1 octet) where the ANT activity value will be stored. 1 = active, 0 = otherwise.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
uint32_t sd_ant_active_search_sharing_cycles_get ( uint8_t  ucChannel,
uint8_t *  pucCycles 
)

This function returns the search sharing cycles number of the specified searching channel for active search time sharing.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to query.
[out]pucCyclesis the pointer to an unsigned char (1 octet) where the cycle value will be stored.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_active_search_sharing_cycles_set ( uint8_t  ucChannel,
uint8_t  ucCycles 
)

This function sets the search cycle number of separate searching channels for active search time sharing.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to configure.
[in]ucCyclesis an unsigned char (1 octet) denoting the number of cycles to set.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_adv_burst_config_get ( uint8_t  ucRequestType,
uint8_t *  aucConfig 
)

This function gets the advance burst configuration and supported capabilities. Returned structure is as follows for configuration: Byte0 = RF payload size. See Advanced Burst Configuration Defines in ant_parameters.h. Byte1 = Required advanced burst modes. See Advanced Burst Configuration Defines in ant_parameters.h. Byte2 = 0, Reserved Byte3 = 0, Reserved Byte4 = Optional advanced burst modes. See Advanced Burst Configuration Defines in ant_parameters.h. Byte5 = 0, Reserved Byte6 = 0, Reserved Byte7 = Advanced burst stalling count config LSB. Each count represents ~3ms of stalling. Byte8 = Advanced burst stalling count config MSB Byte9 = Advanced burst retry count cycle extension. Each count cycle represents 5 retries.

    Returned structure is as follows for capabilities:
    Byte0 = Supported RF payload size. See Advanced Burst Configuration Defines in ant_parameters.h.
    Byte1 = Supported burst configurations. See Advanced Burst Configuration Defines in ant_parameters.h.
    Byte2 = 0, Reserved
    Byte3 = 0, Reserved
Parameters
[in]ucRequestTypeis an unsigned char (1 octet) denoting the type of request. 1 = configuration, 0 = capability.
[out]aucConfigis the pointer to the buffer where the configuration/capabilities will be read to. The array should be at least 10 octets
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
uint32_t sd_ant_adv_burst_config_set ( uint8_t *  aucConfig,
uint8_t  ucSize 
)

This function sets the advanced burst configuration. Configuration structure is as follows: Required Byte0 = 0-Disable, 1-Enable. See Advanced Burst Configuration Defines in ant_parameters.h. Required Byte1 = RF payload size. See Advanced Burst Configuration Defines in ant_parameters.h. Required Byte2 = Required advanced burst modes. See Advanced Burst Configuration Defines in ant_parameters.h. Required Byte3 = 0, Reserved Required Byte4 = 0, Reserved Required Byte5 = Optional advanced burst modes. See Advanced Burst Configuration Defines in ant_parameters.h. Required Byte6 = 0, Reserved Required Byte7 = 0, Reserved Optional Byte8 = Advanced burst stalling count config LSB. Typical is 3210 (~10s of stalling) where each count represents ~3ms of stalling. Optional Byte9 = Advanced burst stalling count config MSB. Optional Byte10 = Advanced burst retry count cycle extension. Typical is 3 (15 retries) where each count cycles represents 5 retries.

Parameters
[in]aucConfigis a buffer containing the advanced burst configuration to be set (as stated above).
[in]ucSizeis an unsigned char (1 octet) denoting the size of the configuration parameter buffer. Minimum config set is 8 octets, maximum is 11 octets.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_auto_freq_hop_table_set ( uint8_t  ucChannel,
uint8_t  ucFreq0,
uint8_t  ucFreq1,
uint8_t  ucFreq2 
)

This function populates the frequency hop table list. This table is used when frequency hopping is enabled on a channel via extended assignment bit.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to set the frequency hop table list.
[in]ucFreq0is an unsigned char (1 octet) denoting the offset from 2400MHz of the 1st frequency hop value.
[in]ucFreq1is an unsigned char (1 octet) denoting the offset from 2400MHz of the 2nd frequency hop value.
[in]ucFreq2is an unsigned char (1 octet) denoting the offset from 2400MHz of the 3rd frequency hop value.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_broadcast_message_tx ( uint8_t  ucChannel,
uint8_t  ucSize,
uint8_t *  aucMesg 
)

This function is used to set broadcast data for transmission.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel to send the data on.
[in]ucSizeis an unsigned char (1 octet) denoting the size of the message, ucSize must be 8.
[in]aucMesgis the buffer where the message is located (array must be 8 octets).
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED NRF_ANT_ERROR_MESSAGE_SIZE_EXCEEDS_LIMIT NRF_ANT_ERROR_INVALID_SCAN_TX_CHANNEL NRF_ANT_ERROR_CHANNEL_IN_WRONG_STATE NRF_ANT_ERROR_TRANSFER_IN_PROGRESS NRF_ANT_ERROR_TRANSFER_IN_ERROR
uint32_t sd_ant_burst_handler_request ( uint8_t  ucChannel,
uint16_t  usSize,
uint8_t *  aucData,
uint8_t  ucBurstSegment 
)

This function is used to queue data for burst transmission. After every successful call, the input buffer is held in use by the burst handler and must not be changed. When the burst handler releases the input buffer, it will either generate a EVENT_TRANSFER_NEXT_DATA_BLOCK event or clear a specified wait flag assigned to the burst handler. Transfer end events: EVENT_TRANSFER_TX_COMPLETED and EVENT_TRANSFER_TX_FAILED also releases the input buffer. Special care must be made to ensure that the input buffer does not change until it is released by the burst handler to avoid data corruption. Use of burst segment identifiers (BURST_SEGMENT_START, BURST_SEGMENT_CONTINUE, and BURST_SEGMENT_END) is required to indicate the sequence of the data block being sent as a burst transfer.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel to do a burst transmission.
[in]usSizeis an unsigned short (2 octets) denoting the size of the message block. Size must be divisible by 8.
[in]aucDatais the buffer where the message block is located.
[in]ucBurstSegmentis an unsigned char (1 octet) containing a bitfield representing the message block type. See Tx Burst Handler Request Segment Defines in ant_parameters.h.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED NRF_ANT_ERROR_INVALID_SCAN_TX_CHANNEL NRF_ANT_ERROR_CHANNEL_NOT_OPENED NRF_ANT_ERROR_TRANSFER_SEQUENCE_NUMBER_ERROR NRF_ANT_ERROR_TRANSFER_IN_PROGRESS NRF_ANT_ERROR_TRANSFER_IN_ERROR NRF_ANT_ERROR_MESSAGE_SIZE_EXCEEDS_LIMIT NRF_ANT_ERROR_CHANNEL_IN_WRONG_STATE NRF_ANT_ERROR_TRANSFER_BUSY
uint32_t sd_ant_burst_handler_wait_flag_disable ( void  )

This function unassigns any previously assigned wait variable from the burst handler. The burst handler returns to the default method in generating EVENT_TRANSFER_NEXT_DATA_BLOCK to indicate input buffer unlock.

Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_TRANSFER_IN_PROGRESS
uint32_t sd_ant_burst_handler_wait_flag_enable ( uint8_t *  pucWaitFlag)

This function assigns a wait variable to the the burst handler. When the input buffer is locked by the handler the wait flag is set to 1. When the input buffer is unlocked, the wait flag is set to 0. When a wait flag is assigned, EVENT_TRANSFER_NEXT_DATA_BLOCK events will not be generated until the wait flag unassigned. The wait flag should be declared as a static variable.

Parameters
[in]pucWaitFlagis the pointer to a static unsigned char (1 octet) where the status of the burst handler will be updated.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_TRANSFER_IN_PROGRESS
uint32_t sd_ant_capabilities_get ( uint8_t *  aucCapabilities)

This function gets the capabilities of the stack.

Parameters
[out]aucCapabilitiesis the pointer to the buffer where the capabilities message will be copied, the array should be at least 8 octets. Byte0 = Maximum supported ANT channels Byte1 = Maximum supported ANT networks Byte2 = CAPABILITIES_STANDARD. See Standard capabilities defines in ant_parameters.h Byte3 = CAPABILITIES_ADVANCED. See Advanced capabilities defines in ant_parameters.h Byte4 = CAPABILITIES_ADVANCED_2. See Advanced capabilities 2 defines in ant_parameters.h Byte5 = Maximum support ANT data channels (only applicable for SensRcore support) Byte6 = CAPABILITIES_ADVANCED_3. See Advanced capabilities 3 defines in ant_parameters.h Byte7 = CAPABILITIES_ADVANCED_4. Advanced capabilities 4 defines in ant_parameters.h
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
uint32_t sd_ant_channel_assign ( uint8_t  ucChannel,
uint8_t  ucChannelType,
uint8_t  ucNetwork,
uint8_t  ucExtAssign 
)

This function assigns and initializes a new channel.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel to assign.
[in]ucChannelTypeis an unsigned char (1 octet) denoting the channel type. See Assign Channel Parameters/Assign Channel Types in ant_parameters.h.
[in]ucNetworkis an unsigned char (1 octet) denoting the network key to associate with the channel.
[in]ucExtAssignis a bit field (1 octet) for an extended assign. See Ext. Assign Channel Parameters in ant_parameters.h.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED NRF_ANT_ERROR_INVALID_NETWORK_NUMBER NRF_ANT_ERROR_CHANNEL_IN_WRONG_STATE
uint32_t sd_ant_channel_close ( uint8_t  ucChannel)

This function closes a channel. The channel must be in an open state (SEARCHING or TRACKING).

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel to close.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED NRF_ANT_ERROR_CHANNEL_IN_WRONG_STATE
uint32_t sd_ant_channel_id_get ( uint8_t  ucChannel,
uint16_t *  pusDeviceNumber,
uint8_t *  pucDeviceType,
uint8_t *  pucTransmitType 
)

This function returns the current Channel ID of a channel.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to query.
[out]pusDeviceNumberis the pointer to an unsigned short (2 octets) where the device number will be stored.
[out]pucDeviceTypeis the pointer to an unsigned char (1 octet) where the device type will be stored.
[out]pucTransmitTypeis the pointer to an unsigned char (1 octet) where the transmit type will be stored.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_channel_id_set ( uint8_t  ucChannel,
uint16_t  usDeviceNumber,
uint8_t  ucDeviceType,
uint8_t  ucTransmitType 
)

This function sets the channel ID.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to set.
[in]usDeviceNumberis an unsigned short (2 octets) denoting the device number.
[in]ucDeviceTypeis an unsigned char (1 octet) denoting the device type.
[in]ucTransmitTypeis an unsigned char (1 octet) denoting the transmission type.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_channel_in_progress ( uint8_t *  pbChannelInProgress)

This function gets the status if the channel is in progress.

Parameters
[out]pbChannelInProgressis the pointer to an unsigned char (1 octet) where the result will be stored. 1 = in progress, 0 = otherwise.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
uint32_t sd_ant_channel_low_priority_rx_search_timeout_set ( uint8_t  ucChannel,
uint8_t  ucTimeout 
)

This function sets the low priority search timeout value of a channel.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to set.
[in]ucTimeoutis an unsigned char (1 octet) denoting the timeout value in 2.5 seconds increments. Default = 2 (5s).
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_channel_open ( uint8_t  ucChannel)

This function opens and activates a channel. The channel to open must be in an assigned state.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel to open.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED NRF_ANT_ERROR_CHANNEL_IN_WRONG_STATE
uint32_t sd_ant_channel_period_get ( uint8_t  ucChannel,
uint16_t *  pusPeriod 
)

This function returns the current channel period.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to query.
[out]pusPeriodis the pointer to an unsigned short (2 octets) where the channel period will be stored.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_channel_period_set ( uint8_t  ucChannel,
uint16_t  usPeriod 
)

This function sets the channel period.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to set the period to.
[in]usPeriodis an unsigned short (2 octets) denoting the period in 32 kHz counts (usPeriod/32768 s).
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_channel_radio_freq_get ( uint8_t  ucChannel,
uint8_t *  pucRfreq 
)

This function returns the radio frequency of an ANT channel.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to query.
[out]pucRfreqis the pointer to an unsigned char (1 octet) where the frequency will be stored.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_channel_radio_freq_set ( uint8_t  ucChannel,
uint8_t  ucFreq 
)

This function sets the radio frequency of an ANT channel.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to set to.
[in]ucFreqis an unsigned char (1 octet) denoting the radio frequency offset from 2400MHz (eg. 2466MHz, ucFreq = 66).
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_NETWORK_NUMBER
uint32_t sd_ant_channel_radio_tx_power_set ( uint8_t  ucChannel,
uint8_t  ucTxPower,
uint8_t  ucCustomTxPower 
)

This function sets the radio tx power.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to assign the radio tx power.
[in]ucTxPoweris an unsigned char (1 octet) denoting the ANT transmit power index. See Radio TX Power Definitions in ant_parameters.h.
[in]ucCustomTxPoweris an unsigned char (1 octet) denoting the custom nRF transmit power as defined in nrf51_bitfields.h. Only applicable if ucTxPower is set to custom tx power selection.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_channel_rx_search_timeout_set ( uint8_t  ucChannel,
uint8_t  ucTimeout 
)

This function sets the receive channel search timeout.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to set.
[in]ucTimeoutis an unsigned char (1 octet) denoting the timeout value in 2.5 second increments. Default = 10 (25s).
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_channel_status_get ( uint8_t  ucChannel,
uint8_t *  pucStatus 
)

This function gets a specific channel's status.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to query.
[out]pucStatusis the pointer to an unsigned char (1 octet) where the channel status will be stored. See Channel Status in ant_parameters.h.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_channel_unassign ( uint8_t  ucChannel)

This function unassigns a channel. The channel to unassign must be in an assigned state.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel to unassign.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED NRF_ANT_ERROR_CHANNEL_IN_WRONG_STATE
uint32_t sd_ant_coex_config_get ( uint8_t  ucChannel,
uint8_t *  aucCoexConfig,
uint8_t *  aucAdvCoexConfig 
)

This function retrieves the configured ANT radio coexistence behaviour as described in ant_coex_config_set.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel to query.
[out]aucCoexConfigis the pointer to a buffer where the coexistence configuration will be stored. Must be at least 8 octet in size. Set as null to ignore.
[out]aucAdvCoexConfigis the pointer to a buffer where the advanced coexistence configuration will be stored. Must be at least 8 octet in size. Set as null to ignore.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
uint32_t sd_ant_coex_config_set ( uint8_t  ucChannel,
uint8_t *  aucCoexConfig,
uint8_t *  aucAdvCoexConfig 
)

This function sets ANT radio coexistence behaviour. Supported only if ANT is sharing radio HW concurrently with another wireless protocol. Configuration structure is as follows: Byte0 = Configuration enable bitfield bit0 - enable/disable tx/rx channel keep alive config (Byte4/5 & Byte6/7) bit1 - enable/disable tx/rx channel fixed interval priority config (Byte1) bit2 - enable/disable transfer keep alive config (Byte2) bit3 - enable/disable search channel fixed interval priority config (Byte3) else - reserved Byte1 = tx/rx channel fixed interval priority configuration Byte2 = transfer keep alive configuration Byte3 = search channel fixed interval priority configuration Byte4(LSB)/Byte5(MSB) = tx channel keep alive configuration Byte6(LSB)/Byte7(MSB) = rx channel keep alive configuration.

     Advanced configuration structure is as follows:
     Byte0 = Configuration enable bitfield
             bit0 - enable/disable priority override config (Byte1)
             bit1-7 - reserved
     Byte1 = ANT priority override. 0 = low, 1 = normal(default), 2 = high, 3 = critical
     Byte2 = Reserved
     Byte3 = Reserved
     Byte4 = Reserved
     Byte5 = Reserved
     Byte6 = Reserved
     Byte7 = Reserved
Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel for which the coexistence configuration is to be set.
[in]aucCoexConfigis a buffer containing the coex configuration to be set. Must be 8 octet in size. Set as null for no change.
[in]aucAdvCoexConfigis a buffer containing the advanced coex configuration to be set. Must be 8 octet in size. Set as null for no change.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
uint32_t sd_ant_crypto_channel_enable ( uint8_t  ucChannel,
uint8_t  ucEnable,
uint8_t  ucKeyNum,
uint8_t  ucDecimationRate 
)

This function enables/disables 128-bit AES encryption mode to the specified channel. Advanced burst must be enabled beforehand to enable encrypted channel.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel in which encryption mode is set.
[in]ucEnableis an unsigned char (1 octet) denoting the encryption mode. See Encrypted Channel Defines in ant_parameters.h.
[in]ucKeyNumis an unsigned char (1 octet) denoting the key index of the 128-bit key to be used for encryption. The key index range is bound by the number of encrypted channels configured by sd_ant_enable(). If sd_ant_enable() is not used then by default ucKeyNum is 0. Range is [0 to (num encrypted channels - 1)], if 1 or more encrypted channels are configured.
[in]ucDecimationRateis an unsigned char (1 octet) denoting the decimate rate to apply for encrypted slave channel. Must be > 0.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED NRF_ANT_ERROR_INVALID_SCAN_TX_CHANNEL NRF_ANT_ERROR_CHANNEL_NOT_OPENED NRF_ANT_ERROR_TRANSFER_SEQUENCE_NUMBER_ERROR NRF_ANT_ERROR_TRANSFER_IN_PROGRESS NRF_ANT_ERROR_TRANSFER_IN_ERROR NRF_ANT_ERROR_MESSAGE_SIZE_EXCEEDS_LIMIT NRF_ANT_ERROR_CHANNEL_IN_WRONG_STATE NRF_ANT_ERROR_TRANSFER_BUSY
uint32_t sd_ant_crypto_info_get ( uint8_t  ucType,
uint8_t *  aucInfo 
)

This function retrieves specific information to be exchanged between the channel master and slave during encryption channel set-up/negotiation.

Parameters
[in]ucTypeis an unsigned char (1 octet) denoting the type of information being requested. See Encrypted Channel Defines in ant_parameters.h.
[out]aucInfois a pointer to a buffer in which the information retrieved will be copied to (1 octet for supported mode, 4 octets for ID, 19 octets for custom user data).
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
uint32_t sd_ant_crypto_info_set ( uint8_t  ucType,
uint8_t *  aucInfo 
)

This function sets specific information to be exchanged between the channel master and slave during encryption channel set-up/negotiation.

Parameters
[in]ucTypeis an unsigned char (1 octet) denoting the type of information being set. See Encrypted Channel Defines in ant_parameters.h.
[in]aucInfois a buffer containing the information being set (4 octets for ID, 19 octets for custom user data).
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_crypto_key_set ( uint8_t  ucKeyNum,
uint8_t *  aucKey 
)

This function assigns a 128-bit AES encryption key to a key index.

Parameters
[in]ucKeyNumis an unsigned char (1 octet) denoting the key index for assignment. The key index range is bound by the number of encrypted channels configured by sd_ant_enable(). If sd_ant_enable() is not used then by default ucKeyNum is 0. Range is [0 to (num encrypted channels - 1)], if 1 or more encrypted channels are configured.
[in]aucKeyis a buffer (16 octets) containing the 128-bit AES key to be assigned to the key index.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_cw_test_mode ( uint8_t  ucRadioFreq,
uint8_t  ucTxPower,
uint8_t  ucCustomTxPower,
uint8_t  ucMode 
)

This function starts a continuous wave test mode transmission.

Parameters
[in]ucRadioFreqis an unsigned char (1 octet) denoting the radio frequency offset from 2400MHz for continuous wave mode. (eg. 2466MHz, ucRadioFreq = 66).
[in]ucTxPoweris an unsigned char (1 octet) denoting the ANT transmit power index for continuous wave mode. See Radio TX Power Definitions in ant_parameters.h
[in]ucCustomTxPoweris an unsigned char (1 octet) denoting the custom nRF transmit power as defined in nrf51_bitfields.h. Only applicable if ucTxPower is set to custom tx power selection.
[in]ucModeis an unsigned char (1 octet) denoting test mode type where 0 = cw tx carrier transmission, 1 = cw tx modulated transmission
Returns
NRF_SUCCESS
uint32_t sd_ant_cw_test_mode_init ( void  )

This function initialize the stack to get ready for a continuous wave transmission test.

Returns
NRF_SUCCESS
uint32_t sd_ant_enable ( ANT_ENABLE *const  pstChannelEnable)

This function is used to specify the total number of ANT channels, number of encrypted channels (subset of total ANT channels) and transmit burst queue size to be supported by the ANT stack. Upon enabling the SoftDevice successfully, the ANT stack defaults to supporting 1 ANT channel (encryption capable) and a 64 byte transmit burst buffer. If additional channels are needed and/or more encrypted channels are needed and/or larger tx burst buffer size is needed, then the desired configuration can be specified to the SoftDevice using this function. In this case, a static RAM buffer (of minimum size defined by ANT_ENABLE_GET_REQUIRED_SPACE) must be supplied by the application to be used by the ANT SoftDevice stack.

     Notes: - If used, function should be called immediately after sd_softdevice_enable() and before any ANT related SVC calls.
            - Using sd_ant_stack_reset() will not reset ANT stack channel allocation configuration. It will be maintained.
            - Disabling the SoftDevice and then re-enabling the SoFtDevice will reset channel allocation to default. Any previously supplied memory buffer by the application will not be used.
Parameters
[in]pstChannelEnableis a pointer to ANT_ENABLE structure. where ucTotalNumberOfChannels is an unsigned char (1 octet) denoting the total number of ANT channels desired (1 to MAX_ANT_CHANNELS, defined in ant_parameters.h) where ucTotalNumberOfEncryptedChannels is an unsigned char (1 octet) denoting the total number of ANT channels (0 to ucTotalNumberOfChannels) that support encryption where pucMemoryBlockStartLocation is the pointer to an application supplied buffer to be used by the ANT SoftDevice stack. where usMemoryBlockByteSize is an unsigned short (2 octet) denoting the size of the given memory block (pucMemoryBlockStartLocation). The defined ANT_ENABLE_GET_REQUIRED_SPACE macro (see ant_parameters.h) should be used to determine the minimum buffer size requirement
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
uint32_t sd_ant_event_filtering_get ( uint16_t *  pusFilter)

This function is used to retrieve the filter configuration for channel event message generation.

Parameters
[out]pusFilteris the pointer to an unsigned short (2 octets) where the filter configuration will be stored. See Event Filtering in ant_parameters.h.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
uint32_t sd_ant_event_filtering_set ( uint16_t  usFilter)

This function is used to specify filter configuration for channel event message generation.

Parameters
[in]usFilteris an unsigned short (2 octets) denoting the filter configuration bitfield. See Event Filtering in ant_parameters.h.
Returns
NRF_SUCCESS
uint32_t sd_ant_event_get ( uint8_t *  pucChannel,
uint8_t *  pucEvent,
uint8_t *  aucANTMesg 
)

This function returns ANT channel events and data messages.

Parameters
[out]pucChannelis the pointer to an unsigned char (1 octet) where the channel number will be copied.
[out]pucEventis the pointer to an unsigned char (1 octet) where the event code will be copied. See Channel Events and Command Response Codes in ant_parameters.h.
[out]aucANTMesgis the buffer where event's message will be copied. The array size must be at least MESG_BUFFER_SIZE to accommadate the entire ANT_MESSAGE structure size. See ANT Message Structure in ant_parameters.h.
Returns
NRF_SUCCESS
NRF_ERROR_INVALID_PARAM
NRF_ERROR_NOT_FOUND
uint32_t sd_ant_extended0 ( uint8_t  ucExtID,
void *  pvArg0,
void *  pvArg1,
void *  pvArg2 
)

Extended0 ANT SVCs. Access extended SVC functions via ucExtID.

Parameters
[in]ucExtIDis the extended ID defined by SD_ANT_EXT0_ID_<name>
[in,out]pvArg0is first argument to extended ANT SVC function specified by ucExtID
[in,out]pvArg1is second argument to extended ANT SVC function specified by ucExtID
[in,out]pvArg2is third argument to extended ANT SVC function specified by ucExtID
Returns
Return value(s) of extended ANT SVC function specified by ucExtID
uint32_t sd_ant_id_list_add ( uint8_t  ucChannel,
uint8_t *  aucDevId,
uint8_t  ucListIndex 
)

This function is used to add a Device ID to an include or exclude list.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to add the list entry to.
[in]aucDevIdis the pointer to the buffer (4 octets) containing device ID information with the following format: Byte0 = DeviceNumber_LSB Byte1 = DeviceNumber_MSB Byte2 = DeviceType Byte3 = TransType
[in]ucListIndexis an unsigned char (1 octet) denoting the index where the specified Channel ID is to be placed in the list (0-3).
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED NRF_ANT_ERROR_INVALID_LIST_ID
uint32_t sd_ant_id_list_config ( uint8_t  ucChannel,
uint8_t  ucIDListSize,
uint8_t  ucIncExcFlag 
)

This function is used to configure the device ID list as include or exclude as well as the number of IDs to compare against.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number of the device ID list.
[in]ucIDListSizeis an unsigned char (1 octet) denoting the size of the inclusion or exclusion list (0-4).
[in]ucIncExcFlagis an unsigned char (1 octet) denoting the type of list as Include(0) or Exclude(1)
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED NRF_ANT_ERROR_INVALID_LIST_ID
uint32_t sd_ant_lib_config_clear ( uint8_t  ucANTLibConfig)

This function clears the ANT Messaging Library Configuration.

Parameters
[in]ucANTLibConfigis an unsigned char (1 octet) denoting the ANT lib Config bit(s) to clear. See ANT Library Config in ant_parameters.h.
Returns
NRF_SUCCESS
uint32_t sd_ant_lib_config_get ( uint8_t *  pucANTLibConfig)

This function returns current ANT Messaging Library Configuration.

Parameters
[out]pucANTLibConfigis the pointer to an unsigned char (1 octet) where the bit flags will be stored. See ANT Library Config in ant_parameters.h.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
uint32_t sd_ant_lib_config_set ( uint8_t  ucANTLibConfig)

This function sets the ANT Messaging Library Configuration used by Extended messaging.

Parameters
[in]ucANTLibConfigis an unsigned char (1 octet) denoting the ANT lib config bit flags. See ANT Library Config in ant_parameters.h.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_network_address_set ( uint8_t  ucNetwork,
uint8_t *  aucNetworkKey 
)

This function sets the 64bit network address.

Parameters
[in]ucNetworkis an unsigned char (1 octet) denoting the network number to assign the network address to.
[in]aucNetworkKeyis the pointer to location of the Network Key (8 octets in length)
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_NETWORK_NUMBER
uint32_t sd_ant_pending_transmit ( uint8_t  ucChannel,
uint8_t *  pucPending 
)

This function determines if there is a pending transmission on a specific channel.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to query.
[out]pucPendingis the pointer to an unsigned char (1 octet) where the pending result will be stored. 1 = pending, 0 = otherwise.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_pending_transmit_clear ( uint8_t  ucChannel,
uint8_t *  pucSuccess 
)

This function clears a pending transmit. Primarily intended for shared slave channels (receive channel).

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel to clear pending transmit.
[out]pucSuccessis the pointer to an unsigned char (1 octet) where the result will be stored.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_prox_search_set ( uint8_t  ucChannel,
uint8_t  ucProxThreshold,
uint8_t  ucCustomProxThreshold 
)

This function sets the sensitivity threshold for acquisition on a searching channel. One time set.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number.
[in]ucProxThresholdis an unsigned char (1 octet) denoting the minimum RSSI threshold required for acquisition during a search. See Radio Proximity Search Threshold in ant_parameters.h
[in]ucCustomProxThresholdis an unsigned char (1 octet) denoting the custom minimum RSSI threshold for acquisition during a search. Only applicable if ucProxThreshold is set to custom proximity selection.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_rfactive_notification_config_get ( uint8_t *  pucMode,
uint16_t *  pusTimeThreshold 
)

This function retrieves the ANT rf active notification configuration.

Parameters
[in]pucModeis a pointer to an unsigned char (1 octet) where the configured mode of event notification will be stored.
[out]pusTimeThresholdis a pointer to an unsigned short (2 octets) where the configured time threhold value will be stored. Time threshold is in 32 kHz counts (usTimeThreshold/32768 s).
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM
uint32_t sd_ant_rfactive_notification_config_set ( uint8_t  ucMode,
uint16_t  usTimeThreshold 
)

This function enables/disables event notifications to be generated to the application indicating the time to the next ANT radio activity exceeds the configured time threshold. Latency (delay in event notification being received and processed by application) must be taken into account if attempting to use this generated event to perform operations prior to the radio activity. Cannot be used if asynchronous tx channel is assigned or used. Please note that this only generates events for ANT radio activity.

Parameters
[in]ucModeis an unsigned char (1 octet) denoting the mode of event notification. See RFActive Notification Defines in ant_parameters.h.
[in]usTimeThresholdis an unsigned short (2 octets) denoting the minimum time threshold (32 kHz counts (usTimeThreshold/32768 s)) before the next radio activity that will trigger generation of the event notification.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED NRF_ANT_ERROR_CHANNEL_IN_WRONG_STATE
uint32_t sd_ant_rx_scan_mode_start ( uint8_t  ucSyncChannelPacketsOnly)

This function starts receive scanning mode feature. Channel 0 must be assigned. All other channels must be closed.

Parameters
[in]ucSyncChannelPacketsOnlyis an unsigned char (1 octet) denoting synchronous channel only scanning mode. 0 = disable, 1 = enable.
Returns
NRF_SUCCESS NRF_ANT_ERROR_CLOSE_ALL_CHANNELS NRF_ANT_ERROR_CHANNEL_IN_WRONG_STATE
uint32_t sd_ant_sdu_mask_config ( uint8_t  ucChannel,
uint8_t  ucMaskConfig 
)

This function assigns a SDU mask configuration to a particular channel. The configuration specifies the mask identifier and the type of rx data in which the mask should be applied to.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel in which the SDU mask configuration is to be applied to.
[in]ucMaskConfigis an unsigned char (1 octet) denoting SDU mask configuration. See Selective Data Update Mask Configuration Defines in ant_parameters.h.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_sdu_mask_get ( uint8_t  ucMask,
uint8_t *  aucMask 
)

This function returns the selective data update (SDU) mask (8 octets) from the specified identifier, ucMask.

Parameters
[in]ucMaskis an unsigned char (1 octet) denoting the index representing the SDU data mask.
[out]aucMaskis a pointer to the buffer where the SDU data mask will be copied, the array should be at least 8 octects.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_sdu_mask_set ( uint8_t  ucMask,
uint8_t *  aucMask 
)

This function is used to assign a selective data update (SDU) mask (8 octets) to an identifier, ucMask.

Parameters
[in]ucMaskis an unsigned char (1 octet) denoting the index representing the SDU data mask.
[in]aucMaskis a buffer (8 octets) containing the SDU mask to be assigned to ucMask.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_search_channel_priority_set ( uint8_t  ucChannel,
uint8_t  ucSearchPriority 
)

This function sets the channel's search priority.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to set.
[in]ucSearchPriorityis an unsigned char (1 octet) denoting the search priority value. 0 to 7 (Default = 0).
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_search_waveform_set ( uint8_t  ucChannel,
uint16_t  usWaveform 
)

This function sets the searching waveform value of an ANT Channel.

Parameters
[in]ucChannelis an unsigned char (1 octet) denoting the channel number to set.
[in]usWaveformis an unsigned short (2 octets) denoting the channel waveform period (usWaveform/32768 s). Default = 316.
Returns
NRF_SUCCESS NRF_ANT_ERROR_INVALID_PARAMETER_PROVIDED
uint32_t sd_ant_stack_reset ( void  )

Function for initializing or re-initializing ANT Stack.

Returns
NRF_SUCCESS
uint32_t sd_ant_transfer_stop ( void  )

This function kills a receive transfer that is in progress.

Returns
NRF_SUCCESS
uint32_t sd_ant_version_get ( uint8_t *  aucVersion)

This function gets the version string of the ANT stack.

Parameters
[out]aucVersionis the pointer to the buffer where the version string will be copied, the array should be at least 11 octets.
Returns
NRF_SUCCESS NRF_ERROR_INVALID_PARAM

Documentation feedback | Developer Zone | Updated