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