Jump to content

Building Odroid HC4 image from scratch


Recommended Posts

This isn't a question but more of a tutorial.

 

I wanted to install Debian Bookworm with latest kernel to my odroid. I'm documenting my steps and experience here in case you stumble across it and find it useful.

At the time of writing, the link on the Odroid HC4 site to download Bookworm is broken. No worries, I thought, I'll just build it myself, doesn't seem too hard.

 

My host system is Windows 10 where I'm building in a WSL 2 Ubuntu. It has GCC 9.3.0 installed.

 

Follow the usual instructions here. My compilation command is: 

./compile.sh KERNEL_CONFIGURE= BUILD_MINIMAL=no BUILD_DESKTOP=no EXTERNAL_NEW=prebuilt BOARD=odroidhc4 BRANCH=edge RELEASE=bookworm SYNC_CLOCK=no EXTRAWIFI=no KERNEL_CONFIGURE=yes BUILD_KSRC=no

I ran into several problems, and fixed them as follows:

  1. Certificates outdated. I hadn't used the WSL2 in a while so the certs for github had expired. I found these commands on stackoverflow:
    sudo apt-get install ca-certificates
    sudo mkdir /usr/local/share/ca-certificates/cacert.org
    sudo wget -P /usr/local/share/ca-certificates/cacert.org http://www.cacert.org/certs/root.crt http://www.cacert.org/certs/class3.crt
    sudo update-ca-certificates
  2. Some error while applying the patch for rtw88 - something to do with Realtek WIFI drivers. Not exactly sure why, and I won't be using one of those anyway, so I just made the patch zero size (deleting it causes it to get redownloaded I think). The compile script will complain about an invalid patch but you can ignore it.
    truncate -s 0 patch/misc/rtw88/6.4/001-rtw88-linux-next.patch
  3. Another Realtek wifi driver issue - this time something in the rtl88x2bu driver that wouldn't compile due to a missing define. Again truncate the patch, or just edit the kernel config to not build Realtek drivers.
    patch/misc/wireless-rtl88x2bu-wireless-ignore-stale-kickoff-removal.patch

 

Now we can follow along with the normal setup guide. I'm just using HDMI monitor and USB keyboard for now.

It boots up and we can do the initial setup just fine.

 

Regarding fancontrol: The main HC4 page says to set it up manually. However, it seems to be automatically working for me since the fan is off at idle. The /etc/fancontrol also seems to contain some content already. For me, it was prefilled with: 

root@odroidhc4:~# cat /etc/fancontrol
# Default config for the droid HC4 -- adjust to your needs (MINTEMP=40)
INTERVAL=10
DEVPATH=hwmon0=devices/virtual/thermal/thermal_zone0 hwmon2=devices/platform/pwm-fan
DEVNAME=hwmon0=cpu_thermal hwmon2=pwmfan
FCTEMPS=hwmon2/pwm1=hwmon0/temp1_input
FCFANS= hwmon2/pwm1=hwmon2/fan1_input
MINTEMP=hwmon2/pwm1=40
MAXTEMP=hwmon2/pwm1=60
MINSTART=hwmon2/pwm1=150
MINSTOP=hwmon2/pwm1=30
MAXPWM=hwmon2/pwm1=180

I guess this is fine for now.

 

Let me know if this helps you or if you have a related question!

Link to comment
Share on other sites

Thank you for the information. I successfully managed to build "Armbian-unofficial_24.2.0-trunk_Odroidhc4_bookworm_current_6.6.13.img" on my Macbook pro M1. Testing it now.

 

My build command:

 

./compile.sh KERNEL_CONFIGURE=no BUILD_MINIMAL=no BUILD_DESKTOP=no EXTERNAL_NEW=prebuilt BOARD=odroidhc4 BRANCH=current RELEASE=bookworm SYNC_CLOCK=no EXTRAWIFI=no KERNEL_CONFIGURE=yes BUILD_KSRC=no INSTALL_HEADERS=yes

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines