.. _Palette installation:
Software Installation
#####################
This section describes how to get your host development environment set up with the necessary software including the system requirements
before you begin installing the software.
The pre-requisites for installing the Palette software are listed in the :ref:`Palette requirements`. secion.
Installation
************
.. include:: ../overview/blocks/install_sima_cli.rst
.. important::
In customer environments with strict firewall policies, coordinate with your IT team
to allow outbound HTTPS (port 443) access to the following URL:
.. code-block:: console
https://783709528641.dkr.ecr.us-west-2.amazonaws.com
The SDK is installed using a single command, ``sima-cli install sdk``. This command performs all
necessary actions including downloading required components, checking system compatibility, and
installing the selected SDK containers. Developers may choose which SDK components to installโfor
example, a Modalix-focused developer may opt to skip the Yocto SDK.
.. dropdown:: Step 1. Select the SDK containers to download
:animate: fade-in
:color: secondary
:open:
.. code-block:: console
:substitutions:
sima-user@sima-user-machine:~$ sima-cli install sdk
โ
sima-cli is up-to-date
๐ง Environment: host (linux) | Internal: True
๐ง Installing generic component from metadata URL: https://docs.sima.ai/pkg_downloads/SDK2.0.0/sdk/metadata.json
โฌ๏ธ Downloading metadata.json: 3.13kB [00:00, 21.1MB/s]
โฌ๏ธ Downloaded metadata to: /tmp/tmpkcm8lucb/metadata.json
โ
OS version 22.04 for ubuntu is compatible.
โ
Metadata validated successfully.
โญโ Select one or more opt-in resources to download โโโโโโโโโโโโฎ
โ โ
โ Use โ / โ to navigate โ
โ Press Space to select or deselect items โ
โ Press Enter to confirm selection โ
โ Tip: You can select multiple items before pressing Enter. โ
โ โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
๐ฆ : Use Space key to toggle selection(s)
โฏ โ MPK CLI Tools (GStreamer pipeline builder and device manager)
โ Model SDK (Model compilation and quantization)
โ eLxr SDK (Cross-compile for eLxr Linux)
โ Yocto SDK (Cross-compile for Yocto Linux)
โ ๐ซ Skip
.. note::
The Palette software package runs inside Docker. Ensure Docker Engine or Docker Desktop
is properly installed.
* `Docker Engine post-install steps `_
* `Docker Desktop installation instructions `_
To install Docker Engine manually:
.. code-block:: console
sima-user@sima-user-machine:~$ sudo apt-get update
sima-user@sima-user-machine:~$ sudo apt-get install docker-engine
If you have a previous Palette installation running, stop the existing Docker container
before installing the new version to ensure a clean upgrade.
.. warning::
You may bypass the operating system compatibility check to install the Palette SDK on
unsupported platforms by using the ``--force`` option.
**Proceed at your own risk**, as this configuration is not supported and may result in
unexpected behavior.
.. code-block:: console
sima-user@sima-user-machine:~$ sima-cli install sdk --force
.. dropdown:: Step 2. Dependencies Checklist
:animate: fade-in
:color: secondary
:open:
After downloading the selected SDK images, ``sima-cli`` automatically checks for required system
dependencies.
.. code-block:: console
:substitutions:
โญโโโโโโโโโโโโโโโโโโโโโโโฎ
โ ๐ง SiMa.ai SDK Setup โ
โฐโโโโโโโโโโโโโโโโโโโโโโโฏ
๐ Checking SiMa SDK Bridge Network...
โ
SiMa SDK Bridge Network found.
โ
Python 3.10.12 (Required โฅ 3.10.0)
โ
Docker 28.3.2 (Required โฅ 20.10.10)
โ
14 cores / 31.0 GB RAM (Required โฅ 4 cores / 16 GB)
โ ๏ธ Firewall may restrict Docker or SDK communication.
System Requirements Report
โโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโฌโโโโโโโโโโโโ
โ Component โ Required โ Found โ Result โ
โโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโผโโโโโโโโโโโโค
โ Python โ โฅ 3.10.0 โ 3.10.12 โ โ
PASS โ
โโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโผโโโโโโโโโโโโค
โ Docker โ โฅ 20.10.10 โ 28.3.2 โ โ
PASS โ
โโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโผโโโโโโโโโโโโค
โ CPU/RAM โ โฅ4 cores / โฅ16 GB โ 14 / 31.0 GB โ โ
PASS โ
โโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโผโโโโโโโโโโโโค
โ Firewall โ Disabled โ Unverified โ โ ๏ธ WARNING โ
โโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโดโโโโโโโโโโโโ
โ Some system checks failed.
Do you want to continue anyway? [y/N]:
This step verifies that your machine meets the minimum requirements for running Palette and the
SDK containers. Review all warnings before proceeding.
.. dropdown:: Step 3. Set up the SDKs
:animate: fade-in
:color: secondary
:open:
``sima-cli`` then guides the user through the SDK setup process.
.. code-block:: console
:substitutions:
Do you want to continue anyway? [y/N]: y
โ ๏ธ Proceeding despite warnings.
โญโโโโโโโโโโโโโโโโโ ๐ SiMa.ai SDK Image Selection โโโโโโโโโโโโโโโโโโโฎ
โ โข Use โ/โ and Space to select one or more images. โ
โ โข Press Enter to confirm. โ
โ โข Containers will be started automatically. โ
โ โข Press CTRL+C to cancel anytime. โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
Single SDK version detected: latest_master
? Select SDK images to start: 2 selected
๐ Checking for running SDK containers...
โน๏ธ No running SDK containers found.
Enter workspace directory [/home/sima/workspace]:
โ
Workspace set to: /home/sima/workspace
====================[ ๐ STARTING: mpk_cli_toolset-latest_master ]====================
โ
Created configuration file at: /home/sima/workspace/config.json
๐ Starting container 'mpk_cli_toolset-latest_master'
๐ชต Mapped log folders to host: logs/
ef4cdb72765e3cd0b6581f706f0d3c83a31386efd3f853bcc42a36dc6f4f95f0
โ
Container started on port 49152.
โ๏ธ Applying user configuration (UID=1000, GID=1000)
... (files copied)
๐ Network and syslog configured.
๐งฎ Computing C++ source hash in plugin_zoo/a65-apps ...
โ
Hash stored at .hash โ 839f0c54faca2f0a98a6c1bb4de6217c
โ
Container configured successfully.
โ
All selected containers started successfully!
โญโ Post-Installation Summary โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ sima-cli sdk setup โ Initialize the SDK environment. โ
โ sima-cli sdk start โ Start SDK containers. โ
โ sima-cli sdk stop โ Stop running SDK containers. โ
โ sima-cli sdk remove โ Remove installed SDK containers. โ
โ sima-cli sdk mpk โ Access the MPK CLI container. โ
โ sima-cli sdk model โ Access the Model SDK container. โ
โ sima-cli sdk yocto โ Work inside the Yocto SDK container. โ
โ sima-cli sdk elxr โ Work inside the eLxr SDK container. โ
โ โ
โ Tip: Use ``docker ps`` to verify running containers. โ
โ Setup complete! Run ``sima-cli sdk start`` to begin. โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
โ
Installation completed successfully.
The SDK setup process can be run at any time using the ``sima-cli sdk setup`` command. This allows developers to modify their SDK configuration after the initial installation.
.. dropdown:: Step 4. Access the SDKs
:animate: fade-in
:color: secondary
:open:
Once setup is complete, developers can access any SDK container using ``sima-cli``:
.. code-block:: console
:substitutions:
sima-user@sima-user-machine:~$ sima-cli sdk mpk
sima-user@sima-user-machine:~$ sima-cli sdk model
Developers may also run commands directly inside a container by appending the subcommand:
.. code-block:: console
:substitutions:
sima@SiMa-AE-002:~/workspace$ sima-cli sdk mpk mpk
โ
sima-cli is up-to-date
๐ง Environment: host (linux)
โถ Executing command in container: jfrog-mpk_cli_toolset-latest_master
usage: mpk [-h] [-d] [-q] [-v]
{project,pe,remote-log,device,create,debug,deploy,firmware-upgrade,kill,launch,list,remove,swap-model} ...
SiMa CLI Tool
options:
-h, --help show this help message and exit
-d, --debug full application debug mode
-q, --quiet suppress all console output
-v, --version show program's version number and exit
sub-commands:
{project,pe,remote-log,device,create,debug,deploy,firmware-upgrade,kill,launch,list,remove,swap-model}
project project controller
pe pe controller
remote-log remote-log controller
device device controller
create create mpk from directory
debug debug a running package or deploy mpk in debug mode
deploy Deploy mpk to target
firmware-upgrade Upgrade or Reset a device
kill Kill the current running package. Note: 1. In case -i/--id parameter isn't provided, it will kill the
latest active deployment. 2. Incase only -i/--id parameter is provided, the latest deployed mpk (to a
target) with the given id is killed. 3. In case both -i/--id and -t/--target parameters are provided, only
the latest active deployment with given id on given target will be killed.
launch Launch previously deployed mpk
list List the mpk Pipeline Execution Status on a Device
remove Remove previously deployed mpk
swap-model Hot-Swap a model in a mpk Pipeline in Execution on a Device
Installing on Windows using Hyper-V
***********************************
The Palette software supports Windows OS in Hyper-V mode, the setup and installation steps are described below.
.. note::
The Docker application (Docker Desktop or Docker Engine) must be installed before installing the Palette software.
Follow the link below for downloading and installing the Docker Desktop application.
https://docs.docker.com/desktop/install/windows-install/
Use the build version 4.26.1 or lower. See, https://docs.docker.com/desktop/release-notes/ for details.
In the **Configuration** window, do not click in the first checkbox, thereby the Hyper-V option will be enabled in the Docker Desktop application.
.. image:: media/Palette_windows_Hyper_V.png
:scale: 50%
:align: center
**Steps**
#. Reboot your PC and make sure that the Hyper-V option is enabled automatically as shown in the below image. If not, please select Hyper-V manually.
.. image:: media/Palette_windows_Hyper_V.png
:scale: 50%
:align: center
#. Launch the Docker Desktop application and open settings. Under resources, increase the memory to 6 GB as shown in the below image and choose ``Apply & Restart`` option.
.. image:: media/docker_resources.png
:scale: 50%
:align: center
#. Unzip the Palette software file.
#. Launch Windows powershell as an administrator and navigate to the sima-cli folder of the downloaded Palette software uncompressed file.
#. Install the Palette software.
.. code-block:: powershell
:substitutions:
PS C:\Users\SiMaUser\Downloads\|var_palette_reqs_version|\sima-cli> sima-cli install sdk
#. Enter the workspace directory of your choice (this is the directory which gets mounted in the container) and wait untill installation completes. Typical flow is mentioned below.
#. If prompted for file sharing permission from Docker, accept it.
.. image:: media/docker_permissions.png
:scale: 50%
:align: center
#. Launch the Palette software.
.. code-block:: powershell
:substitutions:
PS C:\Users\SiMaUser\Downloads\|var_palette_reqs_version|\sima-cli> sima-cli sdk mpk
Uninstalling the Palette Software
*********************************
#. Run the following command.
.. code-block:: console
:substitutions:
sima-user@sima-user-machine:/Downloads/|var_palette_reqs_version|/sima-cli$ sima-cli sdk remove