User Guide - el2go-host#
This user’s guide describes how to interface with the EdgeLock 2GO service and Edgelock 2GO NXP Provisioning Firmware using the el2go-host application.
The el2go-host application is a command-line utility used on the host computer to act as an intermediate layer between Edgelock 2GO Service’s REST API and Edgelock 2GO NXP Provisioning Firmware running on a device. The application only sends one command per invocation.
- Useful links:
Prerequisites#
Activate and configure your EdgeLock 2GO account (https://www.nxp.com/products/security-and-authentication/secure-service-2go-platform/edgelock-2go:EDGELOCK-2GO)
Install Secure Provisioning SDK(SPSDK)
Load on the device EdgeLock 2GO NXP Provisioning Firmware
Setup of the EdgeLock 2GO platform#
In the documentation menu of your EdgeLock 2GO account available at https://www.edgelock2go.com you can find the documents which explain how to setup the EdgeLock 2GO Account to:
Create EdgeLock 2GO API key
Create device group
Create Secure Object
Assign Secure Object to Device Group
Communication#
The el2go-host application communicates with the EdgeLock 2GO API over the host computer’s internet network and with the EdgeLock 2GO NXP Provisioning Firmware over the host computer’s UART (Serial Port) or USB connections.
EdgeLock 2GO NXP Provisioning Firmware supports I2C and SPI connections if an external BUSPAL connection is used.
el2go-host - USB#
el2go-host could be connected to MCU Bootloader and EdgeLock 2GO NXP Provisioning Firmware over USB HID.
el2go-host - UART#
el2go-host could be connected to MCU bootloader and EdgeLock 2GO NXP Provisioning Firmware over UART.
el2go-host - BUSPAL#
The BusPal acts as a bus translator running on selected platforms. BusPal assists el2go-host in carrying out commands and responses from the target device through an established connection with el2go-host over UART, and the target device over I2C or SPI.
Command line interface#
el2go-host consist of a set of sub-commands followed by options and arguments.
Some of these commands are used for communication with EdgeLock 2GO and others with the EdgeLock 2GO NXP Provisioning Firmware running on device.
el2go-host#
Use EdgeLock 2GO service to provision a device.
Usage
el2go-host [OPTIONS] COMMAND [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.
dev#
Group of sub-commands related to EdgeLock 2GO Device-based provisioning.
Usage
el2go-host dev [OPTIONS] COMMAND [ARGS]...
bulk-so-download#
Download Secure Objects for all UUIDs in the database.
Usage
el2go-host dev bulk-so-download [OPTIONS]
Options
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- -db, --database <database>#
Required Database of UUIDs and Secure Objects
- -l, --limit <limit>#
Number of devices to download (default: 0 = all)
- -t, --time-per-device <time_per_device>#
Time per device in seconds (default: 5)
- -s, --max-job-size <max_job_size>#
Max chunk size for one job (default: 500)
combine-uuid-db#
Combine multiple UUID databases into one.
Usage
el2go-host dev combine-uuid-db [OPTIONS]
Options
- -o, --output <output>#
Required Path to the output database file.
- --force#
Force overwriting of existing files.
- -i, --input <input_sources>#
Required Path(s) to the input database file(s). Multiple inputs are allowed. You can use a folder containing the database files.
get-families#
Shows the full family info for commands in this group.
Usage
el2go-host dev get-families [OPTIONS]
Options
- -c, --cmd-name <cmd_name>#
Choose the command name to get full information about NXP families support.
- Options:
get-template | run-provisioning | get-secure-objects | get-uuid | prepare-device | provision-objects | provision-device
get-secure-objects#
Download EdgeLock 2GO Secure objects generated for the device attached.
To generate a template of the configuration file required as input, get-template command can be used.
Usage
el2go-host dev get-secure-objects [OPTIONS]
Options
- -us, --usbserial <SERIAL_NUMBER>#
Filter UUU devices by USB serial number
- -up, --usbpath <USB_PATH>#
Filter UUU devices by USB path
- --fb-size <fb_size>#
Override default buffer size for fastboot
- --fb-addr <fb_addr>#
Override default buffer address for fastboot
- -d, --device <device>#
Select connection method for El2Go communication, otherwise default from DB will be used
- Options:
mboot | uboot_serial | uboot_fastboot
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier. | Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name. | <vid>: hex or dec string; e.g. 0x0AB12, 43794. | <vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451. | Use ‘nxpdevscan’ utility to list connected device names.
This option can be omitted if ‘–family’ option is used.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)Following types of interface configuration formats are supported:- string with coma separated arguments i.e. spi1,0,15,1000,1- string with coma separated keyword arguments (the order may not be maintained) i.e.spi1,port=0,speed_kHz=1000,nirq_port=1,nirq_pin=7- string with combination of coma separated arguments and keyword arguments i.e.spi1,0,15,nirq_port=1,nirq_pin=7
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- -f, --family <family>#
Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -t, --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- -e, --encoding <encoding>#
Encoding of the Secure Objects file. Default: bin
- Options:
bin | json
- -o, --output <output>#
Path to a file, where to store the output.
- --force#
Force overwriting of existing files.
- -db, --database <database>#
Use a database as source for UUIDs instead of connected device.
- -rdb, --remote-database <remote_database>#
URL to the remote database
- -rd, --re-download#
Re-download Secure Objects even if found in database.
- --re-assign#
Allow re-assignment if a Device is registered in a different Device Group.
- --continue-on-error#
Continue downloading Secure Object in case of an error. This option has effect only when using a database with multiple UUIDs.
get-template#
Get template for the configuration file used in other command.
Usage
el2go-host dev get-template [OPTIONS]
Options
- -f, --family <family>#
[required] Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -o, --output <output>#
Required Path to a file, where to store the output.
- --force#
Force overwriting of existing files.
get-uuid#
Get UUID from the target and store it in a database.
Usage
el2go-host dev get-uuid [OPTIONS]
Options
- -us, --usbserial <SERIAL_NUMBER>#
Filter UUU devices by USB serial number
- -up, --usbpath <USB_PATH>#
Filter UUU devices by USB path
- --fb-size <fb_size>#
Override default buffer size for fastboot
- --fb-addr <fb_addr>#
Override default buffer address for fastboot
- -d, --device <device>#
Select connection method for El2Go communication, otherwise default from DB will be used
- Options:
mboot | uboot_serial | uboot_fastboot
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier. | Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name. | <vid>: hex or dec string; e.g. 0x0AB12, 43794. | <vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451. | Use ‘nxpdevscan’ utility to list connected device names.
This option can be omitted if ‘–family’ option is used.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)Following types of interface configuration formats are supported:- string with coma separated arguments i.e. spi1,0,15,1000,1- string with coma separated keyword arguments (the order may not be maintained) i.e.spi1,port=0,speed_kHz=1000,nirq_port=1,nirq_pin=7- string with combination of coma separated arguments and keyword arguments i.e.spi1,0,15,nirq_port=1,nirq_pin=7
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- -f, --family <family>#
Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -t, --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -db, --database <database>#
Use Database of UUIDs and Secure Objects
- -rdb, --remote-database <remote_database>#
URL to the remote database
parse-uuid-db#
Parse Information about DB file. Optionally extract Secure Objects.
Usage
el2go-host dev parse-uuid-db [OPTIONS]
Options
- -i, --input <input_db>#
Required Path to DB file to parse
- -o, --output <output>#
Path to directory where to extract Secure Objects.
prepare-device#
Prepare device for Trust Provisioning.
Please note that the memory for Secure Objects and TP FW has to be configured.
Usage
el2go-host dev prepare-device [OPTIONS]
Options
- -us, --usbserial <SERIAL_NUMBER>#
Filter UUU devices by USB serial number
- -up, --usbpath <USB_PATH>#
Filter UUU devices by USB path
- --fb-size <fb_size>#
Override default buffer size for fastboot
- --fb-addr <fb_addr>#
Override default buffer address for fastboot
- -d, --device <device>#
Select connection method for El2Go communication, otherwise default from DB will be used
- Options:
mboot | uboot_serial | uboot_fastboot
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier. | Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name. | <vid>: hex or dec string; e.g. 0x0AB12, 43794. | <vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451. | Use ‘nxpdevscan’ utility to list connected device names.
This option can be omitted if ‘–family’ option is used.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)Following types of interface configuration formats are supported:- string with coma separated arguments i.e. spi1,0,15,1000,1- string with coma separated keyword arguments (the order may not be maintained) i.e.spi1,port=0,speed_kHz=1000,nirq_port=1,nirq_pin=7- string with combination of coma separated arguments and keyword arguments i.e.spi1,0,15,nirq_port=1,nirq_pin=7
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- -f, --family <family>#
Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -t, --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- -sf, --secure-objects-file <secure_objects_file>#
Path to Secure Objects file created via get-secure-objects command
- -db, --database <database>#
Use Database of UUIDs and Secure Objects
- -rdb, --remote-database <remote_database>#
URL to the remote database
- -w, --workspace <workspace>#
Path to a folder for storing data used during provisioning for debugging purposes.
- --clean#
Clean deployed Secure objects from last run (if applicable for given device).
provision-device#
Perform the full Trust Provisioning of a device in a single run.
Usage
el2go-host dev provision-device [OPTIONS]
Options
- -us, --usbserial <SERIAL_NUMBER>#
Filter UUU devices by USB serial number
- -up, --usbpath <USB_PATH>#
Filter UUU devices by USB path
- --fb-size <fb_size>#
Override default buffer size for fastboot
- --fb-addr <fb_addr>#
Override default buffer address for fastboot
- -d, --device <device>#
Select connection method for El2Go communication, otherwise default from DB will be used
- Options:
mboot | uboot_serial | uboot_fastboot
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier. | Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name. | <vid>: hex or dec string; e.g. 0x0AB12, 43794. | <vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451. | Use ‘nxpdevscan’ utility to list connected device names.
This option can be omitted if ‘–family’ option is used.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)Following types of interface configuration formats are supported:- string with coma separated arguments i.e. spi1,0,15,1000,1- string with coma separated keyword arguments (the order may not be maintained) i.e.spi1,port=0,speed_kHz=1000,nirq_port=1,nirq_pin=7- string with combination of coma separated arguments and keyword arguments i.e.spi1,0,15,nirq_port=1,nirq_pin=7
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- -f, --family <family>#
Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -t, --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- -w, --workspace <workspace>#
Path to a folder for storing data used during provisioning for debugging purposes.
- --re-assign#
Allow re-assignment if a Device is registered in a different Device Group.
- --clean#
Clean deployed Secure objects from last run (if applicable for given device).
- --dry-run#
Do not perform the actual provisioning, just simulate it. (if applicable for given device).
provision-objects#
Provision the device with Secure Object blob downloaded from EL2GO via get-secure-objects command.
Usage
el2go-host dev provision-objects [OPTIONS]
Options
- -us, --usbserial <SERIAL_NUMBER>#
Filter UUU devices by USB serial number
- -up, --usbpath <USB_PATH>#
Filter UUU devices by USB path
- --fb-size <fb_size>#
Override default buffer size for fastboot
- --fb-addr <fb_addr>#
Override default buffer address for fastboot
- -d, --device <device>#
Select connection method for El2Go communication, otherwise default from DB will be used
- Options:
mboot | uboot_serial | uboot_fastboot
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier. | Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name. | <vid>: hex or dec string; e.g. 0x0AB12, 43794. | <vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451. | Use ‘nxpdevscan’ utility to list connected device names.
This option can be omitted if ‘–family’ option is used.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)Following types of interface configuration formats are supported:- string with coma separated arguments i.e. spi1,0,15,1000,1- string with coma separated keyword arguments (the order may not be maintained) i.e.spi1,port=0,speed_kHz=1000,nirq_port=1,nirq_pin=7- string with combination of coma separated arguments and keyword arguments i.e.spi1,0,15,nirq_port=1,nirq_pin=7
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- -f, --family <family>#
Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -t, --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- -sf, --secure-objects-file <secure_objects_file>#
Path to Secure Objects file created via get-secure-objects command
- -db, --database <database>#
Use Database of UUIDs and Secure Objects
- -rdb, --remote-database <remote_database>#
URL to the remote database
- --clean#
Clean deployed Secure objects from last run (if applicable for given device).
- --dry-run#
Do not perform the actual provisioning, just simulate it. (if applicable for given device).
run-provisioning#
Launch EdgeLock 2GO NXP Provisioning Firmware.
Usage
el2go-host dev run-provisioning [OPTIONS]
Options
- -us, --usbserial <SERIAL_NUMBER>#
Filter UUU devices by USB serial number
- -up, --usbpath <USB_PATH>#
Filter UUU devices by USB path
- --fb-size <fb_size>#
Override default buffer size for fastboot
- --fb-addr <fb_addr>#
Override default buffer address for fastboot
- -d, --device <device>#
Select connection method for El2Go communication, otherwise default from DB will be used
- Options:
mboot | uboot_serial | uboot_fastboot
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier. | Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name. | <vid>: hex or dec string; e.g. 0x0AB12, 43794. | <vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451. | Use ‘nxpdevscan’ utility to list connected device names.
This option can be omitted if ‘–family’ option is used.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)Following types of interface configuration formats are supported:- string with coma separated arguments i.e. spi1,0,15,1000,1- string with coma separated keyword arguments (the order may not be maintained) i.e.spi1,port=0,speed_kHz=1000,nirq_port=1,nirq_pin=7- string with combination of coma separated arguments and keyword arguments i.e.spi1,0,15,nirq_port=1,nirq_pin=7
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- -f, --family <family>#
Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -t, --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -c, --config <config>#
Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- --dry-run#
Do not perform the actual provisioning, just simulate it. Note: not all devices support this feature.
unclaim#
Unclaim devices: Remove UUIDs from Device Group.
If a database is specified, unclaim only UUIDs in database and remove Secure Objects from database.
Usage
el2go-host dev unclaim [OPTIONS]
Options
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- -db, --database <database>#
Unclaim devices only in this database
- -y, --yes#
Assume yes to all prompts.
get-families#
Shows the full family info for commands in this group.
Usage
el2go-host get-families [OPTIONS]
Options
- -c, --cmd-name <cmd_name>#
Choose the command name to get full information about NXP families support.
- Options:
get-secure-objects | get-template | get-uuid | prepare-device | provision-device | provision-objects | run-provisioning | get-fw-version
prod#
Group of sub-commands related to EdgeLock 2GO Product-based provisioning.
Usage
el2go-host prod [OPTIONS] COMMAND [ARGS]...
db-stats#
Get database statistics for provisioning records and reports.
Usage
el2go-host prod db-stats [OPTIONS]
Options
- -db, --database <database>#
Path to database file with reports
- -rdb, --remote-database <remote_database>#
URL to remote database with reports
get-families#
Shows the full family info for commands in this group.
Usage
el2go-host prod get-families [OPTIONS]
Options
- -c, --cmd-name <cmd_name>#
Choose the command name to get full information about NXP families support.
- Options:
get-template | provision-device | prepare-device | run-provisioning
get-next-so#
Retrieve next available secure object from an existing batch.
Usage
el2go-host prod get-next-so [OPTIONS]
Options
- -db, --database <database>#
Path to existing database with secure objects
- -rdb, --remote-database <remote_database>#
URL to remote database with secure objects
- -o, --output <output>#
Required Path to output file for secure objects
- --force#
Force overwriting of existing files.
get-secure-objects#
Retrieve secure objects for EdgeLock 2GO product-based provisioning.
Usage
el2go-host prod get-secure-objects [OPTIONS]
Options
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- -d, --devices <devices>#
Create new batch with this many devices
- -b, --batch-id <batch_id>#
Download already existing batch
- -o, --output <output>#
Required Path to database file.
- --force#
Force overwriting of existing files.
get-template#
Get template for the configuration file used in other command.
Usage
el2go-host prod get-template [OPTIONS]
Options
- -f, --family <family>#
[required] Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -o, --output <output>#
Required Path to a file, where to store the output.
- --force#
Force overwriting of existing files.
prepare-device#
Prepare device for EdgeLock 2GO provisioning process.
Usage
el2go-host prod prepare-device [OPTIONS]
Options
- -us, --usbserial <SERIAL_NUMBER>#
Filter UUU devices by USB serial number
- -up, --usbpath <USB_PATH>#
Filter UUU devices by USB path
- --fb-size <fb_size>#
Override default buffer size for fastboot
- --fb-addr <fb_addr>#
Override default buffer address for fastboot
- -d, --device <device>#
Select connection method for El2Go communication, otherwise default from DB will be used
- Options:
mboot | uboot_serial | uboot_fastboot
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier. | Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name. | <vid>: hex or dec string; e.g. 0x0AB12, 43794. | <vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451. | Use ‘nxpdevscan’ utility to list connected device names.
This option can be omitted if ‘–family’ option is used.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)Following types of interface configuration formats are supported:- string with coma separated arguments i.e. spi1,0,15,1000,1- string with coma separated keyword arguments (the order may not be maintained) i.e.spi1,port=0,speed_kHz=1000,nirq_port=1,nirq_pin=7- string with combination of coma separated arguments and keyword arguments i.e.spi1,0,15,nirq_port=1,nirq_pin=7
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- -f, --family <family>#
Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -t, --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -db, --database <database>#
Path to existing database with secure objects
- -rdb, --remote-database <remote_database>#
URL to remote database with secure objects
- -sf, --secure-objects-file <secure_objects_file>#
Path to file with secure object file for provisioning
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- --check-fw#
Perform check after reset to validate Provisioning FW is running
- -w, --workspace <workspace>#
Path to a folder for storing data used during provisioning for debugging purposes.
- --clean#
Clean deployed Secure objects from last run (if applicable for given device).
provision-device#
Execute EdgeLock 2GO product provisioning process.
Usage
el2go-host prod provision-device [OPTIONS]
Options
- -us, --usbserial <SERIAL_NUMBER>#
Filter UUU devices by USB serial number
- -up, --usbpath <USB_PATH>#
Filter UUU devices by USB path
- --fb-size <fb_size>#
Override default buffer size for fastboot
- --fb-addr <fb_addr>#
Override default buffer address for fastboot
- -d, --device <device>#
Select connection method for El2Go communication, otherwise default from DB will be used
- Options:
mboot | uboot_serial | uboot_fastboot
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier. | Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name. | <vid>: hex or dec string; e.g. 0x0AB12, 43794. | <vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451. | Use ‘nxpdevscan’ utility to list connected device names.
This option can be omitted if ‘–family’ option is used.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)Following types of interface configuration formats are supported:- string with coma separated arguments i.e. spi1,0,15,1000,1- string with coma separated keyword arguments (the order may not be maintained) i.e.spi1,port=0,speed_kHz=1000,nirq_port=1,nirq_pin=7- string with combination of coma separated arguments and keyword arguments i.e.spi1,0,15,nirq_port=1,nirq_pin=7
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- -f, --family <family>#
Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -t, --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -db, --database <database>#
Path to existing database with secure objects
- -rdb, --remote-database <remote_database>#
URL to remote database with secure objects
- -sf, --secure-objects-file <secure_objects_file>#
Path to file with secure object file for provisioning
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- -w, --workspace <workspace>#
Path to a folder for storing data used during provisioning for debugging purposes.
- --clean#
Clean deployed Secure objects from last run (if applicable for given device).
- --dry-run#
Perform a dry run without actual provisioning
- -o, --output <output>#
Optional output path for provisioning report
run-provisioning#
Execute provisioning process only.
Usage
el2go-host prod run-provisioning [OPTIONS]
Options
- -us, --usbserial <SERIAL_NUMBER>#
Filter UUU devices by USB serial number
- -up, --usbpath <USB_PATH>#
Filter UUU devices by USB path
- --fb-size <fb_size>#
Override default buffer size for fastboot
- --fb-addr <fb_addr>#
Override default buffer address for fastboot
- -d, --device <device>#
Select connection method for El2Go communication, otherwise default from DB will be used
- Options:
mboot | uboot_serial | uboot_fastboot
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier. | Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name. | <vid>: hex or dec string; e.g. 0x0AB12, 43794. | <vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451. | Use ‘nxpdevscan’ utility to list connected device names.
This option can be omitted if ‘–family’ option is used.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)Following types of interface configuration formats are supported:- string with coma separated arguments i.e. spi1,0,15,1000,1- string with coma separated keyword arguments (the order may not be maintained) i.e.spi1,port=0,speed_kHz=1000,nirq_port=1,nirq_pin=7- string with combination of coma separated arguments and keyword arguments i.e.spi1,0,15,nirq_port=1,nirq_pin=7
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- -f, --family <family>#
Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -t, --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- --dry-run#
Perform a dry run without actual provisioning
- -o, --output <output>#
Optional output path for provisioning report
store-report#
Upload provisioning report for used secure objects.
Usage
el2go-host prod store-report [OPTIONS]
Options
- -db, --database <database>#
Path to existing database with secure objects
- -rdb, --remote-database <remote_database>#
URL to remote database with secure objects
- -r, --report <report>#
Required Path to provisioning report file
tbr-replace-puk#
Replace PUK in the local product-based batch database for testing purposes.
Usage
el2go-host prod tbr-replace-puk [OPTIONS]
Options
- -db, --database <database>#
Required Path to existing database with secure objects
- -puk, --puk-file <puk_file>#
Required Path to file containing new PUK for replacement
tbr-reset-db#
Reset/clear the local product-based batch database for testing purposes.
Usage
el2go-host prod tbr-reset-db [OPTIONS]
Options
- -db, --database <database>#
Required Path to existing database to reset
validate-reports#
Validate provisioning reports from local or remote database.
Usage
el2go-host prod validate-reports [OPTIONS]
Options
- -db, --database <database>#
Path to database file with reports
- -rdb, --remote-database <remote_database>#
URL to remote database with reports
utils#
Group of sub-commands related to EdgeLock 2GO Product-based provisioning.
Usage
el2go-host utils [OPTIONS] COMMAND [ARGS]...
get-families#
Shows the full family info for commands in this group.
Usage
el2go-host utils get-families [OPTIONS]
Options
- -c, --cmd-name <cmd_name>#
Choose the command name to get full information about NXP families support.
- Options:
get-fw-version
get-fw-version#
Return EdgeLock 2GO NXP Provisioning Firmware’s version.
Usage
el2go-host utils get-fw-version [OPTIONS]
Options
- -us, --usbserial <SERIAL_NUMBER>#
Filter UUU devices by USB serial number
- -up, --usbpath <USB_PATH>#
Filter UUU devices by USB path
- --fb-size <fb_size>#
Override default buffer size for fastboot
- --fb-addr <fb_addr>#
Override default buffer address for fastboot
- -d, --device <device>#
Select connection method for El2Go communication, otherwise default from DB will be used
- Options:
mboot | uboot_serial | uboot_fastboot
- -p, --port <COM[,speed>#
Serial port configuration. Default baud rate is 57600. Use ‘nxpdevscan’ utility to list devices on serial port.
- -u, --usb <VID:PID|USB_PATH|DEV_NAME>#
USB device identifier. | Following formats are supported: <vid>, <vid:pid> or <vid,pid>, device/instance path, device name. | <vid>: hex or dec string; e.g. 0x0AB12, 43794. | <vid/pid>: hex or dec string; e.g. 0x0AB12:0x123, 1:3451. | Use ‘nxpdevscan’ utility to list connected device names.
This option can be omitted if ‘–family’ option is used.
- -l, --lpcusbsio <usb,VID:PID|USB_PATH|SER_NUM,]spi|i2c>#
USB-SIO bridge interface.
Optional USB device filtering formats: [usb,vid:pid|usb_path|serial_number]
Following serial interfaces are supported:
spi[index][,port,pin,speed_kHz,polarity,phase]- index … optional index of SPI peripheral. Example: “spi1” (default=0)- port … bridge GPIO port used as SPI SSEL(default=0)- pin … bridge GPIO pin used as SPI SSELdefault SSEL is set to 0.15 which worksfor the LPCLink2 bridge. The MCULink OBbridge ignores the SSEL value anyway.(default=15)- speed_kHz … SPI clock in kHz (default 1000)- polarity … SPI CPOL option (default=1)- phase … SPI CPHA option (default=1)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)i2c[index][,address,speed_kHz]- index … optional index of I2C peripheral. Example: “i2c1” (default=0)- address … I2C device address (default 0x10)- speed_kHz … I2C clock in kHz (default 100)- nirq_port … nIRQ port number (default None)- nirq_pin … nIRQ pin number (default None)Following types of interface configuration formats are supported:- string with coma separated arguments i.e. spi1,0,15,1000,1- string with coma separated keyword arguments (the order may not be maintained) i.e.spi1,port=0,speed_kHz=1000,nirq_port=1,nirq_pin=7- string with combination of coma separated arguments and keyword arguments i.e.spi1,0,15,nirq_port=1,nirq_pin=7
- -b, --buspal <spi[,speed,polarity,phase,lsb|msb] | i2c[,address,speed>#
Buspal settings
- -f, --family <family>#
Select the chip family.
- Options:
k32w148 | kw45b41z5 | kw45b41z8 | kw45z41052 | kw45z41053 | kw45z41082 | kw45z41083 | kw47b42z83 | kw47b42z96 | kw47b42z97 | kw47b42zb2 | kw47b42zb3 | kw47b42zb6 | kw47b42zb7 | kw47z42082 | kw47z42092 | kw47z420b2 | kw47z420b3 | mcxn235 | mcxn236 | mcxn247 | mcxn526 | mcxn527 | mcxn536 | mcxn537 | mcxn546 | mcxn547 | mcxn556s | mcxn557s | mcxn946 | mcxn947 | mcxw716a | mcxw716c | mcxw727a | mcxw727c | mcxw727d | mimx8ulp | mimx9131 | mimx9352 | rw610 | rw612
- -r, --revision <revision>#
Chip revision; if not specified, most recent one will be used
- -t, --timeout <ms>#
Sets timeout when waiting on data over a serial line. The default is 5000 milliseconds.
get-otp-binary#
Generate EL2GO OTP Binary from data in configuration file.
Usage
el2go-host utils get-otp-binary [OPTIONS]
Options
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
- -o, --output <output>#
Required Path to a file, where to store the output.
- --force#
Force overwriting of existing files.
test-connection#
Test connection with EdgeLock 2GO.
Usage
el2go-host utils test-connection [OPTIONS]
Options
- -c, --config <config>#
Required Path to the YAML/JSON configuration file.
- -oc, --override-config <key_path=value>#
Allows override the individual configuration settings. The use is simple: ‘key_path=value’, like ‘family=mimxrt595s’ or in structural configuration with separating character ‘/’ like ‘containers/0/binary_container=my_container.bin’. It could be used multiple times.
Usage example#
A proposed order of el2go-host application usage is presented below:
- get-template
Syntax:
el2go-host get-template -f [CHIP_FAMILY] -o [PATH_TO_OUTPUT_FILE]
Description: A configuration file template will be generated on the desired path and for the desired chip family.
- test-connection(Optional)
Syntax:
el2go-host test-connection -c [PATH_TO_CONFIG_FILE]
Description: Given the path to the configuration file, a request to EdgeLock 2GO REST API will be send to establish connection with the service.
- get-secure-objects
Syntax:
el2go-host get-secure-objects [INTERFACE_OPTIONS] -c [PATH_TO_CONFIG_FILE] -o [PATH_TO_OUTPUT_BINARY_FILE]
Description: Given the path to the configuration file, with required inputs defined, this command will:
Harvest device’s UUID.
Whitelist device to the defined Device Group.
Request generation of Secure Objects assigned to the Device Group.
Download and store locally to a binary file the Secure Objects.
Note: Device needs to be in ISP boot mode.
- get-fw-version
Syntax:
el2go-host get-fw-version [INTERFACE_OPTIONS]
Description: Since EdgeLock 2GO NXP Provisioning Firmware is loaded on the device, with this command Firmware’s version can be extracted. Also, user can check if communication have been established between host machine and EdgeLock 2GO NXP Provisioning Firmware.
Note: Device needs to be in FlexSPI boot mode.
- close-device
Syntax:
el2go-host close-device [INTERFACE_OPTIONS] [ADDRESS]
Description: This command will provision the device. The FLASH memory address where Secure Objects downloaded using get-secure-objects should be passed as argument or else operation will fail.
Note: Device needs to be in FlexSPI boot mode.
Known Issues#
EdgeLock 2GO per product provisioning is supported for the MCXNxxx processors except MCXN235