Skip to content

[Bug]: Odroid HC4 some SATA HDD detection/ initialisation Issue on Newer Armbian Images #9532

@EthanSousaProjects

Description

@EthanSousaProjects

What happened?

When using new Minimal images of Armbian (Debian Trixie and Ubuntu Noble) with the Odroid HC4 found on the Odroid HC4 main page. seemingly, some SATA drives do not initialise/ detect correctly.

How to reproduce?

When flashing the images to an SD card and powering up the HC4, booting fails when I have my Seagate enterprise ST8000NM0045 HDDs connected. This however does not happen with my Western Digital WD20ERFRX HDDs or with no HHDs connected. The main thing I notice different about them is that the Seagates are native 4k sector sizes while the WDs are 512 sector sizes.

A screen connected to the board via HDMI shows the following on startup with the Seagates attached.

Board variant: hc4
Net: dwmac_meson8b ethernet@ff3f0000: Can't get reset: -2
eth0: ethernet@ff3f0000


PCIE-0: Link up (Gen2-x1, Bus0)
starting USB...
Starting the controller
USB XHCI 1.10
Bus usb@ff500000: 1 USB Device(s) found
        sanning usb for storage devices... 0 Storage Device(s) found
Hit and key to stop autoboot: 02
MMC Device 2 not found
no mmc device at slot 2
MMC Device 1 not found
no mmc device at slot 1


Device 0: unknown device
scanning bus for devices...
Target spinup took 0ms.
Target spinup took 0ms.
AHCI 0001.0200 32 slots 2 ports 6 gbps 0x3 impl SATA mode
flags: 64bit ncq stag led clo pmp pio slum part ccc sxs
Can not start port 0
timeout exit!
timeout exit!
timeout exit!
timeout exit!
*** Read outside partition 2
    Device 0: (0:0) Vendor: ATA Prod.:   Rev:
            Type: Hard Disk
            Capacity: 0.0 MB = 0.0 GB (1 x 512)
timeout exit!
timeout exit!
timeout exit!
timeout exit!
timeout exit!
 ** fs_devread read error - block
timeout exit!
 ** fs_devread read error - block
    Device 1: (1:0) vendor: ATA Prod.: ST8000NM0045-1RL Rev:UG07
            Type: Hard Disk
            Capacity: 953860.6 MB = 931.5 GB (1953506647 x 512)

Device 0: (0:0) vendor: ATA Prod.: ST8000NM0045-1RL Rev:UG07
            Type: Hard Disk
            Capacity: 953860.6 MB = 931.5 GB (1953506647 x 512)
... is now current device
timeout exit!

The timeout exit! continues and the board will sometimes boot eventually. Normally it does not.

Things I have Tried

I have tried to few things to try and solve the issue. I used Debian 13 Trixie for my testing unless otherwise stated.

  1. Using the Ubuntu 24.04 (Noble) minimal image on the Odroid HC4 - Armbian page. - Same issue as before.

  2. Booting up the board with no HDDs connected and then hot swapping them in. - Sometimes they would come online and be detected correctly but, not always.

  3. Download and flash different Images from the Armbian Odroid HC4 Archive.

  • Tried flashing Armbian_25.11.1_Odroidhc4_trixie_current_6.12.58_minimal.img.xz to the SD card. - Failed to work just like the newest images.
  • Tried flashing Armbian_25.5.1_Odroidhc4_trixie_current_6.12.32_minimal.img.xz to the SD card - Drives are detected and boot as expected. No errors that I can find.
  1. Trying different kernels with the newest armbian builds. Did this by getting board booted without HDDs then using armbian-config to change kernels. Then shutting down after successful reboot and installing HDDs before starting up again. - Tried 6.12 based mainline kernels (6.12.32 and .58). Could not get any to work.

  2. Building Armbian images with Armbian build normally running the command /compile.sh build BOARD=odroidhc4 BRANCH=current BUILD_DESKTOP=no BUILD_MINIMAL=no KERNEL_CONFIGURE=no RELEASE=trixie

Hope that helps figure out what it could possibly be. I am out of ideas. I am willing to test builds using Armbian build. I can switch to different branches if not in main. or add in new files to test it out.

Branch

main (main development branch)

On which host OS are you running the build script and observing this problem?

Debian 13 Trixie

Are you building on Windows WSL2?

  • Yes, my Ubuntu/Debian/OtherOS is running on WSL2

Relevant log URL

No response

Code of Conduct

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugSomething isn't working as it shouldGood first issueFeel free to contribute :)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions