DEVportal
API and Examples for the nPZero
Loading...
Searching...
No Matches
nPZero Configurator

Introduction

The nPZero Configurator is a desktop tool that can be used to evaluate, develop and test applications based on the nPZero power-saving IC.

The application can be downloaded here: nPZConfigurator

To install it simply unzip the content to any local folder, and run setup.exe. If you have an earlier version installed please un-install it before installing the new version.

System requirements

  • 4 GB of RAM
  • 100 MB of disk space
  • Windows 10 or later
  • .NET 8.0
  • Description

    The picture below shows the main interface of the nPZero Configurator:

    The tool consists of the following main sections, most of which can be showed/hidden through the View menu. Some sections can also be resized by dragging the area between the sections:

    Section Description
    nPZero Configuration

    This section breaks down all the configuration parameters of the nPZero device in a graphical way, and provides tooltips and descriptions to make the various parameters more intuitive to understand.

    At the top you will find global configuration parameters which includes all the parameters not directly related to connected peripherals, followed by peripheral configuration for the 4 available peripherals of the nPZero.

    The peripheral configuration parameters are hidden as long as the power mode of the peripheral is set to Disabled, but will appear once a different power mode is selected.

    Any change to the parameters in the nPZero Configuration section will be instantly reflected in the nPZero Registers and Generated Code sections.

    nPZero Registers

    The nPZero Registers section breaks down all the registers of the nPZero, and shows how the parameters input in the nPZero Configuration section are reflected in the device registers. All the registers and fields listed in the datasheet are available, and by mousing over the various fields a tooltip will pop up detailing the legal values for the field, and a description of the various values.

    Register values can be changed directly by modifying the field on the left side of the register fields. Values can be input in decimal, hexadecimal (use the “0x” prefix) or binary (use the “b” prefix) format.

    Generated Code

    The Generated Code section converts the nPZero configuration from the previous sections into a code snippet that is compliant with the nPZero API.

    This allows the configuration to be easily tested on a target system that combines the nPZero device with one of the supported host MCU families (currently STM or nRF).

    It is possible to choose between different template examples, and switch between the supported MCU architectures, before the code can be exported to a C file that can be integrated in the SDK of the host MCU.

    Terminal

    The Terminal section can be used to view the output from a dedicated protocol sniffer that can be used to sniff the operation of an nPZero based system.

    This sniffer will allow the decoding of the I2C and SPI buses handling communication between the nPZero, the host MCU and the connected peripherals, as well as detecting the state of digital signals, such as the state of the host and peripheral power switches and the peripheral interrupt lines.

    In order to use the terminal a sniffer needs to be connected to the PC over USB, and the virtual comport set up by the sniffer must be selected in the Comport box at the bottom of the terminal.

    Once connected the various terminal lines should show up in the terminal window, and it is possible to filter out lines by type, or search for lines by text.

    The following commands are available on the bottom right side:

  • Clear: Empties the terminal and removes all existing lines
  • Time: Resets the time using the currently selected line as reference. This makes it easier to check timing based on a particular event in the past
  • Pause/Play: Stops or starts the sniffer, to control incoming data
  • AutoScroll: Ensures that the terminal view scrolls down when new lines appear
  • Graph

    The Graph section shows a visual representation of the data received by the sniffer, similar to a scope or logic analyzer.

    GPIO pin changes will be reflected as a scope trace, while I2C, UART and SPI transaction will show up as blocks, indicating the start and stop time of the transaction.

    By using the mouse left, right and scroll buttons it is possible to zoom and pan the graph. The Time Scale slider allows for easy zooming in and out using a set of predefined time ranges, between 10 ms and 2 hours.

    Enabling AutoScale On ensures that the graph will pan to include incoming data automatically.

    On the right side of the graph it is possible to rename the elements of the graph, and view decoded information about the number of toggles/transactions for each line, and the amount of on time associated with each. An estimated active current can be entered for each line, which will be used to calculate an estimate of the average run current of the system, and the relative impact of each line on the total average current. This can be used to try and optimize the application, and identify which parts of the system are drawing the most power.