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

SDK 15 and Mesh 2.0 Generate a DFU file with nrfutil - ValueError

We used nRF5_SDK_15.0.0_a53641a and nrf5_SDK_for_Mesh_v2.0.0_src.

We are following DFU quick start guide http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v0.10.0%2Findex.html

For nRF52:

mesh-sdk$ nrfutil dfu genpkg --application bin/blinky/blinky_nrf52832_xxAA_s132_5.0.0.hex \
--company-id 0x00000089 \
--application-id 1 \
--application-version 2 \
--key-file private_key.txt \
--sd-req 0x009D \
--mesh dfu_test.zip
We used "--company-id 0x00000089 \" to match Step 2 public key:
{
"bootloader_config": {
"bootloader_id": 1,
"bootloader_version": 1,
"company_id": 89,
"application_id": 1,
"application_version": 1,
"public_key": "ed09a58df6db5cd15b8637304f31d31f4042492ed7c7e4839fbe903f260a2ba1a855e92b72885825481ad56282bcf549ad7455ec46f000f0f62d97eeec883ba6"
}
}
The hex we used is C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk\bin\blinky\blinky_nrf52832_xxAA_s132_5.0.0.hexblinky_nrf52832_xxAA_s132_5.0.0.hex
We got ValueError, please see attached screen shot. 
Please advise.  Thanks
Parents
  • Hi Bjorn,

    We started everything from scratch following the DFU quick start guide from step 1 to step 4, then we got stuck

    Please see my attached cmd scripts files

    Microsoft Windows [Version 6.1.7601]
    Copyright (c) 2009 Microsoft Corporation.  All rights reserved.
    
    C:\Users\StanYue>cd C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>nrfutil keys --gen-key private_key.tx
    t
    Generated key at: private_key.txt
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>nrfutil keys --show-vk hex private_ke
    y.txt
    Verification key Qx: 54b8abe3c8aabb2063e3f15d137100e724d7dda797fb9edfa8c86989a09
    b4812
    Verification key Qy: bbcf2140106d7bddf9da908c3ba2cadff92b42991b06c0b3d3a60ae4c40
    eedd3
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>n
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>keys --show-vk hex private_key.txt
    The syntax of the command is incorrect.
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>keys --show-vk hex private_key.txt
    The syntax of the command is incorrect.
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>nrfutil keys --show-vk hex private_ke
    y.txt
    Verification key Qx: 54b8abe3c8aabb2063e3f15d137100e724d7dda797fb9edfa8c86989a09
    b4812
    Verification key Qy: bbcf2140106d7bddf9da908c3ba2cadff92b42991b06c0b3d3a60ae4c40
    eedd3
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>nrfutil dfu genpkg --application bin/
    blinky/blinky_nrf52832_xxAA_s132_5.0.0.hex --company-id 0x00000059 --application
    -id 1 --application-version 2 --key-file private_key.txt --sd-req 0x009D --mesh
    dfu_test.zip
    Key file was given, setting DFU version to 0.8
    Zip created at dfu_test.zip
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>cd tools/dfu
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk\tools\dfu>python device_page_generato
    r.py -d nrf52832_xxAA -sd "s132_5.0.0"
    Traceback (most recent call last):
      File "device_page_generator.py", line 241, in <module>
        main()
      File "device_page_generator.py", line 235, in main
        write_specific_page(platforms, softdevices, args)
      File "device_page_generator.py", line 178, in write_specific_page
        device_page = DevicePage(platform, softdevice, bootloader_config)
      File "device_page_generator.py", line 94, in __init__
        self.generate_entries(platform, softdevice, bootloader_config)
      File "device_page_generator.py", line 103, in generate_entries
        DevicePageEntry(BLInfoType.ECDSA_PUBLIC_KEY, public_key))
      File "device_page_generator.py", line 69, in __init__
        raise TypeError
    TypeError
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk\tools\dfu>
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

    This is the private_key.txt, we used this private_key.txt file for "nrfutil keys --show-vk hex private_key.txt" .

    -----BEGIN EC PRIVATE KEY-----
    MHcCAQEEIHPeFxystPEoiZd7uOpCqfRxyO69QavgEeIowj7u+fp2oAoGCCqGSM49
    AwEHoUQDQgAE146icosxxjsYVAL0IJgDtHjQgosCoPRNqfXXgrBH/kW2C/TbLlcr
    S2BTwMfpNxswnJPuU8MAkGr8bH8tmc4RzQ==
    -----END EC PRIVATE KEY-----
    

    Then we added both output HEX strings "Verification key Qx and Qy" to bootloader_config_default.json

    {
        "bootloader_config": {
            "bootloader_id": 1,
            "bootloader_version": 1,
            "company_id": 89,
            "application_id": 1,
            "application_version": 1,
    		"public_key": 
    	"d78ea2728b31c63b185402f4209803b478d0828b02a0f44da9f5d782b047fe45b60bf4db2e572b4b6053c0c7e9371b309c93ee53c300906afc6c7f2d99ce11cd"	
    	
        }
    }
    

    We got the exact same "TypeError" as before.  Please advise.  Thanks.

