UP Xtreme i11 is both a single board computer and a mini PC powered by an Intel Tiger Lake processor and designed for industrial edge applications. I received the one sample of the mini PC called “UP Xtreme i11 Edge Compute Enabling Kit” last December based on an Intel Core i7-1185GRE processor, fitted with 16GB RAM, a 128GB SSD, and pre-loaded with Ubuntu 20.04 operating system.
I’ve now had more time to play with the system, and I’ll report my experience with Ubuntu 20.04 and Edge Insights for Vision, a computer vision framework that’s part of the getting started guide. The latter was missing from my package possibly because customs opened the package, and forgot to put it back in. The most important part is “devkit” is used as username and password.
Software for UP Xtreme i11 and Fan Control
While Ubuntu 20.04 is pre-installed on the mini PC, it’s also possible can access the software for UP Xtreme i11 in UP Community with resources for Ubuntu, Windows, Yocto, etc…,
The main reason I’d mention this first is that, as noted in the first part of the review, the fan noise is pretty loud. I can usually accept some level of noise, but the fan noise here is really annoying. My girlfriend even asked me why the neighbor was vacuuming his house for so long, and at that point, I had to tell her it was not our neighbor, but my computer.
The good news is there’s a download for “UPX-TGL01 Fan Control Linux”, a script that will only turn on the fan when a temperature threshold is reached. We can download and install it as follows:
1 2 3 4 |
tar xvf UpFanCtl.tar.xz cd UpFanCtl/ chmod +x *.sh sudo ./setup.sh -i |
Output for the last command:
1 2 3 4 |
Install /usr/sbin/i2cset /usr/bin/sensors Created symlink /etc/systemd/system/multi-user.target.wants/fan.service → /lib/systemd/system/fan.service. |
The fan will run at a much slower speed immediately after installation, and be barely audible. It’s running as a systemd service, so you won’t have to run any command manually.
Here’s the content of UpFanCtrl.sh script:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
#!/bin/bash sudo rmmod i2c-i801 sudo modprobe i2c-i801 #get smbus number by i2cdetect bus=$(sudo i2cdetect -l | grep smbus | cut -c 5-6) while : do #get temperature #temparray=$(sensors -j coretemp-isa-0000 | grep input) temparray=$(sensors -j coretemp-isa-0000 | grep input | tr "," "\n") index=0 average=0 for var in ${temparray[@]}; do let mod=index%2 if [ $mod -ne 0 ];then #echo $var average=$(echo "$average + $var" | bc) #echo $average fi index=$(($index+1)) done average=$(echo "$average / ($index/2)" | bc) #echo $average if [ $average -le 50 ];then sudo i2cset -y $bus 0x2e 0x40 0x7f elif [ $average -le 60 ];then sudo i2cset -y $bus 0x2e 0x40 0xAf else sudo i2cset -y $bus 0x2e 0x40 0xff fi sleep 5 done |
If the temperature is less than 50°C the fan will run at slow speed, between 50 and 60°C, it will run at medium speed, and over that at full speed (and be extra noisy). I’d just wish it was installed by default.
Ubuntu System Information
I’ve run a few commands to check the system info in Ubuntu 20.04 after running apt dist-upgrade
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
inxi -Fc0 System: Host: UPX-i11 Kernel: 5.13.0-32-generic x86_64 bits: 64 Console: tty 0 Distro: Ubuntu 20.04.4 LTS (Focal Fossa) Machine: Type: Desktop Mobo: AAEON model: UPX-TGL01 v: V1.0 serial: <superuser/root required> UEFI: American Megatrends LLC. v: UXTGBM13 date: 07/27/2021 CPU: Topology: Quad Core model: 11th Gen Intel Core i7-1185GRE bits: 64 type: MT MCP L2 cache: 12.0 MiB Speed: 1506 MHz min/max: 400/4400 MHz Core speeds (MHz): 1: 1619 2: 1656 3: 1561 4: 1403 5: 1500 6: 1556 7: 1591 8: 1643 Graphics: Device-1: Intel driver: i915 v: kernel Display: server: X.org 1.20.13 driver: i915 tty: 80x24 Message: Advanced graphics data unavailable in console. Try -G --display Audio: Device-1: Intel driver: snd_hda_intel Sound Server: ALSA v: k5.13.0-32-generic Network: Device-1: Intel Ethernet I219-LM driver: e1000e IF: eno1 state: up speed: 1000 Mbps duplex: full mac: 00:07:32:89:ef:c3 Device-2: Intel driver: igc IF: enp44s0 state: down mac: 00:07:32:89:ef:c2 Device-3: Realtek RTL8153 Gigabit Ethernet Adapter type: USB driver: r8152 IF: enx4865ee12b094 state: down mac: 48:65:ee:12:b0:94 IF-ID-1: cni0 state: up speed: 10000 Mbps duplex: unknown mac: 56:56:e1:21:d1:8b IF-ID-2: docker0 state: down mac: 02:42:76:a6:44:3b IF-ID-3: flannel.1 state: unknown speed: 1000 Mbps duplex: full mac: 4e:87:67:68:f2:54 IF-ID-4: veth338506c2 state: up speed: 10000 Mbps duplex: full mac: 46:68:43:6a:bf:49 IF-ID-5: veth42c513cd state: up speed: 10000 Mbps duplex: full mac: f2:e9:b1:34:73:c0 IF-ID-6: veth698780bd state: up speed: 10000 Mbps duplex: full mac: d2:36:ce:6c:e1:11 IF-ID-7: vethf151465c state: up speed: 10000 Mbps duplex: full mac: 16:1a:11:67:14:0b IF-ID-8: vethff7e8274 state: up speed: 10000 Mbps duplex: full mac: 66:b0:54:94:1c:13 Drives: Local Storage: total: 566.37 GiB used: 93.59 GiB (16.5%) ID-1: /dev/sda vendor: Transcend model: TS128GSSD452K2 size: 119.24 GiB ID-2: /dev/sdb type: USB vendor: JMicron Tech model: N/A size: 447.13 GiB Partition: ID-1: / size: 115.88 GiB used: 18.85 GiB (16.3%) fs: ext4 dev: /dev/sda2 Sensors: System Temperatures: cpu: 6280.4 C mobo: N/A Fan Speeds (RPM): cpu: 6553500 Info: Processes: 288 Uptime: 3m Memory: 14.88 GiB used: 1.37 GiB (9.2%) Init: systemd runlevel: 5 Shell: bash inxi: 3.0.38 |
The system comes with an Intel Core i7-1185GRE quad-core processor clocked at up to 4.4 GHz, with 16GB memory, and a 128GB SSD. The extra USB drive is the MINIX USB-C docker with SSD that I used for testing. There are plenty of Ethernet interfaces because k3s Kubernetes distribution is running for the Edge Insights for Vision framework.
The system temperature reported by inxi is incorrect. Running the following command taken from the UpFanCtrl.sh script shows the actual temperature:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
sensors -j coretemp-isa-0000 { "coretemp-isa-0000":{ "Adapter": "ISA adapter", "Package id 0":{ "temp1_input": 34.000, "temp1_max": 100.000, "temp1_crit": 100.000, "temp1_crit_alarm": 0.000 }, "Core 0":{ "temp2_input": 31.000, "temp2_max": 100.000, "temp2_crit": 100.000, "temp2_crit_alarm": 0.000 }, "Core 1":{ "temp3_input": 32.000, "temp3_max": 100.000, "temp3_crit": 100.000, "temp3_crit_alarm": 0.000 }, "Core 2":{ "temp4_input": 33.000, "temp4_max": 100.000, "temp4_crit": 100.000, "temp4_crit_alarm": 0.000 }, "Core 3":{ "temp5_input": 32.000, "temp5_max": 100.000, "temp5_crit": 100.000, "temp5_crit_alarm": 0.000 } } } |
More system information can be found below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 |
devkit@UPX-i11:~$ lsblk -a NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 4K 1 loop /snap/bare/5 loop1 7:1 0 55,5M 1 loop /snap/core18/2284 loop2 7:2 0 61,9M 1 loop /snap/core20/1328 loop3 7:3 0 51M 1 loop /snap/snap-store/547 loop4 7:4 0 54,2M 1 loop /snap/snap-store/558 loop5 7:5 0 247,9M 1 loop /snap/gnome-3-38-2004/87 loop6 7:6 0 65,2M 1 loop /snap/gtk-common-themes/1519 loop7 7:7 0 42,2M 1 loop /snap/snapd/14066 loop8 7:8 0 55,5M 1 loop /snap/core18/2253 loop9 7:9 0 219M 1 loop /snap/gnome-3-34-1804/77 loop10 7:10 0 219M 1 loop /snap/gnome-3-34-1804/72 loop11 7:11 0 61,9M 1 loop /snap/core20/1242 loop12 7:12 0 248,8M 1 loop /snap/gnome-3-38-2004/99 loop13 7:13 0 43,4M 1 loop /snap/snapd/14549 loop14 7:14 0 65,1M 1 loop /snap/gtk-common-themes/1515 loop15 7:15 0 0 loop sda 8:0 0 119,2G 0 disk ├─sda1 8:1 0 512M 0 part /boot/efi └─sda2 8:2 0 118,8G 0 part / sdb 8:16 0 447,1G 0 disk └─sdb1 8:17 0 447,1G 0 part /media/devkit/NEO Storage devkit@UPX-i11:~$ sudo lshw -C cpu [sudo] password for devkit: *-cpu description: CPU product: 11th Gen Intel(R) Core(TM) i7-1185GRE @ 2.80GHz vendor: Intel Corp. physical id: 4c bus info: cpu@0 version: 11th Gen Intel(R) Core(TM) i7-1185GRE @ 2.80GHz serial: To Be Filled By O.E.M. slot: U3E1 size: 2222MHz capacity: 4400MHz width: 64 bits clock: 100MHz capabilities: lm fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp x86-64 constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l2 invpcid_single cdp_l2 ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid rdt_a avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb intel_pt avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves split_lock_detect dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp hwp_pkg_req avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg tme avx512_vpopcntdq rdpid movdiri movdir64b fsrm avx512_vp2intersect md_clear flush_l1d arch_capabilities cpufreq configuration: cores=4 enabledcores=4 threads=8 devkit@UPX-i11:~$ sudo lshw -C memory *-firmware description: BIOS vendor: American Megatrends International, LLC. physical id: 0 version: UXTGBM13 date: 07/27/2021 size: 64KiB capacity: 16MiB capabilities: pci upgrade shadowing cdboot bootselect socketedrom edd biosbootspecification uefi *-memory description: System Memory physical id: 3c slot: System board or motherboard size: 16GiB *-bank:0 description: SODIMM DDR4 Synchronous 2667 MHz (0,4 ns) product: TS1GSH64V6B vendor: Transcend Information physical id: 0 serial: 00000097 slot: Controller0-ChannelA-DIMM0 size: 8GiB width: 64 bits clock: 2667MHz (0.4ns) *-bank:1 description: SODIMM DDR4 Synchronous 3200 MHz (0,3 ns) product: TS1GSH64V2B3 vendor: Transcend Information physical id: 1 serial: 00000289 slot: Controller1-ChannelA-DIMM0 size: 8GiB width: 64 bits clock: 3200MHz (0.3ns) *-cache:0 description: L1 cache physical id: 48 slot: L1 Cache size: 192KiB capacity: 192KiB capabilities: synchronous internal write-back data configuration: level=1 *-cache:1 description: L1 cache physical id: 49 slot: L1 Cache size: 128KiB capacity: 128KiB capabilities: synchronous internal write-back instruction configuration: level=1 *-cache:2 description: L2 cache physical id: 4a slot: L2 Cache size: 5MiB capacity: 5MiB capabilities: synchronous internal write-back unified configuration: level=2 *-cache:3 description: L3 cache physical id: 4b slot: L3 Cache size: 12MiB capacity: 12MiB capabilities: synchronous internal write-back unified configuration: level=3 *-memory UNCLAIMED description: RAM memory product: Intel Corporation vendor: Intel Corporation physical id: 14.2 bus info: pci@0000:00:14.2 version: 20 width: 64 bits clock: 33MHz (30.3ns) capabilities: pm cap_list configuration: latency=0 resources: iomemory:600-5ff iomemory:600-5ff memory:601d364000-601d367fff memory:601d371000-601d371fff devkit@UPX-i11:~$ free -mh total used free shared buff/cache available Mem: 14Gi 1,3Gi 12Gi 116Mi 979Mi 13Gi Swap: 2,0Gi 0B 2,0Gi devkit@UPX-i11:~$ sudo lshw -C network *-network description: Ethernet interface product: Intel Corporation vendor: Intel Corporation physical id: 0 bus info: pci@0000:2c:00.0 logical name: enp44s0 version: 03 serial: 00:07:32:89:ef:c2 capacity: 1Gbit/s width: 32 bits clock: 33MHz capabilities: pm msi msix pciexpress bus_master cap_list ethernet physical 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=igc driverversion=5.13.0-32-generic firmware=1079:8770 latency=0 link=no multicast=yes port=twisted pair resources: irq:18 memory:82200000-822fffff memory:82300000-82303fff *-network description: Ethernet interface product: Ethernet Connection (13) I219-LM vendor: Intel Corporation physical id: 1f.6 bus info: pci@0000:00:1f.6 logical name: eno1 version: 20 serial: 00:07:32:89:ef:c3 size: 1Gbit/s capacity: 1Gbit/s width: 32 bits clock: 33MHz capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=5.13.0-32-generic duplex=full firmware=0.8-4 ip=192.168.12.93 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s resources: irq:144 memory:82400000-8241ffff *-network:0 description: Ethernet interface physical id: 2 bus info: usb@2:1.4 logical name: enx4865ee12b094 serial: 48:65:ee:12:b0:94 size: 10Mbit/s capacity: 1Gbit/s capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=r8152 driverversion=v1.12.12 duplex=half firmware=rtl8153b-2 v1 10/23/19 link=no multicast=yes port=MII speed=10Mbit/s *-network:1 description: Ethernet interface physical id: 3 logical name: flannel.1 serial: 4e:87:67:68:f2:54 size: 1Gbit/s capacity: 1Gbit/s capabilities: ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=vxlan driverversion=0.1 duplex=full ip=10.42.0.0 link=yes multicast=yes port=twisted pair speed=1Gbit/s *-network:2 description: Ethernet interface physical id: 4 logical name: vethf151465c serial: 16:1a:11:67:14:0b size: 10Gbit/s capabilities: ethernet physical configuration: autonegotiation=off broadcast=yes driver=veth driverversion=1.0 duplex=full link=yes multicast=yes port=twisted pair speed=10Gbit/s *-network:3 description: Ethernet interface physical id: 5 logical name: veth42c513cd serial: f2:e9:b1:34:73:c0 size: 10Gbit/s capabilities: ethernet physical configuration: autonegotiation=off broadcast=yes driver=veth driverversion=1.0 duplex=full link=yes multicast=yes port=twisted pair speed=10Gbit/s *-network:4 description: Ethernet interface physical id: 6 logical name: vethff7e8274 serial: 66:b0:54:94:1c:13 size: 10Gbit/s capabilities: ethernet physical configuration: autonegotiation=off broadcast=yes driver=veth driverversion=1.0 duplex=full link=yes multicast=yes port=twisted pair speed=10Gbit/s *-network:5 description: Ethernet interface physical id: 7 logical name: veth338506c2 serial: 46:68:43:6a:bf:49 size: 10Gbit/s capabilities: ethernet physical configuration: autonegotiation=off broadcast=yes driver=veth driverversion=1.0 duplex=full link=yes multicast=yes port=twisted pair speed=10Gbit/s *-network:6 description: Ethernet interface physical id: 8 logical name: veth698780bd serial: d2:36:ce:6c:e1:11 size: 10Gbit/s capabilities: ethernet physical configuration: autonegotiation=off broadcast=yes driver=veth driverversion=1.0 duplex=full link=yes multicast=yes port=twisted pair speed=10Gbit/s devkit@UPX-i11:~$ sudo lshw -C display *-display description: VGA compatible controller product: Intel Corporation vendor: Intel Corporation physical id: 2 bus info: pci@0000:00:02.0 logical name: /dev/fb0 version: 01 width: 64 bits clock: 33MHz capabilities: pciexpress msi pm vga_controller bus_master cap_list fb configuration: depth=32 driver=i915 latency=0 mode=1280x800 visual=truecolor xres=1280 yres=800 resources: iomemory:600-5ff iomemory:400-3ff irq:151 memory:601c000000-601cffffff memory:4000000000-400fffffff ioport:3000(size=64) memory:c0000-dffff memory:4010000000-4016ffffff memory:4020000000-40ffffffff devkit@UPX-i11:~$ lsusb Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 004: ID 1934:1202 Feature Integration Technology Inc. (Fintek) Fintek U2U F81532 AA66 Bus 003 Device 005: ID 2109:8817 VIA Labs, Inc. Bus 003 Device 003: ID 2109:2817 VIA Labs, Inc. USB2.0 Hub Bus 003 Device 002: ID 3938:1032 MOSART Semi. 2.4G RF Keyboard & Mouse Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 004: ID 0bda:8153 Realtek Semiconductor Corp. RTL8153 Gigabit Ethernet Adapter Bus 002 Device 003: ID 152d:0583 JMicron Technology Corp. / JMicron USA Technology Corp. USB3.0 Hub Bus 002 Device 002: ID 2109:0817 VIA Labs, Inc. USB3.0 Hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub devkit@UPX-i11:~$ lspci -nn 00:00.0 Host bridge [0600]: Intel Corporation Device [8086:9a14] (rev 01) 00:02.0 VGA compatible controller [0300]: Intel Corporation Device [8086:9a49] (rev 01) 00:07.0 PCI bridge [0604]: Intel Corporation Device [8086:9a23] (rev 01) 00:0d.0 USB controller [0c03]: Intel Corporation Device [8086:9a13] (rev 01) 00:0d.2 USB controller [0c03]: Intel Corporation Device [8086:9a1b] (rev 01) 00:10.0 Serial bus controller [0c80]: Intel Corporation Device [8086:a0d8] (rev 20) 00:10.5 Host bridge [0600]: Intel Corporation Device [8086:a0af] (rev 20) 00:14.0 USB controller [0c03]: Intel Corporation Device [8086:a0ed] (rev 20) 00:14.1 USB controller [0c03]: Intel Corporation Device [8086:a0ee] (rev 20) 00:14.2 RAM memory [0500]: Intel Corporation Device [8086:a0ef] (rev 20) 00:15.0 Serial bus controller [0c80]: Intel Corporation Device [8086:a0e8] (rev 20) 00:15.2 Serial bus controller [0c80]: Intel Corporation Device [8086:a0ea] (rev 20) 00:15.3 Serial bus controller [0c80]: Intel Corporation Device [8086:a0eb] (rev 20) 00:16.0 Communication controller [0780]: Intel Corporation Device [8086:a0e0] (rev 20) 00:17.0 SATA controller [0106]: Intel Corporation Device [8086:a0d3] (rev 20) 00:19.0 Serial bus controller [0c80]: Intel Corporation Device [8086:a0c5] (rev 20) 00:19.2 Communication controller [0780]: Intel Corporation Device [8086:a0c7] (rev 20) 00:1c.0 PCI bridge [0604]: Intel Corporation Device [8086:a0be] (rev 20) 00:1e.0 Communication controller [0780]: Intel Corporation Device [8086:a0a8] (rev 20) 00:1e.3 Serial bus controller [0c80]: Intel Corporation Device [8086:a0ab] (rev 20) 00:1f.0 ISA bridge [0601]: Intel Corporation Device [8086:a088] (rev 20) 00:1f.3 Multimedia audio controller [0401]: Intel Corporation Device [8086:a0c8] (rev 20) 00:1f.4 SMBus [0c05]: Intel Corporation Device [8086:a0a3] (rev 20) 00:1f.5 Serial bus controller [0c80]: Intel Corporation Device [8086:a0a4] (rev 20) 00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet Connection (13) I219-LM [8086:15fb] (rev 20) 2c:00.0 Ethernet controller [0200]: Intel Corporation Device [8086:0d9f] (rev 03) devkit@UPX-i11:~$ |
Features testing
I’ve already tested several features of UP Xtreme i11 notably in my reviews of a USB 3.0 to 2.5 Gbps Ethernet adapter and the 10.1-inch RPi all-in-one display where I tested both Ethernet and the DisplayPort Alt mode function of the USB-C/Thunderbolt port.
The Gigabit Ethernet works just fine:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
iperf3 -t 60 -c 192.168.12.93 --bidir -i 0 Connecting to host 192.168.12.93, port 5201 [ 5] local 192.168.12.1 port 51308 connected to 192.168.12.93 port 5201 [ 7] local 192.168.12.1 port 51310 connected to 192.168.12.93 port 5201 [ ID][Role] Interval Transfer Bitrate Retr Cwnd [ 5][TX-C] 0.00-60.00 sec 6.01 GBytes 860 Mbits/sec 0 1.25 MBytes [ 7][RX-C] 0.00-60.00 sec 6.49 GBytes 929 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID][Role] Interval Transfer Bitrate Retr [ 5][TX-C] 0.00-60.00 sec 6.01 GBytes 860 Mbits/sec 0 sender [ 5][TX-C] 0.00-60.05 sec 6.01 GBytes 859 Mbits/sec receiver [ 7][RX-C] 0.00-60.00 sec 6.50 GBytes 930 Mbits/sec 578 sender [ 7][RX-C] 0.00-60.05 sec 6.49 GBytes 929 Mbits/sec receiver iperf Done. |
and the 2.5GbE port appears to be fine too, but hard to say with 100% since I’ve had a lot of troubles with the Realtek RTL8156B USB 3.0 dongle I’ve been using.
Download, as seen from UP Xtreme i11 mini PC, does work fine:
1 2 3 4 5 6 7 |
iperf3 -t 60 -c 192.168.31.12 -i 5 Connecting to host 192.168.31.12, port 5201 [ 5] local 192.168.31.166 port 32848 connected to 192.168.31.12 port 5201 [ ID] Interval Transfer Bitrate Retr Cwnd [ 5] 0.00-5.00 sec 1.37 GBytes 2.36 Gbits/sec 0 847 KBytes [ 5] 5.00-10.00 sec 1.37 GBytes 2.35 Gbits/sec 0 889 KBytes [ 5] 10.00-15.00 sec 1.37 GBytes 2.35 Gbits/sec 0 1.14 MBytes |
Upload performance could only be tested up to 1.7 Gbps due to issues with the USB to Ethernet adapter I used for testing.
The USB Type-C’s port DisplayPort Alt. Mode worked fine through MINIX NEO S2 USB-C dock. Since it comes with an SSD, let’s see what performance I get using iozone3:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
iozone -e -I -a -s 1000M -r 16384k -i 0 -i 1 Iozone: Performance Test of File I/O Version $Revision: 3.489 $ Compiled for 64 bit mode. Build: linux-AMD64 Include fsync in write timing O_DIRECT feature enabled Auto Mode File size set to 1024000 kB Record Size 16384 kB Command line used: iozone -e -I -a -s 1000M -r 16384k -i 0 -i 1 Output is in kBytes/sec Time Resolution = 0.000001 seconds. Processor cache size set to 1024 kBytes. Processor cache line size set to 32 bytes. File stride size set to 17 * record size. random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 1024000 16384 269196 410453 441657 441671 |
Sequential reads are at about 440 MB/s or around 3.5 Gbps. The storage device is probably the bottleneck here instead of the USB speed. If we look at the USB ports speeds:
1 2 3 4 5 6 7 8 9 10 11 |
sudo lsusb -t /: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 10000M /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/12p, 480M |__ Port 7: Dev 2, If 0, Class=Hub, Driver=hub/5p, 480M |__ Port 5: Dev 4, If 0, Class=, Driver=, 480M |__ Port 9: Dev 3, If 0, Class=Vendor Specific Class, Driver=f81534, 480M /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 10000M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 5000M |__ Port 1: Dev 3, If 0, Class=Mass Storage, Driver=uas, 5000M |__ Port 4: Dev 4, If 0, Class=Vendor Specific Class, Driver=r8152, 5000M /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M |
It looks like the USB Type-C port is rated 10 Gbps, but the MINIX USB-C dock is only 5 Gbps.
HDMI is working just fine with both video and audio as tested with YouTube videos in Firefox and Chrome. Testing with 4K is not working so well, but only because of my 10 Mbps cellular connection… Audio through the 3.5mm jack worked fine as well with headphones, so I didn’t have the same issues as on the Intel Core i5-1135G7 (Tiger Lake) powered Beelink GTi 11 mini PC which lacks audio support through HDMI and the audio jack. Ian could fix HDMI audio manually, but not the audio jack.
So that means everything works out of the box with UP Xtreme i11 mini PC, at least for the things I tested. I do not have the hardware with me to check DisplayPort output, the serial ports, and the GPIOs.
That said we can still see both serial interfaces are shown in bootterm:
1 2 3 4 5 6 7 |
devkit@UPX-i11:~/bootterm$ bt -l port | age (sec) | device | driver | description ------+------------+------------+------------------+---------------------- 0 | 1062 | ttyS4 | dw-apb-uart | 1 | 1062 | ttyS5 | dw-apb-uart | 2 | 1062 | ttyUSB0 | f81534 | Fintek U2U F81532 AA66 * 3 | 1062 | ttyUSB1 | f81534 | Fintek U2U F81532 AA66 |
Fintek F815232 USB to dual-serial chip used with the two RS232 DB9 connectors.
The GPIOs are also showing up in sysfs:
1 2 3 4 5 6 |
$ ls -l /sys/class/gpio/ total 0 --w--w---- 1 root gpio 4096 mrt 5 04:12 export lrwxrwxrwx 1 root root 0 mrt 5 08:24 gpiochip0 -> ../../devices/platform/PNP0C14:02/wmi_bus/wmi_bus-PNP0C14:02/97845ED0-4E6D-11DE-8A39-0800200C9A66/gpio-aaeon.0/gpio/gpiochip0 lrwxrwxrwx 1 root root 0 mrt 5 08:24 gpiochip152 -> ../../devices/platform/INT34C5:00/gpio/gpiochip152 --w--w---- 1 root gpio 4096 mrt 5 04:12 unexport |
As we’ll see just below, there are even BIOS options to configure the boot behavior of each pins.
I’m happy to get a system that just works considering all problems I had with other recent products I had for review.
A quick look at the BIOS
UP Xtreme i11 comes with AMI Aptio Setup BIOS/UEFI.
There are plenty of options in the Advanced tag, and if the fan is in issue, you can turn it off or slow it down by default as well.
AAEON also modified the default BIOS with both Power Management features, including “Restore AC Power Loss” enabled by default,
and the “HAT Pins Configurations” menu to enable I2C, SPI, PWN, LED, ADC…
as well as the on-boot behavior of each GPIO pin from the mini PC’s terminal block.
UP Xtreme i11 benchmarks
Let’s run some benchmarks to compare the performance against other mini PCs.
SBC-Bench script:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
devkit@UPX-i11:~$ sudo ./sbc-bench.sh sbc-bench v0.9.3 Installing needed tools. This may take some time. Done. Checking cpufreq OPP. Done (results will be available in 8-11 minutes). Executing tinymembench. Done. Executing OpenSSL benchmark. Done. Executing 7-zip benchmark. Done. Checking cpufreq OPP. Done (11 minutes elapsed). Memory performance: memcpy: 14978.9 MB/s (0.6%) memset: 20059.3 MB/s (0.2%) 7-zip total scores (3 consecutive runs): 18257,18138,18084 OpenSSL results: type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes aes-128-cbc 714465.65k 1752591.06k 1960455.00k 2001776.30k 2012940.97k 2019595.61k aes-128-cbc 1117239.41k 1860059.97k 1957394.18k 1985099.43k 2004708.01k 2013719.21k aes-192-cbc 1040431.18k 1598258.56k 1674556.42k 1696940.03k 1709481.98k 1711412.57k aes-192-cbc 1027839.14k 1589334.61k 1664330.24k 1689908.22k 1696929.11k 1697174.87k aes-256-cbc 971862.18k 1396062.04k 1450506.92k 1471090.01k 1480048.64k 1471971.33k aes-256-cbc 975878.30k 1403145.64k 1445398.27k 1470802.60k 1475925.33k 1477591.04k Full results uploaded to http://ix.io/3RnJ. |
PassMark PerformanceTest Linux:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
PassMark PerformanceTest Linux 11th Gen Intel(R) Core(TM) i7-1185GRE @ 2.80GHz (x86_64) 4 cores @ 4400 MHz | 14.9 GiB RAM Number of Processes: 8 | Test Iterations: 1 | Test Duration: Medium -------------------------------------------------------------------------- CPU Mark: 9223 Integer Math 38848 Million Operations/s Floating Point Math 21760 Million Operations/s Prime Numbers 25.2 Million Primes/s Sorting 12390 Thousand Strings/s Encryption 5800 MB/s Compression 94740 KB/s CPU Single Threaded 2863 Million Operations/s Physics 471 Frames/s Extended Instructions (SSE) 5508 Million Matrices/s Memory Mark: 2646 Database Operations 3160 Thousand Operations/s Memory Read Cached 28335 MB/s |
GeekBench 5
Check out the full results on the Geekbench website.
Unigine Heaven Benchmark
I ran the 3D graphics benchmark twice, once using the system’s resolution (I’m using a small HDMI display with 1280×800 resolution), and the second time with 1920×1080 resolution for comparison with other systems.
Let’s compare the results against four other mini PC from different processor families:
- Intel NUC7PJYH with a quad-core Celeron Silver J5005 Gemini Lake processor
- Beelink U59 with a quad-core Celeron N5095 Jasper Lake processor
- Beelink GTI 11 with a quad-core/eight-thread Core i5-1135G7 Tiger Lake processor
- Beelink GTR5 with an eight-core/16-thread AMD Ryzen 9 5900HX processor
7-zip results are unexpected because I would have thought UP Xtreme i11, with a Core i7-1185GRE processor, would be faster than the Beelink GTI 11.
But there’s no such issue with AES-256 16KB test:
We can see what’s going in sbc-bench.sh log for UP Xtreme i11:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
System health while running 7-zip single core benchmark: Time CPU load %cpu %sys %usr %nice %io %irq Temp 05:28:21: 4122MHz 1.07 2% 0% 1% 0% 0% 0% 58,0°C 05:28:26: 4000MHz 1.07 13% 0% 12% 0% 0% 0% 75,0°C 05:28:31: 4100MHz 1.06 12% 0% 12% 0% 0% 0% 76,0°C 05:28:36: 4000MHz 1.06 12% 0% 12% 0% 0% 0% 70,0°C 05:28:41: 4100MHz 1.05 12% 0% 12% 0% 0% 0% 69,0°C 05:28:46: 4000MHz 1.05 13% 0% 13% 0% 0% 0% 69,0°C 05:28:51: 4000MHz 1.04 12% 0% 12% 0% 0% 0% 73,0°C System health while running 7-zip multi core benchmark: Time CPU load %cpu %sys %usr %nice %io %irq Temp 05:28:52: 4024MHz 1.04 2% 0% 1% 0% 0% 0% 60,0°C 05:29:02: 2869MHz 2.11 96% 1% 95% 0% 0% 0% 59,0°C 05:29:12: 3477MHz 3.39 95% 1% 94% 0% 0% 0% 57,0°C 05:29:23: 2832MHz 4.24 95% 1% 93% 0% 0% 0% 59,0°C 05:29:37: 2887MHz 4.82 91% 1% 89% 0% 0% 0% 59,0°C 05:29:49: 2886MHz 5.59 96% 1% 95% 0% 0% 0% 59,0°C 05:29:59: 2900MHz 6.04 95% 1% 94% 0% 0% 0% 59,0°C 05:30:10: 2900MHz 6.57 94% 1% 93% 0% 0% 0% 60,0°C 05:30:24: 2885MHz 6.96 91% 2% 89% 0% 0% 0% 59,0°C 05:30:35: 2900MHz 7.56 96% 1% 95% 0% 0% 0% 59,0°C 05:30:45: 3000MHz 7.79 94% 1% 93% 0% 0% 0% 59,0°C 05:30:57: 2900MHz 7.99 94% 1% 92% 0% 0% 0% 59,0°C 05:31:10: 2896MHz 7.91 90% 2% 88% 0% 0% 0% 59,0°C |
While single-core frequency is limited to 4 GHz, when all cores/threads are active it throttles to around 3.0 GHz. There was a similar effect with Beelink GTi 11, but the multi-thread was around 3.6 GHz:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
System health while running 7-zip single core benchmark: Time CPU load %cpu %sys %usr %nice %io %irq Temp 12:45:30: 3845MHz 1.00 9% 0% 8% 0% 0% 0% 58.0°C 12:46:30: 4146MHz 4.95 12% 0% 12% 0% 0% 0% 59.0°C 12:47:30: 4154MHz 6.56 13% 0% 12% 0% 0% 0% 62.0°C System health while running 7-zip multi core benchmark: Time CPU load %cpu %sys %usr %nice %io %irq Temp 12:48:19: 3573MHz 6.61 9% 0% 8% 0% 0% 0% 60.0°C 12:48:41: 3822MHz 7.00 95% 0% 95% 0% 0% 0% 72.0°C 12:49:05: 3567MHz 7.46 93% 0% 92% 0% 0% 0% 71.0°C 12:49:26: 3435MHz 7.11 94% 0% 93% 0% 0% 0% 72.0°C 12:49:50: 3600MHz 7.36 94% 0% 94% 0% 0% 0% 72.0°C |
One reason could be that Core i5-1135G7 is a mobile processor, while Core i7-1185GRE is an embedded processor with an extended/industrial temperature range (-40°C to 100°C), so the frequency may be limited to work under all conditions and make the system more reliable even at high or low ambient temperature. In order words, it might be a feature rather than a bug.
This behavior can sometimes be changed via some settings in the BIOS, but I could not find any “CPU Thermal Configuration” options to change power limits or throttling temperature.
Similar results can be observed using GeekBench 5 single- and multi-thread benchmarks.
3D graphics performance, as measured with Unigine Heaven benchmark at 1920×1080 resolution, is basically the same for Beelink GTI 11 and UP Xtreme i11.
Edge Insights for Vision
The Quick Start Guide directs us to https://www.intel.com/content/www/us/en/developer/articles/training/devkit-gsg21.html to test Edge Insights for Vision framework which relies on Intel OpenVino.
I’ll go through the “Single and Multi-Object Detection with Hardware Acceleration” section with demos using the CPU, GPU, and Intel Vision Accelerator, although I’ll skip the latter since my system is not fitted with an accelerator card.
Everything is pre-installed, so we can just enter the YOLOv3 folder, and initialize the environment…
1 2 |
cd $HOME/Downloads/YOLOv3 source /opt/intel/openvino_2021/bin/setupvars.sh |
… before running the first single object detection demo using the CPU only:
1 2 3 4 5 6 7 8 9 |
python3 object_detection_demo.py -i $HOME/Downloads/YOLOv3/Sample_videos/one-by-one-person-detection.mp4 -m $HOME/Downloads/YOLOv3/tensorflow-yolo-v3/FP32/frozen_darknet_yolov3_model.xml -t 0.1 -at yolo [ INFO ] Initializing Inference Engine... [ INFO ] Loading network... [ INFO ] Reading network from IR... [ INFO ] Loading network to CPU plugin... [ INFO ] Starting inference... To close the application, press 'CTRL+C' here or switch to the output window and press ESC key Latency: 125.6 ms FPS: 32.4 |
That’s the photo above and the screenshot below.
Latency is around 125ms, and CPU usage of the Python script over 500% on this 8-thread system.
Multiple object detection is similar with only slightly higher latency and lower FPS,
1 2 3 4 5 6 7 8 9 |
python3 object_detection_demo.py -i $HOME/Downloads/YOLOv3/Sample_videos/person-bicycle-car-detection.mp4 -m $HOME/Downloads/YOLOv3/tensorflow-yolo-v3/FP32/frozen_darknet_yolov3_model.xml -t 0.1 -at yolo [ INFO ] Initializing Inference Engine... [ INFO ] Loading network... [ INFO ] Reading network from IR... [ INFO ] Loading network to CPU plugin... [ INFO ] Starting inference... To close the application, press 'CTRL+C' here or switch to the output window and press ESC key Latency: 130.8 ms FPS: 31.5 |
but this could be because of the source video that does not have many objects.
CPU usage for the main Python script was 555% at the time of the screenshot.
Let’s now try the single object detection demo again, but this time, with GPU acceleration:
1 2 3 4 5 6 7 8 9 |
python3 object_detection_demo.py -i $HOME/Downloads/YOLOv3/Sample_videos/one-by-one-person-detection.mp4 -m $HOME/Downloads/YOLOv3/tensorflow-yolo-v3/FP32/frozen_darknet_yolov3_model.xml -d GPU -t 0.1 -at yolo [ INFO ] Initializing Inference Engine... [ INFO ] Loading network... [ INFO ] Reading network from IR... [ INFO ] Loading network to GPU plugin... [ INFO ] Starting inference... To close the application, press 'CTRL+C' here or switch to the output window and press ESC key Latency: 59.4 ms FPS: 51.3 |
Latency has been roughly halved at about 60ms, and framerate doubled while CPU utilization dropped to 281%.
Finally, let’s do the multi-object detection with the GPU:
1 2 3 4 5 6 7 8 9 |
python3 object_detection_demo.py -i $HOME/Downloads/YOLOv3/Sample_videos/person-bicycle-car-detection.mp4 -m $HOME/Downloads/YOLOv3/tensorflow-yolo-v3/FP32/frozen_darknet_yolov3_model.xml -d GPU -t 0.1 -at yolo [ INFO ] Initializing Inference Engine... [ INFO ] Loading network... [ INFO ] Reading network from IR... [ INFO ] Loading network to GPU plugin... [ INFO ] Starting inference... To close the application, press 'CTRL+C' here or switch to the output window and press ESC key Latency: 59.4 ms FPS: 50.6 |
Latency, framerate, and CPU usage are similar to single object detection with GPU acceleration.
So download a traffic monitoring video from YouTube to see how it would affect the performance:
1 2 3 4 5 6 7 8 9 |
python3 object_detection_demo.py -i $HOME/Downloads/YOLOv3/Sample_videos/traffic-monitoring.mp4 -m $HOME/Downloads/YOLOv3/tensorflow-yolo-v3/FP32/frozen_darknet_yolov3_model.xml -d GPU -t 0.1 -at yolo [ INFO ] Initializing Inference Engine... [ INFO ] Loading network... [ INFO ] Reading network from IR... [ INFO ] Loading network to GPU plugin... [ INFO ] Starting inference... To close the application, press 'CTRL+C' here or switch to the output window and press ESC key Latency: 61.8 ms FPS: 38.0 |
Latency is about the same, and so is CPU usage but FPS has dropped, but the main reason may be because of the higher resolutions.
I can see most regular cars are detected unless they are too far away, but the model does not seem to have been trained to detect Thai pickup trucks that have been modified to transport goods (see left side) or motorcycles. The blue “Type #0” rectangle should be person detection, and there’s nobody standing on the right, but those are all under 15% confidence so they could be discarded.
Conclusion
I’m pretty happy with the UP Xtreme i11 mini PC, as everything works out of the box. I wish the fan would be less noisy, but considering it targets industrial applications there may be noisier equipment operating in the environment, and if it’s an issue its speed can be controlled in the BIOS or through a script as we’ve shown in the review. Note that’s a “hybrid” system in the sense that’s it is a fanless case with a fan block on top, so dust should NOT easily enter the enclosure.
The Intel Core i7-1185GRE “embedded” Tiger Lake processor @ 2.8/4.4 GHz has lower multi-threaded performance/frequency than the Core i5-1135G7 “mobile” processor @ 2.4/4.2 GHz, but it’s unclear whether there may be an issue with the system configuration, or that’s a deliberate choice to operating in a wide temperature range.
I’d like to thank AAEON for sending the UP Xtreme i11 Edge Compute Enabling Kit for review. The tested configuration sells for $1,319, but note the company’s changed the hardware design in the latest “0001 Version Series” and the 16-pin GPIO terminal block is gone, and so is the USB 4.0 Type-C port. The BIOS has also changed probably to remove options related to those two features. If you have a tighter budget pricing starts at $385 for a barebone model with an Intel Celeron 6305E processor.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
The terminal block and USB-C port are casualties of the global component shortage: