Skip to main content

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.

info

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​

ParameterDescriptionAccepted Values
cpuThe device cpu typeSee available CPU types
targetThe device architecture typeSee available Target types
targetAbiThe Application Binary Interface for the target platformSee 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

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​

ParameterDescriptionAccepted Values
cpuThe device cpu typeSee available CPU types
targetThe device architecture typeSee available Target types
targetAbiThe Application Binary Interface for the target platformSee 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