How to Identify the CPU Architecture of a Generic ARM-Based Device

Product version: 10.9

Last modified: 28 October 2024

Question

How can I identify the CPU architecture of my ARM-based device?

Answer

Determining your system's architecture to manually install/update the product on a generic ARM-based device is crucial to ensure compatibility with the update files.

Here’s how you can check your system architecture on a generic ARM-based device:

1. Using Terminal Commands (Linux-based Systems):

Most ARM-based devices, such as Raspberry Pi or other embedded systems, run a Linux-based OS. You can use terminal commands to determine the architecture.

  1. Open Terminal If you have access to a terminal or command-line interface (CLI).

  2. Proceed with the following commands:

  • Execute the command uname -m to check the architecture with uname:

    • armv7l: Your device is using ARMv7 architecture (32-bit).

    • aarch64: Your device is using ARMv8 architecture (64-bit).

  • Execute the command lscpu and check the Architecture field:

    • armv7l: Your device is using ARMv7 architecture (32-bit).

    • aarch64: Your device is using ARMv8 architecture (64-bit).

  • Execute the command cat /proc/cpuinfo | grep 'model name' to check the CPU Info. This command displays the CPU model, which can give hints about whether it's ARMv7 or ARMv8.

2. Using File System Information

If your access to the Terminal is limited, try checking system files.

  • Execute the command cat /proc/cpuinfo to check the CPU Information file:

  • Look for entries like model name or Features:

    • ARMv7 typically lists vfpv3 or vfpv4 in the features.

    • ARMv8 typically lists fp, asimd, or aarch64.

3. Using Installed Packages

If your system uses a package manager like apt or yum, you can infer the architecture information from the installed packages.

Execute the command dpkg --print-architecture to check the architecture of installed packages:

  • armhf or armel: These correspond to ARMv7 (32-bit).

  • arm64: This corresponds to ARMv8 (64-bit).

4. Checking Documentation:

If the device is generic and not a well-known brand, consult any available documentation or datasheets. These often specify the CPU architecture.

5. Using a System Info App (If Available):

If you can install applications, try using a system information tool that can show CPU details, like lshw or hardinfo.

Once you have identified the architecture of your ARM-based device, you can select the correct files for setting/updating your product.