Disclosure: Some links on this page are monetized by the Skimlinks, Amazon, Rakuten Advertising, and eBay, affiliate programs, and Liliputing may earn a commission if you make a purchase after clicking on those links. All prices are subject to change, and this article only reflects the prices available at time of publication.

There are mini PCs and then there are really miniature computers. The iKOOLCORE line of mini PCs fall into the second category, with extraordinarily small bodies. But they still tend to pack a lot of features into that small space.

The new iKOOLCORE R2 is just 75 x 75 x 52 mm (2.96 x 2.96 x 2.05 inches), but despite its diminutive size, it is equipped with four 2.5 GbE Ethernet ports and support for up to an Intel Core i3-N300 processor, 16 GB of LPDDR5 memory, and 2 TB of solid state storage. It’s available from the iKOOLCORE website for $239 and up, but customers who order during December, 2023 can save $30 by using the the coupon XMAS.

The iKOOLCORE R2 mini PC featured in this article was sent to Liliputing for free, with no requirement that the computer be returned upon completion of the review. This review is not sponsored by iKOOLCORE, and the company did not modify or approve the content of this article in any way.

Design & Specs

The iKOOLCORE R2 comes in a small, square metal case with a detachable metal top, whereas the earlier R1 model had a plastic top. It’s an actively cooled mini PC with a fan inside the case to help dissipate heat generated by the processor and other components, and iKOOLCORE offers two processor options, a 15 W Intel Processor N95 mobile processor or a 7 W Intel Core i3-N300 mobile processor.

While the Intel Processor N95 has a higher TDP, it has fewer cores as it is an 4-core, 4-thread processor. The unit featured in this review is a higher-spec configuration with the Intel Core i3-N300 processor, which is an 8-core, 8-thread processor with support for boost frequencies up to 3.80 GHz. The processor also includes an integrated GPU from the UHD Graphics family which has 32 execution units and a maximum dynamic frequency of 1.25 GHz.

Looking at the device front-on, there is a pin-hole reset button, two USB Type-A 3.2 ports, the left of which is a USB Type-A 3.2 Gen 2×1 (10 Gbit/s) port and the right is a USB Type-A 3.2 Gen 1×1 (5 Gbit/s) port, a pin-hole power indicator and a power button.

From experience I suggest memorising where the power button is, as a couple of times I accidentally turned the device off whilst inserting cables simply by holding the device and not realising a finger was resting on the button.

There’s what appears to be a product label on the right-side.

However it is more than just a label. It is actually a piece of plastic, which iKOOLCORE uses to affix the WiFi aerials, since the rest of the case is made of metal, which would interfere with the wireless signal.

On the left-side of the computer, there is a USB Type-C 3.2 Gen 2×1 port capable of data (10 Gbit/s) and video (DisplayPort Alt Mode) and a USB Type-C port that’s supposed to be an audio-only port (but which might not even work for that, as I’ll explain below).

The rest of the ports are on the rear. These include, from left to right, top to bottom:

  • 3 x 2.5 Gb Ethernet ports (upper)
  • 1 x USB Type-C power port (lower)
  • 1 x HDMI 2.1 port (lower)
  • 1 x 2.5 Gb Ethernet port (lower)

Interestingly the Ethernet controllers are not all the same. Three of them are PCIe connected Intel i226-V controllers and one is a USB connected Realtek 8156BG controller.

Having this mix of controllers should alleviate issues that have previously occurred in the past, where operating system releases have not always supported every controller natively and required patches for them to work.

It is also not obvious by looking at the ports which is the Realtek one as none are annotated. Fortunately the iKOOLCORE R2 wiki includes this information: upper: eth1 | eth2 | eth3 (RTL8156BG), lower: eth0.

Whilst the USB Type-C power port supports Power Delivery, unfortunately it does not support video or data. Conversely, the left side USB Type-C ports do not support Power Delivery. This means that typically at least two cables are required to be connected to the R2: one for power and one for video out.

The top can be removed simply by prising it off which then provides access to the replaceable internal components on the motherboard.

First there is an M.2 2242 PCIe Gen 3 x2 NVMe SATA SSD slot which was occupied by a Samsung MZALQ512HBLU-00BL2 512 GB drive in the review model. It may or may not be covered by a reasonably thick heat pad, depending on whether the heat pad has stuck to the lid of the device once taken off.

Below the storage drive is a M.2 2230 slot for an optional Wi-Fi card which was populated with a MediaTek Wi-Fi 6E MT7922 (RZ616) card in the review model.

Memory for this mini PC is soldered-on and is available in either 8 GB or 16 GB of LPDDR5 running at 4800 MHz with the review model having 16 GB.

Finally on three sides of the mini PC there are twin cutouts that give the device a stylistic design as they expose the vents of the copper heat sink which also has an integral cooling fan.

Small as the mini PC might be, it actually is surprisingly heavy, weighing 420 g (0.93 lb) which gives the mini PC a nice sturdy feel to it.

How it performs

The R2 does not come preloaded with any OS software. The rationale is that given the device’s multiple Ethernet ports, different customers are likely to have different uses and therefore require different operating systems. The mini PC is marketed as being compatible with Windows, Linux, pfSense, OPNsense, OpenWrt, Proxmox VE, VMware ESXi, Unraid and more, so I’ve looked at a few of these and I’ll start with Windows.

After powering on the mini PC you can use the F2 key to get directly into the UEFI (BIOS) or use the F12 key to enter “Boot Menu” and then select the appropriate option. I first installed Windows 11 Pro from a Microsoft ISO but despite updating, there were quite a few drivers still required. Again the R2 wiki has everything you’ll need for the base system. If you purchased a Wi-Fi card you will probably have to contact iKOOLCORE for the relevant driver like I did for the MT7922 one. I then shrank the Windows partition to create a new equally-sized partition into which I installed Ubuntu 22.04.3.

I first tested the ports, and they all worked as expected, with the exception of the side USB Type-C audio port. This port has a quirk about how you insert a cable into it.

USB-C is a symmetrical connection meaning that a cable can be connected in either orientation: up or down. However, because of a lack of space on the PCB to route the traces, this USB-C port requires the cable to be connected one-way only which means theoretically you will be wrong 50% of the time. Unfortunately I could not hear anything 100% of the time.

When the cable is inserted the right way so that “Headphones” shows up under sound controls, selecting this output has no effect. On Ubuntu I even installed “pavucontrol” and I could see sound being played as it registered on the volume control. I also used various PulseAudio commands which seemed to show everything was configured correctly despite the lack of audio. If there is an absolute need for audio via a USB-C port I suggest using the other USB-C port as headphones then work fine without issue.

I next tested Bluetooth which worked on either OS.

Moving on to Wi-Fi, I found that I could not connect to the 2.4 GHz network. I could see the network and was able to attempt to connect. After a while Wi-Fi stops trying to connect with Windows even giving me a helpful message: “Can’t connect to this network”. Fortunately the 5.0 GHz network worked very well, and I was able to get speeds of 877 Mb/s upload and 649 Mb/s download.

For the Ethernet ports, I just did basic testing at this point to confirm they worked as expected. Testing each individually, they all showed upload and download speeds of 2.35 Gb/s.

I started performance testing by using Crystal Dew World’s CrystalDiskMark to measure performance on Windows and a script using the “fio” or “flexible I/O tester command” to verify it on Ubuntu.

The NVMe drive’s performance was limited by running with only two PCIe lanes rather than the drive’s maximum of four. However it was able to get around the top speeds given this limitation with read speeds around 1800 MB/s and write speeds around 1600 MB/s. The following table shows the actual storage speeds achieved during testing on Windows.

Windows Storage
M.2 2280 NVMeUSB 3.2 (Left)USB 3.2 (Right)USB-C
Seq1M Q8T1 Read1783.551061.41460.291094.48
Seq1M Q8T1 Write1590,001038.39460.061052.99
Seq1M Q1T1 Read1592.46
Seq1M Q1T1 Write1449.16
RND4K Q32T1 Read263.57
RND4K Q32T1 Write169.12
RND4K Q1T1 Read43.60
RND4K Q1T1 Write91.55

The following benchmarks were all run with the power mode set to “High performance” on Windows, and the CPU Scaling Governor set to “performance” on Ubuntu.

On Windows I ran:

  • PassMark Software’s PerformanceTest (general performance)
  • UL’s 3DMark (CPU and graphics) and Procyon (office productivity)
  • Maxon’s Cinebench (CPU)
  • Primate Labs’s Geekbench (CPU and graphics)
  • Unigine’s Heaven (graphics)
(PL1=10 & PL2=25)
PerformanceTest 11.0
PassMark Rating2103.3
CPU Mark10127.3
2D Graphics Mark324.5
3D Graphics Mark1251.6
Memory Mark2348.8
Disk Mark13749.1
Night Raid Score7758
Graphics score8034
CPU score6498
Fire Strike Score1751
Graphics score1860
Physics score10399
Combined score652
Office Productivity score3301
Word score2978
Excel score3678
PowerPoint score3576
Outlook score2789
CPU (Multi Core)5094
CPU (Single Core)682
CPU (Multi Core)305
CPU (Single Core)46
Geekbench 6.2.1
Single-Core Score941
Multi-Core Score4606
OpenCL Score5453
Unigine Heaven 4.0

On Ubuntu I only ran the following benchmarks:

  • PassMark Software’s PerformanceTest (CPU and memory)
  • Primate Labs’s Geekbench (CPU)
  • Unigine’s Heaven (graphics)
  • Thomas Kaiser’s “sbc-bench” (server performance)
(PL1=10 & PL2=25)
PerformanceTest 11.0
CPU Mark10442
Memory Mark2909
Geekbench 6.2.1
Single-Core Score1364
Multi-Core Score5052
Unigine Heaven 4.0

The “sbc-bench” results can be viewed online at http://ix.io/4M71.

Whilst the Ubuntu results for the relevant benchmarks are similar to those on Windows, it must be noted that by default, Windows render uses Direct3D 11 graphics (Direct3D11) in the Heaven benchmark whereas Ubuntu uses Open Graphics Library (OpenGL) so a direct comparison cannot be made.

The benchmarks show that the iKOOLCORE R2’s Core i3-N300 CPU is around double the performance of the R1’s Pentium Silver N6005 CPU, which I tested earlier this year. The iGPU is also more powerful, at around 30% better.

As a quick real-world test of the graphics, I played various YouTube videos using the Edge web browser on Windows, and there were no significant issues encountered when playing videos up to 4K 60FPS although at this resolution the occasional frame was dropped. In contrast, Chrome had no issues.

In terms of temperature, the R2 handles heat very efficiently. It uses a twin approach: the metal case acts as a heat sink in a manner similar to a passive computer, and a small fan keeps the internal copper heat sink from becoming too excessively hot. As a result the outside of the mini PC does get physically hot though.

At idle the fan was off or virtually inaudible and the temperature of the top of the mini PC was stable at around 38°C in an ambient room temperature of 25.9°C. Running a stress test on Ubuntu saw the top of the device climb to 49.1°C and then afterwards drop down to 42.1°C once the test had completed.

Importantly, the fan, whilst it registered 33.7 dBA as measured by my sound meter next to the device during the test, only sounds like a low hum and very acceptable. Even after running the high-load configuration as described below, the fan was still only around 34.4 dBA. The top now reached around 51.6°C which is rather hot to touch, but it is still similar to a passive PC under load. I recommend not touching the mini PC when it is running, but if you need to, you may want to quickly tap it to check whether you can tolerate the temperature before actually handling it.

During the Ubuntu stress test the CPU temperature climbs gradually until peaking at 92°C and then averages around 91°C . The CPU frequency remains at 2600 MHz for the duration of the test which is 2600 MHz.

In Windows, running Cinebench R23 sees a maximum CPU temperature of 96°C which triggers thermal throttling where the CPU frequency drops from its average of 2600 MHz to briefly just below 2400 MHz.

Besides running as a mini PC, the iKOOLCORE R2 is also capable of being used as a gateway, router or firewall given its four Ethernet ports. So I installed Proxmox VE 8.03 using the ISO available at the time (Proxmox VE 8.02) and then upgrading.

