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

app: ERROR 8 [NRF_ERROR_INVALID_STATE]

I am working with nRF52 DK, SES4.30 and SDK 15.3 with SD 132.

This error just started occurring once I set up app_timers.  My code for setting up my timers is below:

******************************************************************************************/
APP_TIMER_DEF(read_temperature_timer);
static void read_temperature_timer_handler(void * p_context)
{
  nrf_gpio_pin_toggle(LED_1); // Flash the led so we know something's happening
  get_water_temp();
}

APP_TIMER_DEF(stepper_delay_timer);
void stepper_delay_timer_handler(nrf_timer_event_t event_type, void *p_context) 
{
   stepper_delay();
}

static void app_timers_init(void) 
{
  // Create timers
  ret_code_t err_code;
  err_code = app_timer_create(&read_temperature_timer,
                              APP_TIMER_MODE_SINGLE_SHOT,
                              read_temperature_timer_handler);

  err_code = app_timer_create(&stepper_delay_timer,
                              APP_TIMER_MODE_SINGLE_SHOT,
                              stepper_delay_timer_handler);
}

// Start the Temperature Conversion timer
void start_temperature_conversion_timer(convert_time)
{
  uint32_t err_code;
  err_code = app_timer_start(read_temperature_timer, APP_TIMER_TICKS(convert_time), NULL);
  APP_ERROR_CHECK(err_code);
}

The error is generated in line 32 and reported in line 33.  Per another post for this same problem, deleting line 33 doesn't solve the problem, of course.  My function to start the timer, void start_temperature_conversion_timer(convert_time), doesn't start and my handler routine is never called.

Related