Device
Device commands manage Atym devices within your tenant. They allow you to add, list, search, update, and remove devices, manage device attributes, view a device twin, stream live logs, and run a local device simulator. The device resource has aliases device and devices.
device add
Add a new device to the current tenant, or add a single attribute key/value pair to an existing device.
Usage:
atymctl device add { [-n DEVICE_NAME ... [flags] ] | [DEVICE_ID -z ATTRIBUTE_CATEGORY ATTRIBUTE_KEY VALUE] }
Flags:
-o, --aotEnabled AOT enabled (default: false)
-z, --attribute Attribute key/value pair mode
-c, --cpu string Device cpu type
-d, --description string Device description
-n, --deviceName string Device name
-e, --enabled Device enabled (default true)
-f, --file string File path containing device info
-h, --help help for add
-s, --serialNumber string Device serial number
-t, --target string Device target architecture type
-a, --targetAbi string Device target ABI
-x, --xip XIP enabled (default: false)
Required (new device): --deviceName and --serialNumber. If --aotEnabled is set to true, also provide --cpu, --target, and --targetAbi.
Required (attribute mode): DEVICE_ID, -z, ATTRIBUTE_CATEGORY, ATTRIBUTE_KEY, and VALUE. For bulk attribute changes prefer device attributes.
When using the -f, --file flag you provide a YAML configuration file instead of individual flags. See the Device Configuration File reference for the file format. For AOT-specific configuration, see AOT Compilation.
Accepted Values
| Parameter | Description | Accepted Values |
|---|---|---|
cpu | The device cpu type | See available CPU types |
target | The device architecture type | See available Target types |
targetAbi | The Application Binary Interface for the target platform | See available TargetAbi types |
device list
List devices in the current tenant with an optional name filter. Results are paginated; use --tail to interactively page through all results.
Usage:
atymctl device list [flags]
Flags:
-h, --help help for list
-l, --like string Filter devices by name
-o, --page_offset int Offset for paging
-p, --page_size int Number of results to return (default 20)
-t, --tail Interactively page through all results
Examples:
atymctl device list
atymctl device list -l myDevice
atymctl device list --tail
device search
Search devices using a SQL-like query expression. Useful for filtering by attributes, target, CPU, or other fields.
Usage:
atymctl device search [QUERY] [flags]
Flags:
-h, --help help for search
-o, --page_offset int Offset for paging
-p, --page_size int Number of results to return (default 20)
-t, --tail Interactively page through all results
Examples:
atymctl device search "deviceName = 'myDevice'"
atymctl device search "enabled = true AND user.region = 'us-east'"
atymctl device search "cpu = 'cortex-m33'" --tail
device show
Show detailed information about a device, including its configuration and status.
Usage:
atymctl device show [DEVICE_ID]
Flags:
-h, --help help for show
-n, --name string Device Name
Required: DEVICE_ID or --name. If both are omitted, the default device from your config is used.
device update
Patch a device's metadata. You only need to provide the values you want to change.
Usage:
atymctl device update DEVICE_ID [flags]
Flags:
-o, --aot string AOT enabled status of the device ('true'/'false')
-c, --cpu string CPU variant of the device
-d, --desc string Description of the device
-e, --enabled string Enabled status of the device ('true'/'false')
-h, --help help for update
-n, --name string Name of the device
-s, --sn string Serial number of the device
-t, --target string Target architecture of the device
-a, --targetAbi string Target ABI of the device
-x, --xip string XIP enabled status of the device ('true'/'false')
Required: DEVICE_ID, and at least one field to update.
Accepted Values
| Parameter | Description | Accepted Values |
|---|---|---|
cpu | The device cpu type | See available CPU types |
target | The device architecture type | See available Target types |
targetAbi | The Application Binary Interface for the target platform | See available TargetAbi types |
device remove
Delete a device, or delete a single attribute from a device.
Usage:
atymctl device remove [DEVICE_ID] | [DEVICE_ID ATTRIBUTE_CATEGORY ATTRIBUTE_KEY -z]
Flags:
-z, --from_attributes Delete attribute from device
-h, --help help for remove
Required: DEVICE_ID.
device set
Set the default device used by subsequent commands. Equivalent to config set-device.
Usage:
atymctl device set [flags]
Flags:
-h, --help help for set
-i, --id string Device ID
-n, --name string Device Name
Required: one of --id or --name.
device twin
Retrieve the device twin information by device UUID. The twin is the Hub's persisted view of the device's reported and desired state.
Usage:
atymctl device twin [DEVICE_ID] [flags]
Flags:
-h, --help help for twin
Required: DEVICE_ID, or a default device set in your config.
device logs
Stream live logs for a device. Logs include container output and runtime messages emitted by the device.
Usage:
atymctl device logs [DEVICE_ID] [flags]
Flags:
-h, --help help for logs
-w, --websockets Enable websocket protocol for logs
Note: If you do not specify DEVICE_ID, the default device from your configuration is used.
Device Attributes
device attributes lets you manage attributes attached to a device. Attributes are organized into categories. If DEVICE_ID is omitted from any of these commands, the default device ID from config is used.
device attributes patch
Update one or more keys in a device attribute category. Other keys in the category are left untouched.
Usage:
atymctl device attributes patch [DEVICE_ID] CATEGORY [KEY VALUE ...] [flags]
Flags:
-f, --file string Path to a JSON file containing the attribute object
-h, --help help for patch
device attributes replace
Replace the full attribute set for a device category. Keys not provided are removed from the category.
Usage:
atymctl device attributes replace [DEVICE_ID] CATEGORY [KEY VALUE ...] [flags]
Flags:
-f, --file string Path to a JSON file containing the attribute object
-h, --help help for replace
device attributes remove
Remove a single attribute key from a device category.
Usage:
atymctl device attributes remove [DEVICE_ID] CATEGORY KEY [flags]
Flags:
-h, --help help for remove
Device Simulator
device simulate manages a local Atym simulator runtime and a backing simulated device. Use it to develop and test without physical hardware.
device simulate install
Download and extract the Atym simulator runtime into ~/.atym/simulator.
Usage:
atymctl device simulate install [flags]
Flags:
--force Re-download and reinstall the simulator runtime
-h, --help help for install
--platform string Override runtime platform: linux-x86_64 or linux-aarch64
device simulate create
Create a simulated device in the current tenant and save its runtime credentials locally so the simulator can register against the Hub.
Usage:
atymctl device simulate create [flags]
Flags:
--cpu string Override the detected CPU value for the simulated device
--description string Description for the simulated device
-h, --help help for create
--name string Device name for the simulated device
--serial string Serial number for the simulated device
--server-endpoint string Server endpoint to save for runtime configuration
--server-port int Server port to save for runtime configuration
--target string Override the detected target value for the simulated device
--targetAbi string Override the detected target ABI value for the simulated device
device simulate start
Start the local simulator runtime in the current terminal. Use --configure to push the saved device binding into the runtime after startup.
Usage:
atymctl device simulate start [flags]
Flags:
--configure Send the saved device binding into the runtime after startup
--force Re-apply runtime configuration when used with --configure
-h, --help help for start
device simulate status
Show the local simulator install path and the saved device binding.
Usage:
atymctl device simulate status [flags]
Flags:
-h, --help help for status