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

Asset tracker restarting without error then sending messages to cloud in duplicate

.y device keeps restarting multiple times without any warning which causes messages to be delivered multiple times to nrfcloud. I've had 5 messages delivered simultaneously, with each one being identical. This happened with the official release and with latest master. I can see the whole boot sequence occuring in the terminal. Why is this happening? 

Parents
  • Hello ip,

    Please make sure you are running the latest modem firmware.

    Could you define CONFIG_DEBUG=y in the prj.conf file of the Asset Tracker sample? 

    And send the terminal output. 


    I've had 5 messages delivered simultaneously,

     Is this what you have seen from the log on nrfcloud.com ?

  • To answer your last question, yes this is what I see in the log on the nrfcloud website under the messages window

  • There seem to be a bug if you have the nrfcloud website up for too long that it will show duplicated messages.

    Please restart the webpage and you should get the correct messages out.

  • Yes, this is a known bug on nrfcloud.com that happens when the Device Page is kept open while the device disconnects and reconnects, messages will be logged multiple times.

  • Thanks and

    I have two followup thoughts: (1) Simply refreshing doesn't work. I have to log out and log back in. (2) my device is resetting wihtout me touching it. Not sure why. I will get the debug output for you.

    This is my prj.conf file. It should be == default

    #debugging rk
    CONFIG_DEBUG=y
    
    # General config
    CONFIG_NEWLIB_LIBC=y
    CONFIG_TEST_RANDOM_GENERATOR=y
    CONFIG_ASSERT=y
    CONFIG_REBOOT=y
    
    # Network
    CONFIG_NETWORKING=y
    CONFIG_NET_SOCKETS=y
    CONFIG_NET_SOCKETS_OFFLOAD=y
    
    # MQTT
    CONFIG_MQTT_SOCKET_LIB=y
    CONFIG_MQTT_LIB_TLS=y
    CONFIG_MQTT_MAX_PACKET_LENGTH=2048
    
    # LTE link control
    CONFIG_POWER_OPTIMIZATION_ENABLE=n
    CONFIG_LTE_LINK_CONTROL=y
    CONFIG_LTE_AUTO_INIT_AND_CONNECT=n
    
    # Modem info
    CONFIG_MODEM_INFO=y
    
    # BSD library
    CONFIG_BSD_LIBRARY=y
    
    # nRF Cloud
    CONFIG_NRF_CLOUD=y
    
    # Sensors
    CONFIG_GPS_USE_SIM=y
    CONFIG_ACCEL_USE_SIM=y
    
    # Library for buttons and LEDs
    CONFIG_DK_LIBRARY=y
    CONFIG_DK_LIBRARY_INVERT_LEDS=n
    
    # Console
    CONFIG_CONSOLE_SUBSYS=y
    CONFIG_CONSOLE_HANDLER=y
    CONFIG_CONSOLE_GETCHAR=y
    
    # Main thread
    CONFIG_MAIN_THREAD_PRIORITY=7
    
    # Heap and stacks
    CONFIG_HEAP_MEM_POOL_SIZE=16384
    CONFIG_MAIN_STACK_SIZE=8192
    CONFIG_GPS_SIM_THREAD_STACK_SIZE=1024
    CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=1500
    CONFIG_HW_STACK_PROTECTION=y
    

    This is my Kconfig file (it should be == default)

    #
    # Copyright (c) 2018 Nordic Semiconductor ASA
    #
    # SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic
    #
    
    menu "Application sample"
    
    config CLOUD_BUTTON
    	bool "Enable button sensor"
    	default y
    
    config CLOUD_BUTTON_INPUT
    	int "Enable button sensor"
    	range 1 4 if BOARD_NRF9160_PCA10090NS
    	range 1 1 if BOARD_NRF9160_PCA20035NS
    	default 1
    
    config POWER_OPTIMIZATION_ENABLE
    	bool "Enable power optimization"
    	default y
    	select LTE_EDRX_REQ
    
    config USE_AT_HOST
    	bool "Enable AT commands"
    	default y
    	select AT_HOST_LIBRARY
    	help
    		Enable the AT host library so that AT commands can be sent to and
    		received from a serial terminal.
    
    config GPS_SIM_TRIGGER_TIMER_MSEC
    	int
    	default 120000 if POWER_OPTIMIZATION_ENABLE
    	default 2000
    
    config MQTT_KEEPALIVE
    	int
    	default 1000 if POWER_OPTIMIZATION_ENABLE
    	default 120
    choice
    	prompt "GPS device"
    	default GPS_USE_SIM
    	help
    		Select from which device GPS data will be fetched.
    
    config GPS_USE_SIM
    	bool "Use GPS simulator"
    	select GPS_SIM
    	select GPS_SIM_TRIGGER
    	help
    		Use simulated GPS data.
    
    config GPS_USE_EXTERNAL
    	bool "User provided GPS device"
    	help
    		Provide a GPS device that location data will be fetched from and
    		sent to nRF Cloud
    
    endchoice
    
    if GPS_USE_SIM
    
    config GPS_DEV_NAME
    	string
    	default GPS_SIM_DEV_NAME
    
    config GPS_TRIGGER
    	bool
    	default GPS_SIM_TRIGGER
    
    endif
    
    if GPS_USE_EXTERNAL
    config GPS_DEV_NAME
    	string "GPS device name"
    	help
    		GPS device from which location data will be fetched and sent
    		to nRF Cloud.
    
    endif
    
    choice
    	prompt "Accelerometer device"
    	default ACCEL_USE_SIM
    	help
    		Select which device will provide accelerometer data.
    
    config ACCEL_USE_SIM
    	bool "Use simulated accelerometer data"
    	select SENSOR
    	select SENSOR_SIM
    	select SENSOR_SIM_TRIGGER
    	select SENSOR_SIM_STATIC_VALUES
    	help
    		Use sensor simulator to generate accelerometer data for
    		flip detection data sent to nRF Cloud.
    
    config ACCEL_USE_EXTERNAL
    	bool "User provided accelerometer device"
    	help
    		The user will provide an accelerometer device that will
    		be used for flip detection.
    
    endchoice
    
    if ACCEL_USE_SIM
    config ACCEL_DEV_NAME
    	string
    	default SENSOR_SIM_DEV_NAME
    
    config ACCEL_TRIGGER
    	bool
    	default SENSOR_SIM_TRIGGER
    
    config FLIP_INPUT
    	int "Button or switch number to simulate flip"
    	range 1 4 if BOARD_NRF9160_PCA10090NS
    	range 1 1 if BOARD_NRF9160_PCA20035NS
    	default 3 if BOARD_NRF9160_PCA10090NS
    	default 1 if BOARD_NRF9160_PCA20035NS
    	help
    		Button or switch number to use for simulating
    		a board flip event.
    		1 - Button 1
    		2 - Button 2
    		3 - Switch 1
    		4 - Switch 2
    endif
    
    config FLIP_POLL
    	bool "Use polling to detect flip"
    	default y if ACCEL_USE_EXTERNAL
    	help
    		Poll the defined accelerometer device at interval determined by
    		FLIP_POLL_INTERVAL. Data will be sent to nRF Cloud if a flip
    		has happened and the orientation thus has changed.
    
    if FLIP_POLL
    config FLIP_POLL_INTERVAL
    	int "Flip detection poll interval"
    	default 1000
    	help
    		Flip polling interval in milliseconds.
    endif
    
    if ACCEL_USE_EXTERNAL
    
    config ACCEL_DEV_NAME
    	string "Accelerometer device name"
    	help
    		Device from which accelerometer data will be fetched and used
    		for orientation detection and sent to nRF Cloud.
    
    endif
    
    config ACCEL_INVERTED
    	bool "Accelerometer inverted"
    	default y if BOARD_NRF9160_PCA20035NS
    	help
    		Enable if the accelerometer is mounted with the top side facing
    		down when the board itself is in normal position.
    
    config ACCEL_CALIBRATE
    	bool "Calibrate accelerometer"
    	default y if BOARD_NRF9160_PCA20035_V0_2_2NS
    	help
    		Calibrate the accelerometer on a flat surface to filter away
    		static measurement offset that could affect orientation
    		detection.
    
    if ACCEL_CALIBRATE
    config ACCEL_CALIBRATION_ITERATIONS
    	int "Number of readings for calibration"
    	default 20 if BOARD_NRF9160_PCA20035NS
    	help
    		Number of measurement readings to average over to find the
    		static offset in the readings when calibrating the
    		accelerometer.
    
    config CALIBRATION_INPUT
    	int "Button to trigger accelerometer calibration"
    	range 1 2 if BOARD_NRF9160_PCA10090NS
    	range 1 1 if BOARD_NRF9160_PCA20035NS
    	default 1 if BOARD_NRF9160_PCA10090NS
    	default 1 if BOARD_NRF9160_PCA20035NS
    	help
    		Button number to use to trigger accelerometer calibration:
    		1 - Button 1
    		2 - Button 2
    endif
    
    if !ACCEL_CALIBRATE
    config ACCEL_CALIBRATION_ITERATIONS
    	int
    	default 0
    endif
    
    config ACCEL_ITERATIONS
    	int "Number of readings per measurement"
    	default 20 if BOARD_NRF9160_PCA20035NS
    	default 1
    	help
    		Number of measurement readings to average over for each time
    		the orientation detector determines the orientation of the
    		board. Used for simple filtering of noisy measurements.
    
    choice
    	prompt "nRF Cloud user association"
    	default CLOUD_UA_BUTTONS
    	help
    		Select which method to use for nRF Cloud user association
    		input.
    
    config CLOUD_UA_BUTTONS
    	bool "Use buttons and switches"
    	help
    		Use buttons and switches on the development kit to provide
    		user association input.
    
    config CLOUD_UA_CONSOLE
    	bool "Use console input"
    	help
    		Use console to enter nRF Cloud user association input.
    		Allowed input is as follows:
    		'b1' = Button 1
    		'b2' = Button 2
    		's1' = Switch 1
    		's2' = Switch 2
    
    endchoice
    
    
    choice
    	prompt "Temperature measurement device"
    	default TEMP_USE_SIM
    	help
    		Select which device will provide temperature data.
    
    config TEMP_USE_SIM
    	bool "Use simulated temperature data"
    	select SENSOR
    	select SENSOR_SIM
    	help
    		Use sensor simulator to generate temperature data to send to
    		nRF Cloud.
    
    config TEMP_USE_EXTERNAL
    	bool "User provided temperature device"
    	help
    		The user provides a temperature device that is
    		used for temperature measurement.
    
    endchoice
    
    if TEMP_USE_SIM
    config TEMP_DEV_NAME
    	string
    	default SENSOR_SIM_DEV_NAME
    
    config TEMP_TRIGGER
    	bool
    	default SENSOR_SIM_TRIGGER
    
    config TEMP_SIM_BUTTON
    	int "Button or switch to trigger 'data ready' event"
    	range 1 4 if BOARD_NRF9160_PCA10090NS
    	range 1 1 if BOARD_NRF9160_PCA20035NS
    	default 3 if BOARD_NRF9160_PCA10090NS
    	default 1 if BOARD_NRF9160_PCA20035NS
    	help
    		Button or switch number to use for triggering
    		a 'data ready' event.
    		1 - Button 1
    		2 - Button 2
    		3 - Switch 1
    		4 - Switch 2
    endif
    
    if TEMP_USE_EXTERNAL
    
    config TEMP_DEV_NAME
    	string "Temperature device name"
    	help
    		Device from which temperature data will be fetched and
    		sent to nRF Cloud.
    
    endif
    
    if MODEM_INFO
    
    config HOLD_TIME_RSRP
    	int "Minimum time [s] between RSRP subscription messages"
    	default 60
    	help
    		The minimum time in seconds where the modem
    		informer is allowed to submit RSRP data to the cloud.
    
    endif
    
    endmenu
    
    menu "Zephyr Kernel"
    source "$ZEPHYR_BASE/Kconfig.zephyr"
    endmenu
    

    I updated the ncs\nrf (I'm on windows) directory to the latest release from master and then I ran west update. Here is the git log for the ncs\nrf directory

    $ git log
    commit 3ca32b180afb810a9dfc0c3f59b3b73e12de521e (HEAD -> master, origin/master)
    Author: Marek Pieta <[email protected]>
    Date:   Thu Mar 21 17:08:04 2019 +0100
    
        docs: profiler: Profiler docs
    
        Change adds profiler conceptual documentation.
    
        JIRA:DESK-473
    
        Signed-off-by: Marek Pieta <[email protected]>
        Signed-off-by: Ruth Fuchss <[email protected]>
    

    More to follow - one moment

Reply
  • Thanks and

    I have two followup thoughts: (1) Simply refreshing doesn't work. I have to log out and log back in. (2) my device is resetting wihtout me touching it. Not sure why. I will get the debug output for you.

    This is my prj.conf file. It should be == default

    #debugging rk
    CONFIG_DEBUG=y
    
    # General config
    CONFIG_NEWLIB_LIBC=y
    CONFIG_TEST_RANDOM_GENERATOR=y
    CONFIG_ASSERT=y
    CONFIG_REBOOT=y
    
    # Network
    CONFIG_NETWORKING=y
    CONFIG_NET_SOCKETS=y
    CONFIG_NET_SOCKETS_OFFLOAD=y
    
    # MQTT
    CONFIG_MQTT_SOCKET_LIB=y
    CONFIG_MQTT_LIB_TLS=y
    CONFIG_MQTT_MAX_PACKET_LENGTH=2048
    
    # LTE link control
    CONFIG_POWER_OPTIMIZATION_ENABLE=n
    CONFIG_LTE_LINK_CONTROL=y
    CONFIG_LTE_AUTO_INIT_AND_CONNECT=n
    
    # Modem info
    CONFIG_MODEM_INFO=y
    
    # BSD library
    CONFIG_BSD_LIBRARY=y
    
    # nRF Cloud
    CONFIG_NRF_CLOUD=y
    
    # Sensors
    CONFIG_GPS_USE_SIM=y
    CONFIG_ACCEL_USE_SIM=y
    
    # Library for buttons and LEDs
    CONFIG_DK_LIBRARY=y
    CONFIG_DK_LIBRARY_INVERT_LEDS=n
    
    # Console
    CONFIG_CONSOLE_SUBSYS=y
    CONFIG_CONSOLE_HANDLER=y
    CONFIG_CONSOLE_GETCHAR=y
    
    # Main thread
    CONFIG_MAIN_THREAD_PRIORITY=7
    
    # Heap and stacks
    CONFIG_HEAP_MEM_POOL_SIZE=16384
    CONFIG_MAIN_STACK_SIZE=8192
    CONFIG_GPS_SIM_THREAD_STACK_SIZE=1024
    CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=1500
    CONFIG_HW_STACK_PROTECTION=y
    

    This is my Kconfig file (it should be == default)

    #
    # Copyright (c) 2018 Nordic Semiconductor ASA
    #
    # SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic
    #
    
    menu "Application sample"
    
    config CLOUD_BUTTON
    	bool "Enable button sensor"
    	default y
    
    config CLOUD_BUTTON_INPUT
    	int "Enable button sensor"
    	range 1 4 if BOARD_NRF9160_PCA10090NS
    	range 1 1 if BOARD_NRF9160_PCA20035NS
    	default 1
    
    config POWER_OPTIMIZATION_ENABLE
    	bool "Enable power optimization"
    	default y
    	select LTE_EDRX_REQ
    
    config USE_AT_HOST
    	bool "Enable AT commands"
    	default y
    	select AT_HOST_LIBRARY
    	help
    		Enable the AT host library so that AT commands can be sent to and
    		received from a serial terminal.
    
    config GPS_SIM_TRIGGER_TIMER_MSEC
    	int
    	default 120000 if POWER_OPTIMIZATION_ENABLE
    	default 2000
    
    config MQTT_KEEPALIVE
    	int
    	default 1000 if POWER_OPTIMIZATION_ENABLE
    	default 120
    choice
    	prompt "GPS device"
    	default GPS_USE_SIM
    	help
    		Select from which device GPS data will be fetched.
    
    config GPS_USE_SIM
    	bool "Use GPS simulator"
    	select GPS_SIM
    	select GPS_SIM_TRIGGER
    	help
    		Use simulated GPS data.
    
    config GPS_USE_EXTERNAL
    	bool "User provided GPS device"
    	help
    		Provide a GPS device that location data will be fetched from and
    		sent to nRF Cloud
    
    endchoice
    
    if GPS_USE_SIM
    
    config GPS_DEV_NAME
    	string
    	default GPS_SIM_DEV_NAME
    
    config GPS_TRIGGER
    	bool
    	default GPS_SIM_TRIGGER
    
    endif
    
    if GPS_USE_EXTERNAL
    config GPS_DEV_NAME
    	string "GPS device name"
    	help
    		GPS device from which location data will be fetched and sent
    		to nRF Cloud.
    
    endif
    
    choice
    	prompt "Accelerometer device"
    	default ACCEL_USE_SIM
    	help
    		Select which device will provide accelerometer data.
    
    config ACCEL_USE_SIM
    	bool "Use simulated accelerometer data"
    	select SENSOR
    	select SENSOR_SIM
    	select SENSOR_SIM_TRIGGER
    	select SENSOR_SIM_STATIC_VALUES
    	help
    		Use sensor simulator to generate accelerometer data for
    		flip detection data sent to nRF Cloud.
    
    config ACCEL_USE_EXTERNAL
    	bool "User provided accelerometer device"
    	help
    		The user will provide an accelerometer device that will
    		be used for flip detection.
    
    endchoice
    
    if ACCEL_USE_SIM
    config ACCEL_DEV_NAME
    	string
    	default SENSOR_SIM_DEV_NAME
    
    config ACCEL_TRIGGER
    	bool
    	default SENSOR_SIM_TRIGGER
    
    config FLIP_INPUT
    	int "Button or switch number to simulate flip"
    	range 1 4 if BOARD_NRF9160_PCA10090NS
    	range 1 1 if BOARD_NRF9160_PCA20035NS
    	default 3 if BOARD_NRF9160_PCA10090NS
    	default 1 if BOARD_NRF9160_PCA20035NS
    	help
    		Button or switch number to use for simulating
    		a board flip event.
    		1 - Button 1
    		2 - Button 2
    		3 - Switch 1
    		4 - Switch 2
    endif
    
    config FLIP_POLL
    	bool "Use polling to detect flip"
    	default y if ACCEL_USE_EXTERNAL
    	help
    		Poll the defined accelerometer device at interval determined by
    		FLIP_POLL_INTERVAL. Data will be sent to nRF Cloud if a flip
    		has happened and the orientation thus has changed.
    
    if FLIP_POLL
    config FLIP_POLL_INTERVAL
    	int "Flip detection poll interval"
    	default 1000
    	help
    		Flip polling interval in milliseconds.
    endif
    
    if ACCEL_USE_EXTERNAL
    
    config ACCEL_DEV_NAME
    	string "Accelerometer device name"
    	help
    		Device from which accelerometer data will be fetched and used
    		for orientation detection and sent to nRF Cloud.
    
    endif
    
    config ACCEL_INVERTED
    	bool "Accelerometer inverted"
    	default y if BOARD_NRF9160_PCA20035NS
    	help
    		Enable if the accelerometer is mounted with the top side facing
    		down when the board itself is in normal position.
    
    config ACCEL_CALIBRATE
    	bool "Calibrate accelerometer"
    	default y if BOARD_NRF9160_PCA20035_V0_2_2NS
    	help
    		Calibrate the accelerometer on a flat surface to filter away
    		static measurement offset that could affect orientation
    		detection.
    
    if ACCEL_CALIBRATE
    config ACCEL_CALIBRATION_ITERATIONS
    	int "Number of readings for calibration"
    	default 20 if BOARD_NRF9160_PCA20035NS
    	help
    		Number of measurement readings to average over to find the
    		static offset in the readings when calibrating the
    		accelerometer.
    
    config CALIBRATION_INPUT
    	int "Button to trigger accelerometer calibration"
    	range 1 2 if BOARD_NRF9160_PCA10090NS
    	range 1 1 if BOARD_NRF9160_PCA20035NS
    	default 1 if BOARD_NRF9160_PCA10090NS
    	default 1 if BOARD_NRF9160_PCA20035NS
    	help
    		Button number to use to trigger accelerometer calibration:
    		1 - Button 1
    		2 - Button 2
    endif
    
    if !ACCEL_CALIBRATE
    config ACCEL_CALIBRATION_ITERATIONS
    	int
    	default 0
    endif
    
    config ACCEL_ITERATIONS
    	int "Number of readings per measurement"
    	default 20 if BOARD_NRF9160_PCA20035NS
    	default 1
    	help
    		Number of measurement readings to average over for each time
    		the orientation detector determines the orientation of the
    		board. Used for simple filtering of noisy measurements.
    
    choice
    	prompt "nRF Cloud user association"
    	default CLOUD_UA_BUTTONS
    	help
    		Select which method to use for nRF Cloud user association
    		input.
    
    config CLOUD_UA_BUTTONS
    	bool "Use buttons and switches"
    	help
    		Use buttons and switches on the development kit to provide
    		user association input.
    
    config CLOUD_UA_CONSOLE
    	bool "Use console input"
    	help
    		Use console to enter nRF Cloud user association input.
    		Allowed input is as follows:
    		'b1' = Button 1
    		'b2' = Button 2
    		's1' = Switch 1
    		's2' = Switch 2
    
    endchoice
    
    
    choice
    	prompt "Temperature measurement device"
    	default TEMP_USE_SIM
    	help
    		Select which device will provide temperature data.
    
    config TEMP_USE_SIM
    	bool "Use simulated temperature data"
    	select SENSOR
    	select SENSOR_SIM
    	help
    		Use sensor simulator to generate temperature data to send to
    		nRF Cloud.
    
    config TEMP_USE_EXTERNAL
    	bool "User provided temperature device"
    	help
    		The user provides a temperature device that is
    		used for temperature measurement.
    
    endchoice
    
    if TEMP_USE_SIM
    config TEMP_DEV_NAME
    	string
    	default SENSOR_SIM_DEV_NAME
    
    config TEMP_TRIGGER
    	bool
    	default SENSOR_SIM_TRIGGER
    
    config TEMP_SIM_BUTTON
    	int "Button or switch to trigger 'data ready' event"
    	range 1 4 if BOARD_NRF9160_PCA10090NS
    	range 1 1 if BOARD_NRF9160_PCA20035NS
    	default 3 if BOARD_NRF9160_PCA10090NS
    	default 1 if BOARD_NRF9160_PCA20035NS
    	help
    		Button or switch number to use for triggering
    		a 'data ready' event.
    		1 - Button 1
    		2 - Button 2
    		3 - Switch 1
    		4 - Switch 2
    endif
    
    if TEMP_USE_EXTERNAL
    
    config TEMP_DEV_NAME
    	string "Temperature device name"
    	help
    		Device from which temperature data will be fetched and
    		sent to nRF Cloud.
    
    endif
    
    if MODEM_INFO
    
    config HOLD_TIME_RSRP
    	int "Minimum time [s] between RSRP subscription messages"
    	default 60
    	help
    		The minimum time in seconds where the modem
    		informer is allowed to submit RSRP data to the cloud.
    
    endif
    
    endmenu
    
    menu "Zephyr Kernel"
    source "$ZEPHYR_BASE/Kconfig.zephyr"
    endmenu
    

    I updated the ncs\nrf (I'm on windows) directory to the latest release from master and then I ran west update. Here is the git log for the ncs\nrf directory

    $ git log
    commit 3ca32b180afb810a9dfc0c3f59b3b73e12de521e (HEAD -> master, origin/master)
    Author: Marek Pieta <[email protected]>
    Date:   Thu Mar 21 17:08:04 2019 +0100
    
        docs: profiler: Profiler docs
    
        Change adds profiler conceptual documentation.
    
        JIRA:DESK-473
    
        Signed-off-by: Marek Pieta <[email protected]>
        Signed-off-by: Ruth Fuchss <[email protected]>
    

    More to follow - one moment

Children
  • Here is some more info  and

    For some reason the last post wouldn't let me past more information. This is the output from west update

    === self-updating west:
    --- west: fetching changes
    From https://github.com/zephyrproject-rtos/west
     * branch            master     -> FETCH_HEAD
    --- west: checked out d5f8caf2c95c6b79aa87395253be760d63112a60 as detached HEAD
    === updating fw-nrfconnect-zephyr (zephyr):
    --- fw-nrfconnect-zephyr: fetching changes
    --- fw-nrfconnect-zephyr: checked out de69d2df908fc7bccd8c03b106e7645e90b1503b as detached HEAD
    === updating fw-nrfconnect-mcuboot (mcuboot):
    --- fw-nrfconnect-mcuboot: fetching changes
    --- fw-nrfconnect-mcuboot: checked out 59fde9c792bfaa36887c860fb8cd0ca1f1bc4db5 as detached HEAD
    === updating nrfxlib (nrfxlib):
    --- nrfxlib: fetching changes
    --- nrfxlib: checked out 9bcc77b27d12162adc31d8c8c70f4e499338fbdb as detached HEAD
    

    I am getting an error message when running ninja flash

    ninja: warning: multiple rules generate C:/PROJECTCODE/ncs/zephyr/subsys/logging/Kconfig.template.log_config. builds involving this target will not be correct; continuing anyway [-w dupbuild=warn]
    ninja: warning: multiple rules generate C:/PROJECTCODE/ncs/zephyr/subsys/net/Kconfig.template.log_config.net. builds involving this target will not be correct; continuing anyway [-w dupbuild=warn]
    [138/144] Linking C executable zephyr\zephyr_prebuilt.elf
    Memory region         Used Size  Region Size  %age Used
               FLASH:      168220 B       256 KB     64.17%
                SRAM:       53664 B       128 KB     40.94%
            IDT_LIST:         120 B         2 KB      5.86%
    [143/144] Flashing nrf9160_pca10090ns
    Using runner: nrfjprog
    Flashing file: C:/PROJECTCODE/ncs/nrf/applications/asset_tracker/build/zephyr/zephyr.hex
    Parsing hex file.
    Erasing page at address 0x40000.
    Erasing page at address 0x41000.
    Erasing page at address 0x42000.
    Erasing page at address 0x43000.
    Erasing page at address 0x44000.
    Erasing page at address 0x45000.
    Erasing page at address 0x46000.
    Erasing page at address 0x47000.
    Erasing page at address 0x48000.
    Erasing page at address 0x49000.
    Erasing page at address 0x4A000.
    Erasing page at address 0x4B000.
    Erasing page at address 0x4C000.
    Erasing page at address 0x4D000.
    Erasing page at address 0x4E000.
    Erasing page at address 0x4F000.
    Erasing page at address 0x50000.
    Erasing page at address 0x51000.
    Erasing page at address 0x52000.
    Erasing page at address 0x53000.
    Erasing page at address 0x54000.
    Erasing page at address 0x55000.
    Erasing page at address 0x56000.
    Erasing page at address 0x57000.
    Erasing page at address 0x58000.
    Erasing page at address 0x59000.
    Erasing page at address 0x5A000.
    Erasing page at address 0x5B000.
    Erasing page at address 0x5C000.
    Erasing page at address 0x5D000.
    Erasing page at address 0x5E000.
    Erasing page at address 0x5F000.
    Erasing page at address 0x60000.
    Erasing page at address 0x61000.
    Erasing page at address 0x62000.
    Erasing page at address 0x63000.
    Erasing page at address 0x64000.
    Erasing page at address 0x65000.
    Erasing page at address 0x66000.
    Erasing page at address 0x67000.
    Erasing page at address 0x68000.
    Erasing page at address 0x69000.
    Applying system reset.
    Checking that the area to write is not protected.
    Programming device.
    Applying pin reset.
    Board with serial number 960072328 flashed successfully.

    I will post my results of the debug output momentarily.

  • Here is the error I get and

    Error of type ERROR_BSD_RECOVERABLE: 3

    I have LED1 and LED3 both flashing and the program halted. I am not sure this is the same error because in normal mode, the device just resets. Maybe this is a function of debug being on. 

    Here is the output

    ***** Booting Zephyr OS v1.13.99-ncs1-4741-g1d6219ffec *****
    Secure Boot: configure flash
    Secure Boot: SPU: set region 0 as Secure
    Secure Boot: SPU: set region 1 as Secure
    Secure Boot: SPU: set region 2 as Secure
    Secure Boot: SPU: set region 3 as Secure
    Secure Boot: SPU: set region 4 as Secure
    Secure Boot: SPU: set region 5 as Secure
    Secure Boot: SPU: set region 6 as Secure
    Secure Boot: SPU: set region 7 as Secure
    Secure Boot: SPU: set Flash region 8 as Non-Secure
    Secure Boot: SPU: set Flash region 9 as Non-Secure
    Secure Boot: SPU: set Flash region 10 as Non-Secure
    Secure Boot: SPU: set Flash region 11 as Non-Secure
    Secure Boot: SPU: set Flash region 12 as Non-Secure
    Secure Boot: SPU: set Flash region 13 as Non-Secure
    Secure Boot: SPU: set Flash region 14 as Non-Secure
    Secure Boot: SPU: set Flash region 15 as Non-Secure
    Secure Boot: SPU: set Flash region 16 as Non-Secure
    Secure Boot: SPU: set Flash region 17 as Non-Secure
    Secure Boot: SPU: set Flash region 18 as Non-Secure
    Secure Boot: SPU: set Flash region 19 as Non-Secure
    Secure Boot: SPU: set Flash region 20 as Non-Secure
    Secure Boot: SPU: set Flash region 21 as Non-Secure
    Secure Boot: SPU: set Flash region 22 as Non-Secure
    Secure Boot: SPU: set Flash region 23 as Non-Secure
    Secure Boot: SPU: set Flash region 24 as Non-Secure
    Secure Boot: SPU: set Flash region 25 as Non-Secure
    Secure Boot: SPU: set Flash region 26 as Non-Secure
    Secure Boot: SPU: set Flash region 27 as Non-Secure
    Secure Boot: SPU: set Flash region 28 as Non-Secure
    Secure Boot: SPU: set Flash region 29 as Non-Secure
    Secure Boot: SPU: set Flash region 30 as Non-Secure
    Secure Boot: SPU: set Flash region 31 as Non-Secure
    Secure Boot: configure SRAM
    Secure Boot: SPU: set SRAM region 0 as Secure
    Secure Boot: SPU: set SRAM region 1 as Secure
    Secure Boot: SPU: set SRAM region 2 as Secure
    Secure Boot: SPU: set SRAM region 3 as Secure
    Secure Boot: SPU: set SRAM region 4 as Secure
    Secure Boot: SPU: set SRAM region 5 as Secure
    Secure Boot: SPU: set SRAM region 6 as Secure
    Secure Boot: SPU: set SRAM region 7 as Secure
    Secure Boot: SPU: set SRAM region 8 as Non-Secure
    Secure Boot: SPU: set SRAM region 9 as Non-Secure
    Secure Boot: SPU: set SRAM region 10 as Non-Secure
    Secure Boot: SPU: set SRAM region 11 as Non-Secure
    Secure Boot: SPU: set SRAM region 12 as Non-Secure
    Secure Boot: SPU: set SRAM region 13 as Non-Secure
    Secure Boot: SPU: set SRAM region 14 as Non-Secure
    Secure Boot: SPU: set SRAM region 15 as Non-Secure
    Secure Boot: SPU: set SRAM region 16 as Non-Secure
    Secure Boot: SPU: set SRAM region 17 as Non-Secure
    Secure Boot: SPU: set SRAM region 18 as Non-Secure
    Secure Boot: SPU: set SRAM region 19 as Non-Secure
    Secure Boot: SPU: set SRAM region 20 as Non-Secure
    Secure Boot: SPU: set SRAM region 21 as Non-Secure
    Secure Boot: SPU: set SRAM region 22 as Non-Secure
    Secure Boot: SPU: set SRAM region 23 as Non-Secure
    Secure Boot: SPU: set SRAM region 24 as Non-Secure
    Secure Boot: SPU: set SRAM region 25 as Non-Secure
    Secure Boot: SPU: set SRAM region 26 as Non-Secure
    Secure Boot: SPU: set SRAM region 27 as Non-Secure
    Secure Boot: SPU: set SRAM region 28 as Non-Secure
    Secure Boot: SPU: set SRAM region 29 as Non-Secure
    Secure Boot: SPU: set SRAM region 30 as Non-Secure
    Secure Boot: SPU: set SRAM region 31 as Non-Secure
    Secure Boot: configure peripherals
    Secure Boot: MSP_NS 2002a198
    Secure Boot: prepare to jump to Non-Secure image
    ***** Booting Zephyr OS v1.13.99-ncs1-5561-gde69d2df908f *****
    Application started
    LTE LC config ...
    NRF_CLOUD_EVT_TRANSPORT_CONNECTED
    NRF_CLOUD_EVT_USER_ASSOCIATED
    NRF_CLOUD_EVT_READY
    NRF_CLOUD_EVT_SENSOR_ATTACHED
    NRF_CLOUD_EVT_SENSOR_ATTACHED
    NRF_CLOUD_EVT_SENSOR_ATTACHED
    NRF_CLOUD_EVT_SENSOR_ATTACHED
    NRF_CLOUD_EVT_SENSOR_ATTACHED
    NRF_CLOUD_EVT_SENSOR_ATTACHED
    NRF_CLOUD_EVT_SENSOR_ATTACHED
    NRF_CLOUD_EVT_SENSOR_ATTACHED
    GPS device found
    Error of type ERROR_BSD_RECOVERABLE: 3
    

Related