CLI tool for SiMa Developer Portal to download models, firmware, and apps.
Project description
🛠️ sima-cli – SiMa Developer Portal CLI Tool
sima-cli is a command-line interface (CLI) utility designed to interact with the SiMa Developer Portal. It supports downloading models and apps from the Model/App Zoo, performing firmware updates, and authenticating against internal or external environments.
📦 Installation
pip install sima-cli
🚀 Getting Started
sima-cli --help
Global Option
--internal: Use internal Artifactory resources (can also be set viaSIMA_CLI_INTERNAL=1).
Environment detection output will appear like:
🔧 Environment: dev (sandbox) | Internal: True
If external mode is detected and not supported:
external environment is not supported yet..
🔐 Authentication
sima-cli login
Authenticates with the SiMa Developer Portal. Internal or external login is selected based on context.
📥 Download Resources
sima-cli download <URL> [-d DEST]
- Downloads a single file or an entire folder from the provided URL.
- Options:
-d,--dest: Destination folder (default is current directory).
🔧 Firmware Update
sima-cli update <version_or_url> [--ip IP] [--passwd PASSWORD] [--flavor {headless|full|auto}] [-y]
sima-cli update --version <VERSION> [--ip IP] [--passwd PASSWORD] [--flavor {headless|full|auto}] [-y]
- Updates firmware either locally (when running on the board) or over the network.
- Positional:
<version_or_url>: Version tag (e.g.1.6.0_master_B1611) or direct URL.
- Options:
-v,--version: Provide the version via flag instead of positional argument.--ip: IP/FQDN of the remote device (required when running from a host).-p,--passwd: SSH password for the remote board (defaultedgeai).-f,--flavor: Override firmware flavor (headless,full, orauto).-y,--yes: Skip the confirmation prompt before flashing.
🧠 Model Zoo
List Models
sima-cli modelzoo list [--ver VERSION]
- Lists available models for a given SDK version.
Get Model
sima-cli modelzoo get <MODEL_NAME> [--ver VERSION]
- Downloads the specified model.
📱 App Zoo
List Apps
sima-cli appzoo list [--ver VERSION]
- Lists available apps for a given SDK version.
Get App
sima-cli appzoo get <APP_NAME> [--ver VERSION]
- Downloads the specified app.
🖥️ Device Management
Discover Devices
sima-cli device discover
- Discover nearby SiMa.ai DevKits via ARP or multicast on the local network.
Connect to Device
sima-cli device connect --target <IP> [--user sima] [--password edgeai]
sima-cli device connect --slot <SLOT_NUMBER>
- Connect to a device over Ethernet (using
--target) or PCIe (using--slot).
List Connected Devices
sima-cli device list
- Show all currently connected devices with their status.
Disconnect from Device
sima-cli device disconnect --target <IP>
sima-cli device disconnect --slot <SLOT_NUMBER>
- Disconnect from a device using either IP/FQDN or PCIe slot number.
Reboot Device
sima-cli device reboot --target <IP>
sima-cli device reboot --slot <SLOT_NUMBER>
- Reboot a connected device.
Firmware Upgrade
sima-cli device firmware-upgrade --file <PATH_TO_SWU> --target <IP> [--reboot-on-upgrade]
sima-cli device firmware-upgrade --file <PATH_TO_SWU> --slot-number <SLOT_NUMBER>
- Upgrade firmware on a device using a software update file (.swu).
📦 MPK Package Management
Deploy MPK
sima-cli mpk deploy --file <PATH_TO_MPK> --target <IP> [--set-default]
sima-cli mpk deploy --file <PATH_TO_MPK> --slot <SLOT_NUMBER>
- Deploy a prebuilt MPK package to a connected device.
Launch Pipeline
sima-cli mpk launch --application <APP_NAME> --target <IP>
sima-cli mpk launch --application <APP_NAME> --slot <SLOT_NUMBER>
- Launch a deployed pipeline on the device.
Kill Pipeline
sima-cli mpk kill --id <PIPELINE_ID> --target <IP>
sima-cli mpk kill --pid <PID> --slot <SLOT_NUMBER>
- Kill a running pipeline using either pipeline ID or process ID.
Remove Pipeline
sima-cli mpk remove --application <APP_NAME> --target <IP>
- Remove a deployed pipeline from the device.
List Pipelines
sima-cli mpk list
- Show all deployed pipelines on connected devices.
🔧 Install Components
sima-cli install hostdriver -v 1.7.0
- Install the PCIe host driver for a specific SDK version.
sima-cli install optiview
- Install OptiView tool (SDK-independent).
sima-cli install -m <METADATA_URL>
- Install a package from a metadata.json URL.
sima-cli install gh:<USER>/<REPO>/<PATH_TO_METADATA>
- Install from a GitHub metadata file.
sima-cli install cr:<REGISTRY>/<IMAGE>:<TAG>
- Install from a container registry.
📋 Package Registry
List Installed Packages
sima-cli packages list
- Show all packages registered in the local sima-cli registry.
Show Package Details
sima-cli packages show <PACKAGE_NAME> [--version VERSION]
- Display metadata and post-installation instructions for a package.
🛠️ SDK Container Management
Setup SDK
sima-cli sdk setup [--noninteractive] [-y]
- Initialize SDK environment and select components to start.
Start SDK Containers
sima-cli sdk start [-y]
- Start one or more SDK containers.
Stop SDK Containers
sima-cli sdk stop [SDK_NAME] [-y]
- Stop running SDK containers (e.g.,
yocto,mpk,model,elxr).
Remove SDK Containers
sima-cli sdk remove [SDK_NAME] [-y]
- Remove SDK containers and images to free up storage.
Access SDK Container
sima-cli sdk mpk
sima-cli sdk model
sima-cli sdk yocto
sima-cli sdk elxr
- Launch an interactive shell in the respective SDK container.
List SDK Containers
sima-cli sdk ls
- Show installed SDK containers with their version and running status.
💾 Storage Management
Format NVMe Drive
sima-cli nvme format
- Format the NVMe drive on Modalix DevKit and mount it at
/media/nvme.
Remount NVMe Drive
sima-cli nvme remount
- Remount an existing NVMe partition to
/media/nvme.
Format SD Card
sima-cli sdcard format
- Prepare the SD Card as data storage for MLSoc or Modalix DevKit.
🌐 Network Configuration
sima-cli network
- Interactive menu to configure network settings on the DevKit (DHCP/Static IP, default route).
- Only works on SiMa boards.
🖥️ Serial Console
sima-cli serial [--baud 115200]
- Connect to the UART serial console of the DevKit.
- Auto-detects the serial port and launches
picocom(Linux/macOS) or shows instructions for PuTTY/Tera Term (Windows).
📸 Boot Image Creation
sima-cli bootimg -v 1.7.0 [--boardtype modalix] [--netboot] [--autoflash]
- Download firmware and write to removable media or setup TFTP netboot.
- Options:
--netboot: Prepare image for network boot and launch TFTP server.--autoflash: Automatically flash internal storage after netboot.
🔄 Convert Yocto to eLxr
Convert a Yocto-based DevKit to the eLxr runtime environment (SDK 2.0.0+, Modalix DevKit only).
Prerequisites
- Connect DevKit Ethernet to host PC (set host to static IP
192.168.1.10) - Update to latest Yocto headless (required for tRoot compatibility):
sima-cli update --ip <IP_DEVKIT> 2.0.0 -f headless
Conversion Steps
Prepare netboot environment:
# macOS
sima-cli bootimg --boardtype modalix --fwtype elxr -v 2.0.0 --netboot
# Linux (requires sudo for port 69)
sudo ~/.sima-cli/.venv/bin/sima-cli bootimg --boardtype modalix --fwtype elxr -v 2.0.0 --netboot
Configure u-boot (from serial console):
setenv cpio_name simaai-image-palette-modalix.cpio.gz
setenv boot_targets net
saveenv
boot
Flash eMMC (from host terminal after netboot completes):
f
Revert to Yocto
Use the same process with --fwtype yocto:
sima-cli bootimg --boardtype modalix --fwtype yocto -v 2.0.0 --netboot
🔄 Self Update
sima-cli selfupdate
- Update sima-cli to the latest version from PyPI.
sima-cli selfupdate -v 0.0.46
- Update to a specific version.
sima-cli --internal selfupdate -v 0.0.46
- Update from internal Artifactory (requires
--internalflag).
📊 MLA Memory Info
sima-cli mla meminfo
- Display real-time MLA memory usage chart on supported boards.
🔓 Logout
sima-cli logout
- Delete cached credentials and config files.
🌍 Environment Variable Support
Instead of using --internal flag every time, you can set:
export SIMA_CLI_INTERNAL=1
📌 Version
sima-cli version
- Display the currently installed sima-cli version.
🧩 Requirements
- Python 3.8+
- Internal network access if using
--internalfeatures
📞 Support
Please reach out to SiMa Support (support@sima.ai) if you encounter issues with downloads or updates.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sima_cli-0.0.54-py3-none-any.whl.
File metadata
- Download URL: sima_cli-0.0.54-py3-none-any.whl
- Upload date:
- Size: 185.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f98f2751757d42c7753fef06f405a47590f9c321092021d181f8d620e809a3c3
|
|
| MD5 |
435c06e10aebf022dbc25ecacb87ba8e
|
|
| BLAKE2b-256 |
909a22f875f3989411d322201844ec0b648488a681653b26b8cb9a8cf4190428
|