User Guide - dk6prog
Warning
dk6prog is a prototype application and it is not tested. To be used at the user’s own risk.
This user’s guide describes how to use dk6prog application. DK6 Programmer Tools allows reading and programming flash memory of DK6 target devices (JN51xx, QN9090, K32W0xx). It’s a Python port of JN51xx Flash Programmer (https://www.nxp.com/docs/en/user-guide/JN-UG-3099.pdf).
Supported devices
DK6 Board and all compatible modules https://www.nxp.com/products/wireless/multiprotocol-mcus/advanced-development-kit-for-k32w061-and-jn5189-88:IOTZTB-DK006
Backends
dk6prog tools support four backends (drivers). PYFTDI backend, pure Python implementation of libFTDI. PYLIBFTDI backend, ctypes wrapper for libFTDI. FTD2XX backend, ctypes wrapper for D2XX. PYSERIAL backend for simple UART communication.
Jupyter example
Visit Jupyter example DK6 Programming tool for more information and examples of usage.
Command line interface
dk6prog
Tool for reading and programming flash memory of DK6 target devices.
This is an experimental utility. Use with caution!
dk6prog [OPTIONS] COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]...
Options
- -v, --verbose
Print more detailed information
- -vv, --debug
Display more debugging information.
- --version
Show the version and exit.
- --help
Show this message and exit.
- -d, --device-id <device_id>
DK6 Serial device ID, obtained by list command
- -r, --baudrate <baudrate>
Serial port baudrate. Default baud rate is 115200.
- -b, --backend <backend>
PYFTDI backend, pure Python implementation of libFTDI. PYLIBFTDI backend. Ctypes wrapper for libFTDI. FTD2XX backend. Ctypes wrapper for D2XX. PYSERIAL backend for simple UART
- Options
PYFTDI | PYLIBFTDI | FTD2xx | PYSERIAL
- -n, --no-isp
Do not send ISP sequence
erase
Erase the memory.
Erase the content of memory at the given <ADDRESS>, for a specified <LENGTH>.
dk6prog erase [OPTIONS] ADDRESS LENGTH [MEMORY_ID]
Options
- -r, --relative
Use address relative to memory base address
- -v, --verify
Verify that the data were erase using blank check command
Arguments
- ADDRESS
Required argument
- LENGTH
Required argument
- MEMORY_ID
Optional argument
info
Prints the information about the connected device.
- param ctx
click Context
- raises SPSDKError
When the DEVICE ID is not specified
dk6prog info [OPTIONS]
isp
Issues ISP sequence as defined in Driver interface.
dk6prog isp [OPTIONS]
listdev
Prints the information about the connected devices.
DEVICE_ID identifier is a parameter used for identification of device in other commands.
dk6prog listdev [OPTIONS]
read
Reads the memory and writes it to the file or stdout.
Returns the contents of memory at the given <ADDRESS>, for a specified <BYTE_COUNT>.
dk6prog read [OPTIONS] ADDRESS LENGTH [MEMORY_ID]
Options
- -o, --out-file <FILE>
Save output to file
- -h, --use-hexdump
Use hexdump format
- -r, --relative
Use address relative to memory base address
Arguments
- ADDRESS
Required argument
- LENGTH
Required argument
- MEMORY_ID
Optional argument
write
Write the memory.
Writes the data to memory.
dk6prog write [OPTIONS] ADDRESS FILE[,BYTE_COUNT] | {{HEX-DATA}} [LENGTH]
[MEMORY_ID]
Options
- -r, --relative
Use address relative to memory base address
Arguments
- ADDRESS
Required argument
- FILE[,BYTE_COUNT] | {{HEX-DATA}}
Required argument
- LENGTH
Optional argument
- MEMORY_ID
Optional argument