Download and Install

1️⃣ Download

📥

Get the latest image for your board

Image Downloads
2️⃣ Flash

💾

Write image to microSD card

Flashing the Image
3️⃣ Boot

🚀

Power on and wait 10-15 min

First Boot

Supported Hardware

Ethereum on ARM provides official support for Rock 5B, Orange Pi 5 Plus, NanoPC T6, and Raspberry Pi 5.

For a detailed list of recommended hardware, technical specifications, and purchase links, please see Recommended Hardware.

Prerequisites

Before you begin, ensure you have the following components:

  • microSD Card: For the operating system image.

  • NVMe SSD: M.2 2280 NVMe SSD with at least 2TB capacity (4TB recommended for future growth). A high-end or mid-range disk is required for blockchain sync performance.

    Note

    For Raspberry Pi 5, you’ll need an NVMe HAT. See the RPi5 Storage Guide for recommended hardware.

  • Ethernet Cable: For a stable network connection.

  • Power Supply: Official or high-quality power supply recommended for your specific board.

Warning

Avoid NVMe disks with a Phison controller due to known Linux kernel compatibility issues. Check the SSD Compatibility List before purchasing.

Image Downloads

Download the image for your board. Each card includes the download link and SHA256 checksum for verification.

🖥️ NanoPC T6

16GB RAM Compact

Download: ethonarm_nanopct6_25.11.00.img.zip SHA256: f60ca9cdef2bd0815761f61b497f655dd5486c53da67e6e2487d33264a173664

🖥️ Rock 5B

16GB RAM Excellent Performance

Download: ethonarm_rock5b_25.11.00.img.zip SHA256: a61a0cd5bd41bfcb1528e527878c15c158aedad6f745eeeb02975d300b3d2b42

🖥️ Orange Pi 5 Plus

16GB 32GB for Supernode

Download: ethonarm_orangepi5-plus_25.11.00.img.zip SHA256: 1c28775acbe529e7cc31d1a819e76477820fea04c7e30a53a95488bf195ff8e0

🖥️ Raspberry Pi 5

16GB RAM Widely Available

Download: ethonarm_rpi5_25.11.00.img.zip SHA256: 4cc62f68376bec1dca1cee6ec5b1cb284202de084f046559ac5cb32eb2c647c8

To verify the checksum in your terminal:

sha256sum <image_file_name.zip>

Installation Guide

Flashing the Image

Using Balena Etcher (Windows/Mac/Linux)

  1. Insert the microSD card into your computer

  2. Download Balena Etcher

  3. Open Balena Etcher and select:

    • Your downloaded image file

    • Your microSD card

    • Click “Flash!”

Tip

Balena Etcher automatically verifies the flash, so you don’t need to manually check.

For Linux/Mac Users

  1. Insert the microSD card into your computer

  2. Identify your microSD device (e.g., /dev/mmcblk0 or /dev/sdX):

    # Linux
    sudo fdisk -l
    # Mac
    diskutil list
    
  3. Unzip and flash (example for NanoPC T6):

    unzip ethonarm_nanopct6_|release|.img.zip
    sudo dd bs=1M if=ethonarm_nanopct6_|release|.img of=/dev/mmcblk0 conv=fdatasync status=progress
    

Warning

The dd command is destructive. Double-check your device name to avoid data loss.

First Boot

  1. Insert the microSD card into your board.

  2. Ensure the NVMe SSD and Ethernet cable are connected.

  3. Power on the board.

The system will boot up quickly, but the initial setup script will run in the background to configure the node. This process is fully automated and involves:

  1. Internet Check: Verifies connectivity (mandatory).

  2. Disk Preparation: Automatically formats the NVMe drive to ext4 (unless a previous installation is detected).

  3. System Configuration:

    • Creates the ethereum user.

    • Generates a unique hostname (e.g., ethereumonarm-rpi5-a1b2c3d4).

    • Optimizes kernel parameters (sysctl) for Ethereum performance.

    • Configures swap space (2x RAM, max 64GB).

  4. Software Installation: Installs Execution and Consensus clients, monitoring tools, and utilities.

  5. Security Hardening: Locks the root account and removes default users.

Warning

Data Loss Warning: The installation script will format the NVMe drive if it detects a filesystem other than ext4 or if explicitly requested via a flag file.

If the drive is already formatted as ext4, the script will preserve existing data and simply mount it. However, we always recommend backing up important data before the first boot.

Note

Please wait approximately 10-15 minutes for the installation script to complete. The board will reboot automatically once finished. Do not interrupt the power supply.

Logging In

Once the installation is complete, log in via SSH or a locally connected monitor/keyboard.

  • User: ethereum

  • Default Password: ethereum

Warning

Security Risk: You MUST change the default password immediately upon first login. The system will prompt you to do so.

Warning

Firewall Disabled: The system firewall (UFW) is disabled by default to prevent startup issues. If your node has a public IP, please refer to Node Security to enable and configure UFW immediately.

Connecting via SSH:

ssh ethereum@<your_board_IP>

Finding your IP Address:

  • Router Admin Page: Check your router’s client list for a device named ethereum or similar.

  • Network Scan: Use tools like nmap or fping.

    # Using nmap
    sudo nmap -sP 192.168.1.0/24
    

System Maintenance

Update Ethereum Packages

The system includes a convenient alias to update the Ethereum clients and tools. Run:

update-ethereum

This command fetches the latest packages from the Ethereum on ARM repository and installs all supported clients and tools.

Warning

This command will install all available packages defined in the ETHEREUM_PACKAGES list (Geth, Nethermind, Lighthouse, Teku, etc.), even if you only use specific ones. If you prefer to update only your installed packages, use standard APT commands:

sudo apt update && sudo apt upgrade

Image Upgrade

To upgrade an existing Ethereum on ARM node to the new version without losing your chain data:

Note

How it works: This process uses a script to backup your client configurations (/etc/ethereum) to a safe location on the NVMe drive (/home/ethereum/.etc/ethereum). When the new image boots, it detects this backup and restores your settings automatically.

  1. Back up your config (Optional but highly recommended).

  2. Install the sync tool on your current node:

    sudo apt-get update && sudo apt-get install ethereumonarm-config-sync
    
  3. Run the sync script:

    ethereumonarm-config-sync.sh
    
  4. Flash the new image to your microSD card (as described in “Flashing the Image”).

  5. Power on. The installer will detect the previous configuration backups and restore your /etc/ethereum client settings.

Re-installation (Wipe)

To perform a clean install that wipes all data on the NVMe disk:

  1. On your current node, run:

    touch /home/ethereum/.format_me
    

    Note

    Mechanism: The startup script checks for this specific file on the NVMe drive during boot. If found, it forces the script to bypass the “preservation check” and triggers a full reformat of the partition, effectively wiping all data.

  2. Reboot or power cycle. The startup script will detect this file and reformat the drive during the next boot process.

Troubleshooting

  • LEDs not blinking? Check your power supply voltage and cable connection.

  • No Network? Ensure the Ethernet cable is plugged in before powering on.

  • Boot Loops? Verify your power supply delivers sufficient amperage (PD 30W+ recommended for Rock 5B/NanoPC T6).