I next created a pfSense VM from an installation ISO and allocated the Realtek Ethernet port as the WAN and bridged the remaining Intel Ethernet ports as the LAN together with configuring a basic firewall. To observe the performance of the Ethernet ports, I also created a Batocera VM so that I could create both load and network traffic to see if it affected the port speeds.

On the LAN I had created, I added three PCs. With the first two PCs just idling, I used the third PC run “iperf3” tests to/from another server on the WAN so that I could measure the base network speed without any workload. As expected both upload and download averaged 2.35 Gb/s which was exactly the same as when running just Windows or Ubuntu.

I then used the first PC to access Proxmox on the R2 over the web-based administration interface and then connect to the Batocera VM using the VNC console. I next installed a Wii FPS game. I then left it running the “demanding” Wii emulated game in full-screen so that it generated LAN traffic. On the second PC I left it playing a 4K60FPS YouTube video on loop so it would generate both LAN and WAN traffic and put load on the firewall. I also accessed Proxmox on the R2 over the web-based administration interface to monitor the performance of both the R2 and the two VMs. With everything running I used the third PC to run “iperf3” tests to/from another server on the WAN so that I could measure the network speed given the workload running on the R2.

Under these loads, the average frame rate seen in the game was around 11 FPS. During the “iperf3” test, the average frame rate dropped by half to 5 FPS for the duration of the test. Running “iperf3” showed the upload speed averaging 2.28 Gb/s with download as 2.18 Gb/s. I tried pausing the YouTube video on the second PC but there was no effect on the “iperf3” speeds when retested. Looking at the overall CPU Usage on Proxmox for the R2 shows the CPU spiking up to 70% each time “iperf3” was run.

Network spikes were also seen for the traffic generated by the “iperf3” runs.

Looking at the pfSense VM shows that the spikes correlate when the firewall was under load.

Whereas in contrast, the Batocera VM was just busy emulating the game. You can also see the break where I stopped the game and restarted around 10 minutes later. This “gap” in Batocera CPU and Network activity is also easily visible on the R2 graphs whereas the pfSense graphs show the five “iperf3” test runs more clearly.

In contrast, repeating the above scenario but changing the game to playing “DOOM” resulted in “iperf3” speeds at the base network speed. The average frame rate in the game was 60 FPS which is the expected (as it is capped) frame rate.

Finally, just for interest, I installed Batocera directly to the R2 and played the same Wii emulated “demanding” FPS game. When running the game natively, the average frame rate was 30 FPS, which was as expected because this was the capped frame rate for the game. The “DOOM” average frame rate remained unchanged at 60 FPS also due to it being capped at this frame rate.

Power Usage

Power consumption was measured as follows:

  • Powered off (shutdown)* – 2.6 Watts
  • UEFI (BIOS) – 13.9 Watts
  • GRUB menu – 15.4 Watts
  • Idle – 10.0 Watts (Ubuntu)
  • CPU stressed** – 29.5 Watts (Ubuntu “stress”)
  • Video playback*** – 27.2 Watts (Ubuntu Chrome 4K60fps)
  • Proxmox – 12.6 Watts (No VMs)
  • Proxmox (firewall) – 16.1 Watts (pfSense VM)
  • Proxmox (gaming) – 33.4 Watts (pfSense VM & Batocera VM)
  • WOL enabled in UEFI (BIOS).
    ** Maximum power reading observed.
    *** The power figures fluctuate so the value is the average of the median high and median low power readings.


The iKOOLCORE R2 is more than an incremental upgrade to the initial R1 model. The R2’s Core i3-N300 CPU processing scores in benchmarks are nearly double compared with those from the Pentium Silver N6005 in the R1.The shortfalls of the R1 have also been addressed.

The fan is also now whisper quiet and the additional rubber feet on the base prevent it from sliding off a desk under the weight of attached cables. Swapping one of the four Intel Ethernet ports for a Realtek one should resolve any future installation issues like those that have occurred in the past with appliances like Proxmox, pfSense and OpenWrt.

However there remains a couple of issues that need addressing, even though workarounds exist.

