I have an issue where I managed to complete the blinky upload but after reset, the Feather does (which appear to be) nothing. Also, sometimes I’m getting the “Error: 3” message. This goes for several other samples as well, some complete upload and does nothing. Others just return error 3. Does anyone have any ideas about the cause of this?

An important side note is that older compiled version of the code is working and running (such as the one linked to in the blinky example). We are two people working on this with two different computers getting the same problem and errors.

We are speculating that this has something to do with the new 1.4.1 update? We’ve had similar problems with error 3 in earlier versions as well, but not at this rate. The error 3 occurs around 90+ %.

    Baowz what is emitting the error you’re referring to? Can you send me logs?

    How are you building the code?

      jaredwolff we are building it using your tutorial from the blinky sample. This is the result we get after building the code and trying to program it to the feather:

      `D:\Nordic_SDK\v1.4.1\nfed\samples\blinky>west build -b circuitdojo_feather_nrf9160ns -p
      -- west build: making build dir D:\Nordic_SDK\v1.4.1\nfed\samples\blinky\build pristine
      -- west build: generating a build system
      Including boilerplate (Zephyr base): D:/Nordic_SDK/v1.4.1/zephyr/cmake/app/boilerplate.cmake
      -- Application: D:/Nordic_SDK/v1.4.1/nfed/samples/blinky
      -- Using NCS Toolchain 1.4.0 for building. (D:/Nordic_SDK/v1.4.1/toolchain/cmake)
      -- Zephyr version: 2.4.0 (D:/Nordic_SDK/v1.4.1/zephyr)
      -- Found Python3: D:/Nordic_SDK/v1.4.1/toolchain/opt/bin/python.exe (found suitable exact version "3.8.2") found components: Interpreter
      -- Found west (found suitable version "0.7.2", minimum required is "0.7.1")
      -- Board: circuitdojo_feather_nrf9160ns
      -- Cache files will be written to: D:/Nordic_SDK/v1.4.1/zephyr/.cache
      -- Found dtc: D:/Nordic_SDK/v1.4.1/toolchain/opt/bin/dtc.exe (found suitable version "1.4.7", minimum required is "1.4.6")
      -- Found toolchain: gnuarmemb (D:/Nordic_SDK/v1.4.1/toolchain/opt)
      -- Found BOARD.dts: D:/Nordic_SDK/v1.4.1/zephyr/boards/arm/circuitdojo_feather_nrf9160/circuitdojo_feather_nrf9160ns.dts
      -- Generated zephyr.dts: D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/zephyr/zephyr.dts
      -- Generated devicetree_unfixed.h: D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/zephyr/include/generated/devicetree_unfixed.h
      Parsing D:/Nordic_SDK/v1.4.1/zephyr/Kconfig
      Loaded configuration 'D:/Nordic_SDK/v1.4.1/zephyr/boards/arm/circuitdojo_feather_nrf9160/circuitdojo_feather_nrf9160ns_defconfig'
      Merged configuration 'D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/prj.conf'
      Configuration saved to 'D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/zephyr/.config'
      Kconfig header saved to 'D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/zephyr/include/generated/autoconf.h'
      -- The C compiler identification is GNU 9.2.1
      -- The CXX compiler identification is GNU 9.2.1
      -- The ASM compiler identification is GNU
      -- Found assembler: D:/Nordic_SDK/v1.4.1/toolchain/opt/bin/arm-none-eabi-gcc.exe
      Changed board to secure circuitdojo_feather_nrf9160 (NOT NS)
      
      === child image spm -  begin ===
      Including boilerplate (Zephyr base): D:/Nordic_SDK/v1.4.1/zephyr/cmake/app/boilerplate.cmake
      -- Application: D:/Nordic_SDK/v1.4.1/nrf/samples/spm
      -- Using NCS Toolchain 1.4.0 for building. (D:/Nordic_SDK/v1.4.1/toolchain/cmake)
      -- Zephyr version: 2.4.0 (D:/Nordic_SDK/v1.4.1/zephyr)
      -- Found Python3: D:/Nordic_SDK/v1.4.1/toolchain/opt/bin/python.exe (found suitable exact version "3.8.2") found components: Interpreter
      -- Found west (found suitable version "0.7.2", minimum required is "0.7.1")
      -- Board: circuitdojo_feather_nrf9160
      -- Cache files will be written to: D:/Nordic_SDK/v1.4.1/zephyr/.cache
      -- Found dtc: D:/Nordic_SDK/v1.4.1/toolchain/opt/bin/dtc.exe (found suitable version "1.4.7", minimum required is "1.4.6")
      -- Found toolchain: gnuarmemb (D:/Nordic_SDK/v1.4.1/toolchain/opt)
      -- Found BOARD.dts: D:/Nordic_SDK/v1.4.1/zephyr/boards/arm/circuitdojo_feather_nrf9160/circuitdojo_feather_nrf9160.dts
      -- Generated zephyr.dts: D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/spm/zephyr/zephyr.dts
      -- Generated devicetree_unfixed.h: D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/spm/zephyr/include/generated/devicetree_unfixed.h
      Parsing D:/Nordic_SDK/v1.4.1/zephyr/Kconfig
      Loaded configuration 'D:/Nordic_SDK/v1.4.1/zephyr/boards/arm/circuitdojo_feather_nrf9160/circuitdojo_feather_nrf9160_defconfig'
      Merged configuration 'D:/Nordic_SDK/v1.4.1/nrf/samples/spm/prj.conf'
      Merged configuration 'D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/spm/zephyr/misc/generated/extra_kconfig_options.conf'
      Configuration saved to 'D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/spm/zephyr/.config'
      Kconfig header saved to 'D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/spm/zephyr/include/generated/autoconf.h'
      -- The C compiler identification is GNU 9.2.1
      -- The CXX compiler identification is GNU 9.2.1
      -- The ASM compiler identification is GNU
      -- Found assembler: D:/Nordic_SDK/v1.4.1/toolchain/opt/bin/arm-none-eabi-gcc.exe
      CMake Deprecation Warning at D:/Nordic_SDK/v1.4.1/modules/lib/civetweb/CMakeLists.txt:2 (cmake_minimum_required):
        Compatibility with CMake < 2.8.12 will be removed from a future version of
        CMake.
      
        Update the VERSION argument <min> value or use a ...<max> suffix to tell
        CMake that the project does not need compatibility with older versions.
      
      
      -- Configuring done
      -- Generating done
      -- Build files have been written to: D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/spm
      === child image spm -  end ===
      
      Changed board to secure circuitdojo_feather_nrf9160 (NOT NS)
      
      === child image mcuboot -  begin ===
      Including boilerplate (Zephyr base): D:/Nordic_SDK/v1.4.1/zephyr/cmake/app/boilerplate.cmake
      -- Application: D:/Nordic_SDK/v1.4.1/bootloader/mcuboot/boot/zephyr
      -- Using NCS Toolchain 1.4.0 for building. (D:/Nordic_SDK/v1.4.1/toolchain/cmake)
      -- Zephyr version: 2.4.0 (D:/Nordic_SDK/v1.4.1/zephyr)
      -- Found Python3: D:/Nordic_SDK/v1.4.1/toolchain/opt/bin/python.exe (found suitable exact version "3.8.2") found components: Interpreter
      -- Found west (found suitable version "0.7.2", minimum required is "0.7.1")
      -- Board: circuitdojo_feather_nrf9160
      -- Cache files will be written to: D:/Nordic_SDK/v1.4.1/zephyr/.cache
      -- Found dtc: D:/Nordic_SDK/v1.4.1/toolchain/opt/bin/dtc.exe (found suitable version "1.4.7", minimum required is "1.4.6")
      -- Found toolchain: gnuarmemb (D:/Nordic_SDK/v1.4.1/toolchain/opt)
      -- Found BOARD.dts: D:/Nordic_SDK/v1.4.1/zephyr/boards/arm/circuitdojo_feather_nrf9160/circuitdojo_feather_nrf9160.dts
      -- Found devicetree overlay: D:/Nordic_SDK/v1.4.1/bootloader/mcuboot/boot/zephyr/dts.overlay
      -- Generated zephyr.dts: D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/mcuboot/zephyr/zephyr.dts
      -- Generated devicetree_unfixed.h: D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/mcuboot/zephyr/include/generated/devicetree_unfixed.h
      Parsing D:/Nordic_SDK/v1.4.1/bootloader/mcuboot/boot/zephyr/Kconfig
      Loaded configuration 'D:/Nordic_SDK/v1.4.1/zephyr/boards/arm/circuitdojo_feather_nrf9160/circuitdojo_feather_nrf9160_defconfig'
      Merged configuration 'D:/Nordic_SDK/v1.4.1/bootloader/mcuboot/boot/zephyr/prj.conf'
      Merged configuration 'D:/Nordic_SDK/v1.4.1/bootloader/mcuboot/boot/zephyr/boards/circuitdojo_feather_nrf9160.conf'
      Configuration saved to 'D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/mcuboot/zephyr/.config'
      Kconfig header saved to 'D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/mcuboot/zephyr/include/generated/autoconf.h'
      -- The C compiler identification is GNU 9.2.1
      -- The CXX compiler identification is GNU 9.2.1
      -- The ASM compiler identification is GNU
      -- Found assembler: D:/Nordic_SDK/v1.4.1/toolchain/opt/bin/arm-none-eabi-gcc.exe
      CMake Deprecation Warning at D:/Nordic_SDK/v1.4.1/modules/lib/civetweb/CMakeLists.txt:2 (cmake_minimum_required):
        Compatibility with CMake < 2.8.12 will be removed from a future version of
        CMake.
      
        Update the VERSION argument <min> value or use a ...<max> suffix to tell
        CMake that the project does not need compatibility with older versions.
      
      
      CMake Warning at D:/Nordic_SDK/v1.4.1/zephyr/kernel/CMakeLists.txt:54 (message):
        Single threaded mode (CONFIG_MULTITHREADING=n) is deprecated
      
      
      MCUBoot bootloader key file: D:/Nordic_SDK/v1.4.1/bootloader/mcuboot/root-ec-p256.pem
      -- Configuring done
      -- Generating done
      -- Build files have been written to: D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build/mcuboot
      === child image mcuboot -  end ===
      
      CMake Warning at D:/Nordic_SDK/v1.4.1/nrf/cmake/mcuboot.cmake:120 (message):
      
      
              ---------------------------------------------------------
              --- WARNING: Using default MCUBoot key, it should not ---
              --- be used for production.                           ---
              ---------------------------------------------------------
      
      
      Call Stack (most recent call first):
        D:/Nordic_SDK/v1.4.1/bootloader/mcuboot/zephyr/CMakeLists.txt:1 (include)
      
      
      CMake Deprecation Warning at D:/Nordic_SDK/v1.4.1/modules/lib/civetweb/CMakeLists.txt:2 (cmake_minimum_required):
        Compatibility with CMake < 2.8.12 will be removed from a future version of
        CMake.
      
        Update the VERSION argument <min> value or use a ...<max> suffix to tell
        CMake that the project does not need compatibility with older versions.
      
      
      -- Configuring done
      -- Generating done
      -- Build files have been written to: D:/Nordic_SDK/v1.4.1/nfed/samples/blinky/build
      -- west build: building application
      [9/160] Performing build step for 'spm_subimage'
      [190/195] Linking C executable zephyr\zephyr_prebuilt.elf
      Memory region         Used Size  Region Size  %age Used
                 FLASH:       32256 B        48 KB     65.63%
                  SRAM:        5520 B        64 KB      8.42%
              IDT_LIST:          40 B         2 KB      1.95%
      [195/195] Linking C executable zephyr\zephyr.elf
      [16/160] Performing build step for 'mcuboot_subimage'
      [172/177] Linking C executable zephyr\zephyr_prebuilt.elf
      Memory region         Used Size  Region Size  %age Used
                 FLASH:       42076 B        48 KB     85.60%
                  SRAM:       22176 B       192 KB     11.28%
              IDT_LIST:          72 B         2 KB      3.52%
      [177/177] Linking C executable zephyr\zephyr.elf
      [147/160] Linking C executable zephyr\zephyr_prebuilt.elf
      Memory region         Used Size  Region Size  %age Used
                 FLASH:       15192 B     441856 B      3.44%
                  SRAM:        4008 B       192 KB      2.04%
              IDT_LIST:          56 B         2 KB      2.73%
      [160/160] Generating zephyr/merged.hex
      
      D:\Nordic_SDK\v1.4.1\nfed\samples\blinky>newtmgr -c serial image upload build/zephyr/app_update.bin
       63.04 KiB / 63.48 KiB [==========================================================================]  99.31% 16.47 KiB/s
      Error: 3`

      Ahh I think I know what’s going on here. My recommendation is to stay on 1.3.2 unless you guys have a programmer and are able to upgrade the bootloader. (This is something I recommend customers to do anyway since the default certificates for the bootloader are not secure.)

        5 days later

        jaredwolff okay, thank you! I’m also wondering if you could elaborate what error 3 means. I can’t really find any explanation on that anywhere. I’ve gotten that error a couple of times with 1.3.2 with certain modified examples and I’m curious about what it means.

          Baowz unfortunately the newtmgr code doesn’t call this out. It the error could be related to the serial port itself or something else. My best guess it’s a timeout because you’re sending data that the bootloader is not expecting.

          Here’s the newtmgr code by the way: https://github.com/apache/mynewt-newtmgr

          Terms and Conditions | Privacy Policy