nrfutil
is a Python package that includes the nrfutil command line utility
and the nordicsemi library.
This tool can be used used with the Adafruit nRF52 Feather to flash firmware images onto the device using the simple serial port.
This library is written for Python 3.5+ It is no longer Python 2 compatible!
Run the following commands to make nrfutil
available from the command line
or to development platforms like the Arduino IDE or CircuitPython:
Notes : Do NOT install nrfutil from the pip package (ex. sudo pip install nrfutil
). The latest nrfutil does not support DFU via Serial, and you
should install version 0.5.2 from a local copy of this repo via the methods
detailed below:
$ sudo pip install -r requirements.txt
$ sudo python setup.py install
Note: When installing requirements if you encounter issue Cannot uninstall 'six'. It is a distutils installed project ... . You may need to add --ignore-installed six
when running pip.
A pre-built 32-bit version of nrfutil is included as part of this repo in the
binaries/win32
folder. You can use this pre-built binary by adding it to your
systems $PATH
variable.
- Make sure that you have Python 3.5 available on your system.
- Manually install py2exe version 0.6.9 from this link (selecting the 32-bit or 64-bit version depending on your Python installation): Download py2exe 0.6.9.
- VC compiler for Python (Windows only) (http://www.microsoft.com/en-us/download/confirmation.aspx?id=44266)
- From the command prompt, install nrfutil via pip as follows:
pip install -r requirements.txt
python setup.py install
To generate a self-contained Windows exe version of the utility (Windows only):
python setup.py py2exe
To get info on usage of nrfutil:
nrfutil --help
To convert an nRF52 .hex file into a DFU pkg file that the serial bootloader can make use of:
nrfutil dfu genpkg --dev-type 0x0052 --application firmware.hex dfu-package.zip
To flash a DFU pkg file over serial:
nrfutil dfu serial --package dfu-package.zip -p /dev/tty.SLAB_USBtoUART -b 115200