How to Install Ethernet Driver on H2 Plus

  • This guide is written for Odroid-H2 Plus. Don't read if you're using Odroid-H2.
  • We have confirmed this on Ubuntu 20.04 LTS. It is not needed on Windows 10.

As the new revision board of Odroid-H2, called Odroid-H2 Plus, has been published with upgraded 2.5 Gb Ethernet chipset, we can get up to 2.5 times faster network speed than the previous one.

But to use this Ethernet chipset, we have to install the dedicated driver on ourselves if you're using the Linux system.

There's an r8169 driver for the RTL8125 series in Linux kernel 5.4 and above, but it cannot recognize the latest RTL8125B chipset yet. So we have to install that manually for now.

ODROID-H2p:~$ dmesg | grep r8169
[    1.230850] r8169 0000:02:00.0: unknown chip XID 641
[    1.231025] r8169 0000:03:00.0: unknown chip XID 641

We need to report this issue to Realtek network driver maintainers for the future update.

  • We recommend using Smartphone USB Tethering way due to the convenience of setting up the internet. With the USB tethering, H2 Plus recognizes that as a wired internet connection so that you won't configure anything for the internet.

Smartphone USB tethering

If you have a smartphone, you can share your smartphone's internet connection with your H2 Plus.

To do that, just connect between your smartphone and H2 Plus. Then enable USB Tethering option on your phone.

You don't have to worry about the mobile data usage fee because you can connect to Wifi internet and can share that Wifi internet connection.

USB Wifi module

Since we can't use the internet with the new Ubuntu installed H2 Plus, you should use a USB Wifi module on it.

If we look at Hardkernel products, these 2 products can be used without installing any additional drivers.

USB Ethernet adapter

Or you can use an Ethernet adapter connected using USB ports.

Most of them support Linux but you should check the compatibility before purchasing one.

  • You still need to build the driver if you install the new kernel via apt package manager.
    • To avoid that bothering thing, you can install the r8125 driver as a DKMS module. Please refer to the document mentioned at the top of this page.

The new H2 Plus has RTL8125B chipset as an Ethernet module. To enable this chipset on your Linux system, you have to download the r8125 driver from Realtek websites.

Please visit this Realtek download page.

Then you can see the Linux driver as the below screenshot showed.

Check the red box on the screenshot, the driver that we can use is 2.5 Ethernet LINUX driver r8125 for kernel up to.

Download that file and extract that, then you can see these files.

tree r8125-9.003.05
r8125-9.003.05
├── Makefile
├── README
├── autorun.sh
└── src
    ├── Makefile
    ├── Makefile_linux24x
    ├── r8125.h
    ├── r8125_dash.h
    ├── r8125_n.c
    ├── r8125_realwow.h
    ├── rtl_eeprom.c
    ├── rtl_eeprom.h
    ├── rtltool.c
    └── rtltool.h

1 directory, 13 files

Before installing the new module, you have to install build tools.

sudo apt install build-essential

Fortunately, only one thing we're going to use is autorun.sh file. Open a terminal and move to the extracted directory, then enter the following command.

sudo ./autorun.sh

Then all of the module installation processes are performed automatically.

After finishing the installation process, you can promptly use the internet with the onboard Ethernet ports.

The screenshot above is the network setting appearance if all 2 ports are connected as 2.5 Gbits modes.

You can get the approximate speed as in the below table. Performed with iperf3 tool.

2.5 Gbits

  • Test environment
    • Ubuntu 20.04 LTS, kernel 5.4.0-37, Realtek r8125 driver 9.003.05
H2+ (2.5 GbE) → H2+ (2.5 GbE)
Send 2.35 Gbits/s
Receive 2.35 Gbits/s

1 Gbits

  • Test environment
    • H2 Plus: Windows 10 2004 19041.329, Realtek r8125 driver 10.39.212.2020
    • H2: Ubuntu 20.04 LTS, kernel 5.4.0-37, Realtek r8168 8.048.03
H2+ (2.5 GbE) → H2 (1 GbE)
Send 949 Mbits/s
Receive 945 Mbits/s
  • In the case of 1 GbE connection on a Linux system, we will probably get slightly poor performance in the “receiving” direction. It reports about 840 Mbits/s. As there's no issue on the Windows system, it seems kind of Linux driver issue.