Reply
  • Hi Bjorn,

    We started everything from scratch following the DFU quick start guide from step 1 to step 4, then we got stuck

    Please see my attached cmd scripts files

    Microsoft Windows [Version 6.1.7601]
    Copyright (c) 2009 Microsoft Corporation.  All rights reserved.
    
    C:\Users\StanYue>cd C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>nrfutil keys --gen-key private_key.tx
    t
    Generated key at: private_key.txt
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>nrfutil keys --show-vk hex private_ke
    y.txt
    Verification key Qx: 54b8abe3c8aabb2063e3f15d137100e724d7dda797fb9edfa8c86989a09
    b4812
    Verification key Qy: bbcf2140106d7bddf9da908c3ba2cadff92b42991b06c0b3d3a60ae4c40
    eedd3
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>n
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>keys --show-vk hex private_key.txt
    The syntax of the command is incorrect.
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>keys --show-vk hex private_key.txt
    The syntax of the command is incorrect.
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>nrfutil keys --show-vk hex private_ke
    y.txt
    Verification key Qx: 54b8abe3c8aabb2063e3f15d137100e724d7dda797fb9edfa8c86989a09
    b4812
    Verification key Qy: bbcf2140106d7bddf9da908c3ba2cadff92b42991b06c0b3d3a60ae4c40
    eedd3
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>nrfutil dfu genpkg --application bin/
    blinky/blinky_nrf52832_xxAA_s132_5.0.0.hex --company-id 0x00000059 --application
    -id 1 --application-version 2 --key-file private_key.txt --sd-req 0x009D --mesh
    dfu_test.zip
    Key file was given, setting DFU version to 0.8
    Zip created at dfu_test.zip
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk>cd tools/dfu
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk\tools\dfu>python device_page_generato
    r.py -d nrf52832_xxAA -sd "s132_5.0.0"
    Traceback (most recent call last):
      File "device_page_generator.py", line 241, in <module>
        main()
      File "device_page_generator.py", line 235, in main
        write_specific_page(platforms, softdevices, args)
      File "device_page_generator.py", line 178, in write_specific_page
        device_page = DevicePage(platform, softdevice, bootloader_config)
      File "device_page_generator.py", line 94, in __init__
        self.generate_entries(platform, softdevice, bootloader_config)
      File "device_page_generator.py", line 103, in generate_entries
        DevicePageEntry(BLInfoType.ECDSA_PUBLIC_KEY, public_key))
      File "device_page_generator.py", line 69, in __init__
        raise TypeError
    TypeError
    
    C:\Nordic\nRF5_SDK_15.0.0_a53641a\mesh_sdk\tools\dfu>
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

    This is the private_key.txt, we used this private_key.txt file for "nrfutil keys --show-vk hex private_key.txt" .

    -----BEGIN EC PRIVATE KEY-----
    MHcCAQEEIHPeFxystPEoiZd7uOpCqfRxyO69QavgEeIowj7u+fp2oAoGCCqGSM49
    AwEHoUQDQgAE146icosxxjsYVAL0IJgDtHjQgosCoPRNqfXXgrBH/kW2C/TbLlcr
    S2BTwMfpNxswnJPuU8MAkGr8bH8tmc4RzQ==
    -----END EC PRIVATE KEY-----
    

    Then we added both output HEX strings "Verification key Qx and Qy" to bootloader_config_default.json

    {
        "bootloader_config": {
            "bootloader_id": 1,
            "bootloader_version": 1,
            "company_id": 89,
            "application_id": 1,
            "application_version": 1,
    		"public_key": 
    	"d78ea2728b31c63b185402f4209803b478d0828b02a0f44da9f5d782b047fe45b60bf4db2e572b4b6053c0c7e9371b309c93ee53c300906afc6c7f2d99ce11cd"	
    	
        }
    }
    

    We got the exact same "TypeError" as before.  Please advise.  Thanks.

Children
No Data
Related