LinuxCommandLibrary

idevicediagnostics

Retrieve diagnostics from connected iOS devices

TLDR

Print diagnostics information

$ idevicediagnostics diagnostics
copy

Print mobilegestalt key values
$ idevicediagnostics mobilegestalt [key1] [key2]
copy

Shutdown, restart or sleep the device
$ idevicediagnostics [shutdown|restart|sleep]
copy

SYNOPSIS

idevicediagnostics command [options]

PARAMETERS

help
    Shows the help page.

sleep
    Puts the device to sleep.

restart
    Restarts the device.

shutdown
    Shuts down the device.

battery
    Requests battery diagnostics (usage, current capacity, etc.).

properties
    Dumps the system properties of the device to stdout.

read_rotation
    Reads current device rotation information.

get_wifi_info
    Retrieves Wi-Fi information of the device

validate
    Validate the device

ioreg_entry
    Dumps an I/O Registry entry

baseband_cert_id
    Retrieves baseband certificate ID

DESCRIPTION

idevicediagnostics is a command-line tool within the libimobiledevice suite,
designed for performing diagnostics and retrieving information from connected iOS devices.
It allows users to query device properties, initiate diagnostic sessions (like battery analysis),
and interact with the device's diagnostic interface. This is particularly useful for developers,
system administrators, and repair technicians for troubleshooting and device analysis.
The tool leverages the communication protocols established by Apple,
facilitating direct interaction without relying on iTunes or other proprietary software.
It is essential to note that some features might require a device that is not locked or has the developer disk image mounted properly.
The command provides functionalities such as reading specific properties, such as serial numbers and activation status,
which are useful for device management and inventory. Furthermore, it allows to initiate diagnostic tests,
which are useful for troubleshooting and reporting issues.

CAVEATS

Some features, like sleep or restart, might require root privileges or a developer disk image mounted on the device.

EXIT CODES

The command exits with 0 on success and a non-zero value on failure. Common reasons for failure include device not found, insufficient privileges, or device in an unsupported state.

HISTORY

idevicediagnostics is part of the libimobiledevice project, which aims to provide a cross-platform software library
to communicate with iOS devices natively. It has been developed over several years by a community of contributors
to reverse engineer the protocols used by Apple devices. The tool's usage has grown with the increasing need
for independent iOS device management and troubleshooting tools, especially in environments where relying on iTunes is not feasible or desired.

SEE ALSO

Copied to clipboard