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

pc_ble_driver_py.exceptions.NordicSemiException: No ping response after opening COM port

Hi, 

I was trying to run dfu mesh example according to this. I attempted quite few times but every time having an error at step 11.

infocenter.nordicsemi.com/index.jsp

Here is my environment details:

OS: windows 10

nrfutil version: 3.5.1

mesh SDK: Mesh_v2.1.1_src

Board : nrf52832 

SDK version: 15

SoftDeive s132_6.0.0

step 1: Creating my own private key 

 nrfutil.exe keys generate private.pem

Step2: Generated respective public key in hex format

nrfutil.exe keys display --key pk format code .\private.pem --out_file dfu_public_key.c

step 3: Added this key in the end of  "bootloader_config_default.json" file.

Step 4: Creating own signed image  package for dfu

nrfutil.exe pkg generate --hw-version 52 --application-version 4 --sd-req 0x00A8 --application C:\nordic_semi\nrf5_SDK_for_Mesh_v2.
1.1\bin\blinky\blinky_nrf52832_xxAA_s132_6.0.0.hex --key-file .\private.pem secure_dfu_mesh.zip

Step 5:  Generating device page with provided script as follow

python .\device_page_generator.py  -d nrf52832_xxAA -sd "s132_6.0.0"

Step 6:  flashing soft device:

nrfjprog --program C:\nordic_semi\nrf5_SDK_for_Mesh_v2.1.1\bin\softdevice\s132_nrf52_6.0.0_softdevice.hex --chiperase

step 7: Flash the serial bootloader on all devices:

nrfjprog --program C:\nordic_semi\nrf5_SDK_for_Mesh_v2.1.1\bin\bootloader\gccarmemb\mesh_bootloader_serial_gccarmemb_nrf52832_xxAA.hex

step 8: flashing application:

nrfjprog --program C:\nordic_semi\nrf5_SDK_for_Mesh_v2.1.1\examples\dfu\build\dfu_nrf52832_xxAA_s132_6.0.0_Debug\dfu_nrf52832_xxAA_s13
2_6.0.0.hex

Step 9: Flashing device page:

nrfjprog --program C:\nordic_semi\nrf5_SDK_for_Mesh_v2.1.1\tools\dfu\bin\device_page_nrf52832_xxAA_s132_6.0.0.hex

Step 10: Resetting 

nrfjprog --reset

Step 11: Problematic one(Transfer the DFU archive over serial with nrfutil) 

 nrfutil.exe dfu serial -pkg .\secure_dfu_mesh.zip -p COM15 -b 1200

 I have problem only on step 11 

Parents Reply Children
  • version is 3.5.1, so i am thinking that i used wrong version. Now my question is how can i use the version you mentioned.
    Thanks for your reply

  • The version is found in the GitHub link in my last replay.

    Since its an earlier version, you have to do some tricks to install this version so that you have both versions.

    The way to install the version you need for the dfu quick start guide would be:

    1. You should go to your \Python27\Scripts folder, find the file named "nrfutil.exe", and move this file to for example your desktop.
    2. Download the earlier version from GitHub
    3. Check that you have the prerequisites.
    4. Follow the installation steps.
    5. Once you have finished the installation, go back to your \Python27\Scripts folder and rename the two files "nrfutil.exe" and "nrfutil-script.py" to "nrfutilmesh.exe" and "nrfutilmesh-script.py".
    6. Move the "nrfutil.exe" file you stored on for example your desktop back to the \Python27\Scripts folder.

    You now have two versions of nrfutil. The version you need for the dfu quick start guide is run with the command "nrfutilmesh" instead of "nrfutil".

    - Andreas

  • Hello,
    I had some problem in windows system so switched to ubuntu. I created virtual environment and installed python 2.7.7. Followed the installation procedure according to the provided link. But it always get latest version of nrfutil installed. Any help ?

  • Hi.

    Try installing nrfutil using the procedure I listed in the previous replay, and not the procedure according to the provided link.

    - Andreas

  • Hello,
    I managed to install different version. You can see the out put below: 
    PS C:\Python27> nrfutilmesh version
    nrfutil version 0.3.0

    and 


    nrfutil version
    nrfutil version 3.5.1

    I created dfu package with nrfutilmesh and tried transferring using same version but having following error message: 

    Upgrading target on COM6 with DFU package C:\Python27\dfu_test.zip. Flow control is disabled.
    [------------------------------------] 0%Timed out waiting for acknowledgement from device.


    Failed to upgrade target. Error is: No data received on serial port. Not able to proceed.

    Possible causes:
    - bootloader, SoftDevice or application on target does not match the requirements in the DFU package.
    - baud rate or flow control is not the same as in the target bootloader.
    - target is not in DFU mode. If using the SDK examples, press Button 4 and RESET and release both to enter DFU mode.

Related