Hardware models

Overview

Hardware models help ZEDEDA Cloud recognize and manage devices. A hardware model is a digital blueprint of a physical device, detailing its specifications, features, and capabilities. It emphasizes components such as the CPU, RAM, storage, and I/O ports, along with their configurations.

This guide will help you create and upload new hardware models to a ZEDEDA Cloud enterprise.

Prerequisites

  • You must have Docker installed.
  • Your logo files should be accessible from your home directory.

Testing new hardware models

Testing is done manually based on the guidelines provided by the community documentation.

ZEDEDA thoroughly tests some models. Many others, however, including community-supported options, don't undergo thorough testing. If you'd like to see a specific model validated, contact ZEDEDA Sales or Support and ask for the model to be included in ZEDEDA's Approved Device List (ADL).

To see the current ADL models, go to "available models" in a ZEDEDA production enterprise. Additional community-supported models appear in the ZEDEDA Developer Program enterprises.

Alternatively, you can reference a complete list of community-endorsed hardware models here.

Get and update a hardware model template

Get the template file

There are two ways to get the template file of a hardware model. You can get the template when you install EVE-OS onto your edge hardware. Or, you can get the template from an edge node that is already running EVE-OS.

To get the template from the EVE-OS installation process, follow these steps.

    1. Complete the installation process.
    2. Retrieve the "controller-model.json" file from the USB stick post-installation.
      • This file is found in the INVENTORY partition, inside a folder named with the 'soft serial number' (a unique ID for ZEDEDA device onboarding).
    3. Copy this folder to your local machine.

To get the template from an edge node that is already running EVE-OS, follow these steps.

    1. On the command line of the EVE-OS edge node, run the following script to generate the required file.
      eve exec debug spec.sh > controller-model.json
    2. Copy this generated file to a USB stick.

Edit the template File

When you have a template file for your hardware model, follow these steps.

  1. Open the file.
  2. Change the productURL to the URL of the hardware's online specification. For example:
    "productURL": "https://ark.intel.com/content/www/us/en/ark/products/126150/intel-nuc-kit-nuc8i3beh.html”
  3. Acquire front and back images of the device.
  4. Rename the images appropriately. Replace "MODEL_NAME" with the appropriate value.
    logo_back_MODEL_NAME.jpg
    logo_front_MODEL_NAME.jpg
  5. Update the "logo" values in the JSON file with the paths to your new image files.
    "logo_back":"/workspace/spec/logo_back_MODEL_NAME.jpg",
    "logo_front":"/workspace/spec/logo_front_MODEL_NAME.jpg"
  6. Cross-check and confirm the CPU core count, main memory, and storage space details with the device's datasheet.
  7. Ensure all physical ports and resources listed in the file match the actual device specifications.
  8. Rename the "controller-model.json" file to match the specific brand and model names according to the convention used in the community-supported hardware repository. For example:
    template_l1_Intel_NUC8i3BEH.json
  9. If you want to submit your new hardware template and logo files for inclusion in the list of community-supported models, reach out for assistance at dev-program@zededa.com.

Create and upload a hardware model

With a template file, you can create and upload a new hardware model using the ZCLI. To do so, follow these steps.

  1. Start a ZCLI container.
  2. Mount your current working directory to the container. In this case, mounted under /root.
    docker run -it -v $PWD:/root zededa/zcli:latest 
  3. Log in using your credentials, following the ZEDEDA CLI Overview.
  4. List the existent brands.
    zcli brand show
  5. Add a new brand if you need to.
    zcli brand create BRAND_NAME --title=BRAND_NAME --logo=/PATH/TO/FILE/LOGO_NAME.png
  6. Create a new hardware model by linking the template.
    zcli model create MODEL_NAME --title=MODEL_NAME --brand=BRAND_NAME --hardware-details=/PATH/TO/FILE/TEMPLATE_FILE_NAME
  7. Optional: Add your front and back logos.
    zcli model add-artifact MODEL_NAME --type=logo1 --file-path=PATH/TO/FILE/FRONT_LOGO_FILE_NAME
    zcli model add-artifact MODEL_NAME --type=logo2 --file-path=/PATH/TO/FILE/BACK_LOGO_FILE_NAME
  8. Log in to your ZEDEDA enterprise.
  9. In the Marketplace > Models tab, check for the newly created model.
  10. Exit the ZCLI container.
    exit

Next steps

If you'd like to update a hardware model's logo, see our guide on how to update a hardware model logo.

Was this article helpful?
0 out of 0 found this helpful