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.

Prerequisites#

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:

  1. Create EdgeLock 2GO API key

  2. Create device group

  3. Create Secure Object

  4. 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.

USB device identification in SPSDK

el2go-host - UART#

el2go-host could be connected to MCU bootloader and EdgeLock 2GO NXP Provisioning Firmware over UART.

UART device identification in SPSDK

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.

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.

bulk-so-download#

Download Secure Objects for all UUIDs in the database.

el2go-host bulk-so-download [OPTIONS]

Options

-c, --config <config>#

Required Path to the YAML/JSON configuration file.

-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.

el2go-host 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.

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-template | get-otp-binary

get-fw-version#

Return EdgeLock 2GO NXP Provisioning Firmware’s version.

el2go-host get-fw-version [OPTIONS]

Options

-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.

-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 SSEL
default SSEL is set to 0.15 which works
for the LPCLink2 bridge. The MCULink OB
bridge 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

-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.

el2go-host get-otp-binary [OPTIONS]

Options

-f, --family <family>#

Required only when using SEC Tool’s JSON config file.

Options:

k32w148 | kw45b41z5 | kw45b41z8 | mcxn235 | mcxn236 | mcxn546 | mcxn547 | mcxn946 | mcxn947 | mcxw716a | mcxw716c | rw610 | rw612

-c, --config <config>#

Required Path to the YAML/JSON configuration file.

-o, --output <output>#

Required Path to a file, where to store the output.

--force#

Force overwriting of existing files.

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.

el2go-host get-secure-objects [OPTIONS]

Options

-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.

-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 SSEL
default SSEL is set to 0.15 which works
for the LPCLink2 bridge. The MCULink OB
bridge 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

-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.

-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

-r, --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 donwloading 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.

el2go-host get-template [OPTIONS]

Options

-f, --family <family>#

Select the chip family.

Options:

k32w148 | kw45b41z5 | kw45b41z8 | mcxn235 | mcxn236 | mcxn546 | mcxn547 | mcxn946 | mcxn947 | mcxw716a | mcxw716c | rw610 | rw612

-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.

el2go-host get-uuid [OPTIONS]

Options

-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.

-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 SSEL
default SSEL is set to 0.15 which works
for the LPCLink2 bridge. The MCULink OB
bridge 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

-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

prepare-device#

Prepare device for Trust Provisioning.

1) Get UUID from the target
2) Download Secure Objects from EL2GO
3) Upload Secure Objects to the target
4) Upload OEM TP Firmware
5) Reset the device which will start the TP FW

Please note that the memory for Secure Objects and TP FW has to be configured.

el2go-host prepare-device [OPTIONS]

Options

-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.

-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 SSEL
default SSEL is set to 0.15 which works
for the LPCLink2 bridge. The MCULink OB
bridge 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

-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.

-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).

provision-device#

Perform the full Trust Provisioning of a device in a single run.

1) Read UUID from the device
2) Download Secure Objects from EL2GO
3) Upload Secure Objects to the target
4) Upload OEM TP Firmware configuration blob
5) Start provisioning process using a OEM TP Firmware
el2go-host provision-device [OPTIONS]

Options

-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.

-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 SSEL
default SSEL is set to 0.15 which works
for the LPCLink2 bridge. The MCULink OB
bridge 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

-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.

-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.

el2go-host provision-objects [OPTIONS]

Options

-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.

-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 SSEL
default SSEL is set to 0.15 which works
for the LPCLink2 bridge. The MCULink OB
bridge 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

-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.

-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.

When –dry-run flag is used, the device will not be provisioned
and remain in the same status as before. Only, EdgeLock 2GO Secure Object’s
and correct setup will be verified.
el2go-host run-provisioning [OPTIONS]

Options

-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.

-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 SSEL
default SSEL is set to 0.15 which works
for the LPCLink2 bridge. The MCULink OB
bridge 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

-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.

--dry-run#

Do not perform the actual provisioning, just simulate it. Note: not all devices support this feature.

test-connection#

Test connection with EdgeLock 2GO.

el2go-host test-connection [OPTIONS]

Options

-c, --config <config>#

Required Path to the YAML/JSON configuration file.

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.