What is the expected nRF5340 boot-up time?

A product I'm working on uses an nRF5340 (actually a Fanstel BT40 module with an nRF5340 in it) with NCS v1.7.1.

It's got an SPI slave connection (the nRF is the slave) to another processor, and we've noticed that it takes about 1.5 seconds after power-up on our custom board before it's able to respond to SPI commands. I'm trying to figure out if this is normal, or if I'm doing something in my firmware that's making it take longer than it should.

Tasks I'm performing at startup before jumping into my main loop:

  • Initialize all GPIO pins and set up a GPIO interrupt callback
  • Configure the SPI slave port
  • Turn off the VDDH regulator (don't think this is ever needed in this application)
  • Initialize Bluetooth: Set up some variables, call the following functions:
    • bt_conn_cb_register
    • bt_conn_auth_cb_register
    • bt_enable
    • settings_load
    • bt_nus_init
    • k_work_init (to init a worker task needed to restart advertising after a disconnect)
  • Set up a k_timer at 1ms to keep system time (k_timer_init, k_timer_start)
  • Init the flash file system to read some application settings (nvs_init, nvs_read about 24 bytes)
  • Set up the state of the other two DC/DC enables (nrf_regulators_dcdcen_set, nrf_regulators_dcdcen_radio_set)
  • Use printk to print out a welcome message and the reset reason

So is 1.5s a normal startup time before this processor should be able to respond to SPI slave commands? Is there something from the list above that takes a long time that perhaps I could do differently?

Thanks!

Glen

Related