Unable to Generate Keys using nrfutil

I'm trying to follow this how to and unfortunately cannot make it past step one.

https://devzone.nordicsemi.com/guides/short-range-guides/b/software-development-kit/posts/getting-started-with-nordics-secure-dfu-bootloadery

I'm using Python 3.9.7, I have it set as a path variable

I have GCC compiler toolchain for ARM installed along with GNU Make

Any help would be appreciated.

It is always throwing this error

Traceback (most recent call last):
  File "C:\ProgramData\Anaconda3\lib\runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\ProgramData\Anaconda3\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\ProgramData\Anaconda3\Scripts\nrfutil.exe\__main__.py", line 4, in <module>
  File "C:\ProgramData\Anaconda3\lib\site-packages\nordicsemi\__main__.py", line 49, in <module>
    from nordicsemi.dfu.bl_dfu_sett import BLDFUSettings
  File "C:\ProgramData\Anaconda3\lib\site-packages\nordicsemi\dfu\bl_dfu_sett.py", line 51, in <module>
    from nordicsemi.dfu.package import Package
  File "C:\ProgramData\Anaconda3\lib\site-packages\nordicsemi\dfu\package.py", line 53, in <module>
    from nordicsemi.dfu.init_packet_pb import InitPacketPB, DFUType, CommandTypes, ValidationTypes, SigningTypes, HashTypes
  File "C:\ProgramData\Anaconda3\lib\site-packages\nordicsemi\dfu\init_packet_pb.py", line 38, in <module>
    from . import dfu_cc_pb2 as pb
  File "C:\ProgramData\Anaconda3\lib\site-packages\nordicsemi\dfu\dfu_cc_pb2.py", line 32, in <module>
    _descriptor.EnumValueDescriptor(
  File "C:\ProgramData\Anaconda3\lib\site-packages\google\protobuf\descriptor.py", line 755, in __new__
    _message.Message._CheckCalledFromGeneratedFile()
TypeError: Descriptors cannot not be created directly.
If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.
If you cannot immediately regenerate your protos, some other possible workarounds are:
 1. Downgrade the protobuf package to 3.20.x or lower.
 2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower).

More information: https://developers.google.com/protocol-buffers/docs/news/2022-05-06#python-updates

Related