This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

ANT network number

I'm using nRF51422-QFAA E00 with S310, nRF51 5.2.0

When I configure ANT channel as a Master with Network number 0, all works OK. But if I try to set different network number I can't see any packet in the air.

For communication scan I'm using ANTware-II with ANT USB stick. I have also another module which use 2 Tx channels at once with different channel number and network numbers (same channel configuration as in my project) and I can see both in Scan Mode. But for nRF module I can see packets in that tool only if they are configured with channel 0 and network 0. So I don't think it's a PC tool bug.

Is this module restricted just to use network number 0 ?

EDIT: Same behaviour even if I use channel number non 0. All err_code passed with success. sd_ant_active() says ACTIVE.

Code:

err_code = sd_ant_channel_assign(ANTPSU_CHANNELNR_FORK, 
                                     ANTPSU_CHANNEL_TYPE_FORK, 
                                     ANTPSU_NETWORK_NUMBER,
                                     0);
if(err_code != NRF_SUCCESS) err = (1<<0);
		
err_code = sd_ant_channel_id_set(ANTPSU_CHANNELNR_FORK, 
                                 U16_NVM_ANT_Dev_Nr, 
                                 U8_NVM_ANT_Dev_Type, 
                                 U8_NVM_ANT_Trans_Type);
if(err_code != NRF_SUCCESS) err |= (1<<1);
		
err_code = sd_ant_channel_radio_freq_set(ANTPSU_CHANNELNR_FORK, ANTPSU_RF_FREQ);
if(err_code != NRF_SUCCESS) err |= (1<<2);
		
(void)sd_ant_channel_period_set(ANTPSU_CHANNELNR_FORK, ANTPSU_MSG_PERIOD_FORK);			
		
(void)sd_ant_network_address_set(ANTPSU_CHANNELNR_FORK, network_key_antp);			
			
err_code = sd_ant_channel_radio_tx_power_set(ANTPSU_CHANNELNR_FORK, RADIO_TX_POWER_LVL_3, 0);
if(err_code != NRF_SUCCESS) err |= (1<<3);

err_code = sd_ant_broadcast_message_tx(ANTPSU_CHANNELNR_FORK, 
                                       sizeof(m_tx_buffer), 
                                       m_tx_buffer);
Parents
  • This should work. Could you edit your question to include your testing method?

    Edit: Sorry for being unclear, how are you testing that no packets are sent/are on the air?

    Edit2: Could it be that you are using ANTPSU_NETWORK_NUMBER in sd_ant_channel_assign(), while you are using ANTPSU_CHANNELNR_FORK in sd_ant_network_address_set()?

    Also, in C:\Keil_v5\ARM\Device\SDK5.2\nrf51422\Board\nrf6310\s310\ant_hrm\hrm_tx sd_ant_network_address_set() is called before sd_ant_channel_assign().

Reply
  • This should work. Could you edit your question to include your testing method?

    Edit: Sorry for being unclear, how are you testing that no packets are sent/are on the air?

    Edit2: Could it be that you are using ANTPSU_NETWORK_NUMBER in sd_ant_channel_assign(), while you are using ANTPSU_CHANNELNR_FORK in sd_ant_network_address_set()?

    Also, in C:\Keil_v5\ARM\Device\SDK5.2\nrf51422\Board\nrf6310\s310\ant_hrm\hrm_tx sd_ant_network_address_set() is called before sd_ant_channel_assign().

Children
Related