The USB Type-C audio port does not appear to work. But even if it did, the requirement to make the port asymmetrical resulting in a cable only being able to be connected in a single orientation, in my opinion overrides any derived benefit from having it as a USB Type-C port. The workaround is to use the other USB Type-C port for audio but that is really an “expensive” compromise given the port could have been used for either data or video.

When the company unveiled the iKOOLCORE R2 earlier this year, we were told that the original plan called for a 3.5mm audio jack, but a decision was made to use a USB-C port instead because it gave the computer a more consistent look.

But forcing users to use USB Type-C for audio rather than a 3.5 mm jack has been a well discussed subject recently. Given the limitations of this port, I believe that it would make more sense for iKOOLCORE to go back to the original plan and replace this port with a 3.5mm jack than to try fixing the problems with the USB-C port.

Alternatively, as the emphasis on usage of the R2 is more focused as a server or appliance, it may be better to replace the port with a microSD card reader given this port has been dropped from the R2 and storage is limited to a single NVMe/SATA drive.

The other issue that needs addressing is the failure to connect to a 2.4 GHz Wi-Fi network. However Wi-Fi connections can use the 5.0 GHz band which also offers much higher speeds and improved stability.

I don’t think these two issues detract from the overall usability of the R2. It’s small size coupled with its power and networking capacity make this mini PC unique. It is ideal as a low-cost option to serve as a home gateway or manage multiple home networks.

I’d like to thank iKOOLCORE for providing the review unit. It’s available for purchase from iKOOLCORE’s website. Prices start at $239 for a model with an Intel N95 processor, 8GB of RAM, and no storage, or $339 for a similar model with a Core i3-N300 processor. The Core i3-N300/16GB/512GB configuration featured in this review sells for $429.

Support Liliputing

Liliputing's primary sources of revenue are advertising and affiliate links (if you click the "Shop" button at the top of the page and buy something on Amazon, for example, we'll get a small commission).

But there are several ways you can support the site directly even if you're using an ad blocker* and hate online shopping.

Contribute to our Patreon campaign


Contribute via PayPal

* If you are using an ad blocker like uBlock Origin and seeing a pop-up message at the bottom of the screen, we have a guide that may help you disable it.

Subscribe to Liliputing via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 9,536 other subscribers

Join the Conversation


Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

  1. I have this PC. How did you bridge the LAN ports as I could only get one port working for WAN and another port working for LAN. When ask for help on reddit, people tell me “don’t don’t do it, use a switch.” But I don’t wanna – I wanna use all the ports on this PC to replace my router. Any guides or advice to follow?

    1. Look under “System” then “Network” for the “Node”. When setting up or subsequently modifying the “Node” (as in the Proxmox device “r2” in the example above), you can “Create” bridges and allocate the “Bridge ports” (i.e. the Ethernet ports) to the “Linux Bridge” (either singularly or multiple). Then in the “Hardware” configuration of the “Virtual Machine”, on adding a “Network Device” you select which “Bridge” to use.

  2. The choice of wireless card (Mediatek MT7922) seems odd, since that is usually found on laptops utilizing AMD Ryzen processors

  3. Thanks for the review, I’ve been eyeballing the N300 version for awhile now. The power consumption is of particular importance to me, and 30W at full chat is quite a bit more than I expected from a system sporting a CPU with a 7W TDP base. Still, not easy to find a device with an N300 in it.
    My N305/16G/4TB-2280 system uses 33W full out, for reference.

  4. Thank you for your professional review. We have also found the issue with the 2.4G WiFi band ourselves. We have identified the issue as a single-band 2.4G WiFi patch antenna issue. This issue has been resolved by replacing the new 2.4G single-band WiFi patch antenna. Also, the discount code for a $30 OFF in December is XMS. Remember to enter this discount code if you need it.

  5. Cool device but these are still way too expensive to roll the dice on, especially when you have to deal with overseas purchases and conversion to CAD where I live makes it out of reach sadly

    Waiting for the sub $199 units to show up still

  6. Agree with you about the broken type-c audio port being a terrible idea, especially if it was done for aesthetic reasons. Otherwise, it seems pretty cool, although not something I have any need of.