Notes on Beelink U59 Pro (Intel N5105) as a Home Server

For a home server hosting mostly Docker containers I’ve always wanted a computer with proper and multiple disk drives for data redundancy instead of SD cards used by most single-board computers. With the shortage of Raspberry Pi supply over the past years there has been an increased availability of mini PCs with all kinds of power-efficient Intel processors and extensive IO and storage options. Blogs such as CNX Software, Linux Gizmos and Liliputing are amazing for research and deals which is how I discovered Beelink and their mini PCs.

Beelink U59 Pro power consumption
Beelink U59 Pro drawing 10W from Bluetti EB3A during idle with Ubuntu 22.04.2 and a few Docker containers. Note that the actual power consumption is around 5W while the other 5W are lost in conversion from DC to AC to DC.

In late 2022 I purchased Beelink U59 Pro with an Intel N5105 processor, 16GB RAM, 500GB M.2 drive and two network ports for around EUR 230 (including shipping). Here is a great review of the device.

Hardware and Upgrades

Overall, the build quality is great with nice and quiet cooling design and convenient placement for the extra SSD drive. It uses a 12V power supply so it can be easily attached to a battery-powered UPS.

For data redundancy I added a WD Blue SA510 2.5” SATA III drive (1000GB) and used LVM to distribute the filesystem logical volume across the two physical volumes as RAID1.

Below are my notes on getting the device up and running.

Power Supply and Consumption

It is powered by a 12V 3A power supply with a 5.5×2.5mm DC jack. Note the diameter of the inner pin which is larger than the typical 2.1mm and won’t fit most of the low-power 12V power supplies or the POE adapters/splitters.

Beelink U59 power consumption before and after applying powertop optimizations
Beelink U59 power consumption before and after applying powertop optimizations.

The power consumption ranges from 17W during the boot process to 5W when idling with ethernet connected and WiFi enabled but disconnected, using the default Ubuntu Server 22 LTS. It gets down to 3W after running powertop --auto-tune which applies the following optimizations:

BIOS Version and Errors

The device comes with Windows 11 installed and activated. However, I wanted to install the Ubuntu server and that would never get pass one of the installation stages due to some memory errors. The device came with BIOS version JTKT001 X64 (build 05/05/2022 15:03:35) and produced the following errors during the boot (shown here with Debian install for testing):

I reached out to Beelink support and after providing the serial number for the hardware revision identification they sent a new version of the firmware JTKT001_20230217_U59_sata.bin along with the tooling to update it from a flash boot. This new version seems to have resolved the issue and I’ve been able to install Ubuntu Server 22.04.2 LTS without any problems.

It is unfortunate that this is not provided on their website and everyone needs to contact their support directly (apparently due to the potential of bricking the device with the wrong firmware).

Enable Wake-Up after Power Loss

This device can automatically restart after a power loss but that isn’t enabled by default. The option for “State After G3” is hidden under the “Chipset” tab and the “PCH-IO Configuration” section in the BIOS settings and needs to be set to “S0 State” (one of the ACPI Sleep States).

This is an important feature for a homelab server!

Beelink U59 Pro BIOS settings for power failure restart
Set to S0 state in BIOS to boot Beelink U59 Pro after power loss
Set to S0 state (Working) in BIOS to boot the Beelink U59 Pro after a power loss.

Usage

This server is running in parallel to a dedicated QNAP TS-435XeU NAS and hosts critical Docker containers for home automation to reduce the impact of NAS firmware upgrades and restarts while still backing up volume data to the NAS.

Leave a Reply