ANT on PCA10056 and custom board ?

Dear Members,

I want to run ANT+ code in my custom board,

It works well on PCA10056, I can upload softdevice and the code to custom board board,

but I didn't get any responses,

I have tried with code without softdevice, the custom board works well

Any ideas ?

Thanks

Parents Reply Children
  • there are two softdevice_setup function I can see,

    one in the main

    /**@brief Function for ANT stack initialization.
     *
     * @details Initializes the SoftDevice and the ANT event interrupt.
     */
    static void softdevice_setup(void)
    {
          NRF_LOG_INFO("softdevice_setup\r\n");
        ret_code_t err_code = nrf_sdh_enable_request();
        APP_ERROR_CHECK(err_code);

        ASSERT(nrf_sdh_is_enabled());

        err_code = nrf_sdh_ant_enable();
        APP_ERROR_CHECK(err_code);

        err_code = ant_plus_key_set(ANTPLUS_NETWORK_NUM);
        APP_ERROR_CHECK(err_code);
    }

    and one in asc_coordinator.c

    /**@brief BLE + ANT stack initialization.
     *
     * @details Initializes the SoftDevice and the stack event interrupt.
     */
    static void softdevice_setup(void)
    {
        ret_code_t err_code = nrf_sdh_enable_request();
        APP_ERROR_CHECK(err_code);
        NRF_LOG_INFO("softdevice_setup\r\n");
        ASSERT(nrf_sdh_is_enabled());

    #ifdef BLE_STACK_SUPPORT_REQD
        ble_stack_init();
    #endif

        err_code = nrf_sdh_ant_enable();
        APP_ERROR_CHECK(err_code);

        // Register a handler for ANT events.
        NRF_SDH_ANT_OBSERVER(m_ant_observer, APP_ANT_OBSERVER_PRIO, ant_evt_handler, NULL);
        
          
    }

    I got these error on debug


    nfo> app_timer: RTC: initialized.
                                                


                                   


                                                                                 

    nfo> app: utils_setup
                                                            


                                                                                 

    rror> app: Fatal error
                                                           

    arning> app: System reset
                                                        

    nfo> app: log_init.

    in the main()

    ....

    log_init();
        utils_setup();
          APP_ERROR_CHECK(err_code);
        softdevice_setup();
          APP_ERROR_CHECK(err_code);

    ....
                                                              


                           

  • without APP_ERROR_CHECK :


    nfo> app_timer: RTC: initialized.
                                                


    fo> app: Rixtronix LAB. SP_BUTTON_ACTION_PUSH
                                   

                                                                                  


    fo> app: Rixtronix LAB. SP_BUTTON_ACTION_PUSH
                                   

                                                                                  


    fo> app: Rixtronix LAB. SP_BUTTON_ACTION_PUSH
                                   

                                                                                  


    fo> app: Rixtronix LAB. SP_BUTTON_ACTION_PUSH
                                   

                                                                                  


    fo> app: utils_setup
                                                            

                                                                                  


    fo> app: softdevice_setup main
       

    and stopped

  • stopped at this function :

    ret_code_t err_code = nrf_sdh_enable_request();

    How can I check my 32KHz crystal running ?

  • No matter I used 0, 1 or 2

    // <0=> NRF_CLOCK_LF_SRC_RC
    // <1=> NRF_CLOCK_LF_SRC_XTAL
    // <2=> NRF_CLOCK_LF_SRC_SYNTH

    #ifndef NRF_SDH_CLOCK_LF_SRC
    #define NRF_SDH_CLOCK_LF_SRC 1

    it's still stopped on

    ret_code_t err_code = nrf_sdh_enable_request();

  • RixtronixLAB said:
    without APP_ERROR_CHECK :

    Which APP_ERROR_CHECK? The one after nrf_sdh_enable_request()? Also, os nrf_sdh_enable_request() called from ble_stack_init() as well, or only from softdevice_setup()?

    RixtronixLAB said:
    How can I check my 32KHz crystal running ?

    If you have selected the crystal, then it will be running once the nrf_sdh_enable_request() function has returned  with NRF_SUCCESS.

Related