Close ANT HRM channel and save to SDcard ?

Dear Members,

How can I stop ANT HRM channel temporarily, and save the heart rate value on to SDcard ?

My code at static void page0_data_log(ant_hrm_page0_data_t const * p_page_data),

err_code = sd_ant_channel_close(HRM_CHANNEL_NUM);
APP_ERROR_CHECK(err_code);
        
        log_hrm(p_page_data->computed_heart_rate); //log HRM value 8Dec21 Rixtronix LAB
        //open the channel
        err_code=sd_ant_channel_open(HRM_CHANNEL_NUM);
        APP_ERROR_CHECK(err_code);

Please revise me ?

Thanks

  • if I increase the libuarte baud rate to 38400, do you think, it will rectify the issue ? thanks

  • Hi Kenneth,

    I'm not using ANT HRM at all, only GPS,

    I got this :

    <error> app: ERROR 0 [NRF_SUCCESS] at ..\..\..\..\..\..\..\..\components\librari

    \libuarte\nrf_libuarte_async.c:230
                                               

     at: 0x00049733

    How do you reckon rectifying it ?

    is my process too long ? It's 600 lines GPS processing, and it's called on the main();

    my callback on event :

    case NRF_LIBUARTE_ASYNC_EVT_RX_DATA:
    				
    				   GPS_CallBack(); //originally on 1 Dec 21 Rixtronix LAB
    				
    				   //Rixtronix LAB 7 December 2021 
    				
                break;
                
                call back function : 
    GPS.LastTime=nrf_systick_val_get(); //originally
    	 
    	//DEBUG
    	
    	if(GPS.rxIndex < sizeof(GPS.rxBuffer)-2)
    	{
    		GPS.rxBuffer[GPS.rxIndex] = GPS.rxTmp; //originally
    		 
    		GPS.rxIndex++;
    		memcpy((uint8_t *)line_buffer_GPS,(uint8_t *)GPS.rxBuffer, GPS.rxIndex); //experiment with uint8_t *
    			
    	}
       nrf_libuarte_async_rx_free(&libuarte1, (uint8_t *)&GPS.rxTmp, 1); //originally        

    uint8_t        rxBuffer[255]; ----> should I increase or decrease ?

    GPS baudrate = 38400, I made to 115200, straight away error...

    Any clues ?

    Thanks

Related