Wednesday, May 28, 2014

Haswell NUCs get a new BIOS version (0026)

Intel has released a new BIOS version for Haswell NUCs (that is models D54250WYK, D54250WYKH, D54250WYB, D34010WYK, D34010WYKH and D34010WYB). The version 0026 supposedly fixes the automatic restart after shutdown even if Wake-On-LAN (WOL) is enabled.

According to the release notes, the following fixes have been implemented:

  • Fixed issue where pressing F2 to access BIOS does not work when connected to certain 4K monitor.
  • Updated Integrated Graphics
  • Fixed issue where Intel wireless adapters lose connectivity.
  • Fixed issue where systems restarts instead of shutting down with Linux.

Download the update from Intel Download Center.

In general it seems that the list of fixes per BIOS release is getting shorter and shorter for the Haswell NUCs. Mine has been working very well, but there a number of users who have complained of various strange issues. Maybe we can interpret this as a sign of improved stability of the i3 and i5 NUCs. At least several users have confirmed that the restart after shutting down in Linux issue is now fixed.

Wednesday, May 21, 2014

BIOS version 0034 for Bay Trail NUC DN2820FYKH released

Intel has released a new BIOS version for Bay Trail NUC DN2820FYKH. List of fixes is quite a long one and there's a special mention for USB2/3 compatibility issues that many people have been complaining about. It remains to be seen if they're finally done with this release. Download your BIOS from Intel's download center.

According to the release notes the following issues have been corrected:

  • Fixed issue where fan speed, temperature, and voltage are not reported in BIOS after modifying duty cycles.
  • Fixed issue with BIOS password lengths.
  • Fixed Intel ME disable issue.
  • Updated GOP and VBIOS.
  • Fixed issue where SMBIOS values cannot be set with Intel® Integrator Toolkit.
  • Fixed issue where .BMP splash logo files do not display.
  • Fixed issue where TXE test fails.
  • Fixed issue where system will not boot if PXE Boot is the first boot device.
  • Fixed issue with Wake on USB from S4/S5.
  • Fixed issue where no error beeps or blinks occur when no memory modules are installed.
  • Fixed issue where Intel wireless adapters lose connectivity.
  • Fixed issue with USB3/2 compatibility.

Part 2: Bay Trail Atom NUC as HTPC (DE3815TYKHE)

In the previous article I told you about the new Bay Trail Atom NUC DE3815TYKHE (Amazon) which is mainly targeted for various embedded systems, digital signage, kiosks, etc. In this article I'm going to have a look if this newcomer would be a decent HTPC. It's a bit short on horsepower, but a Raspberry Pi is able to run OpenELEC/XBMC after all...

The Fanless NUC

Installation

I'm going to install the OpenELEC operating system, which is purpose-built for just one task: to run XBMC as your media PC. It's really easy to install, operate and update. I will install it on the internal 4-gigabyte eMMC disk that is built into the NUC. I can imagine that the integrated storage is appealing for embedded systems, but it will also accommodate the OpenELEC operating system nicely! Of course there won't be almost any storage for media files, but even for that you've got two options: either you stream your content from a network drive (NAS) or you can install a 2.5 inch disk in this NUC.

In order to run OpenELEC on the internal eMMC disk, you will need to use release 4.0.2. That's the first release that has the MMC support built into the kernel and the installer is also modified to give you the possibility to copy the files to the MMC. A small detail here, it seems only the quick installation method works in 4.0.2, the custom installation did not find the eMMC drive. In general the installation was easy, just press enter a few times and you've got a nice fanless HTPC. Remove the USB stick, reboot and OE is up and running.

From the push of the power button, the NUC takes approximately 25 seconds to boot into XBMC. Not as fast as a Haswell NUC booting from an SSD disk, but not too slow either. In the previous article I managed to read a bit over 40 megabytes per second from the eMMC disk. And it's dead silent...

First Impression

It seems to work nicely. The interface is slick and everything works pretty much as I'd expect. There doesn't seem to be a big if any difference between this and my i3 NUC. I changed out of the default Confluence skin to Aeon Nox or Aeon MQ5 that are known to be more CPU intensive, but even they work fine. The supercheap ($5, eBay) AR5B95 WiFi adapter works fine and I download a few addons.

If you have a video playing in the background and you summon the EPG or the menus that are overlaid on the video, the transitions in the menus become slightly jerky.

Full HD playback

I try testing out a few 1920x1080 24p videos and the playback seems to be ok. It's good to make sure that the following settings are configured in XBMC:

  • Video - Playback - Adjust display refresh rate to match video: On start/stop
  • Video - Playback - Sync playback to display: Enabled
  • Video - Playback - A/V sync method: Video clock (Drop/Dupe audio)
  • Video - Acceleration - Decoding method: Hardware accelerated
  • Video - Acceleration - Allow hardware acceleration (VDPAU): Disabled
  • Video - Acceleration - Allow hardware acceleration (VAAPI): Enabled
  • Video - Acceleration - Use Mpeg-2 VAAPI: Enabled
  • Video - Acceleration - Use Mpeg-4 VAAPI: Enabled

There are a few very high bitrate test videos at jell.yfish.us that I tried. I tried the 100 Mbps video and even that was fine. Here is a screencapture from the 50 megabit video clip. There were no dropped frames during the playback. There are a few right in the beginning of the playback, but it stabilizes after first second or so. Do note that in real life most of us will not face a video with 50 megabits/s...

Playback of 50 Mbit/s 24p stream

Does It Do 24p?

After the problems that Intel GPUs have had with displaying the 24p content another question everyone had was if the NUC can do proper 24p, meaning not 24 frames per second but 23.976 frames per second. And yes, it seems that the Bay Trail GPU gets the check mark.

Scaling

If you are watching content that is not in 1920x1080 resolution such as a normal SD television, DVD content or even 720p HD content it needs to be scaled up to 1920x1080 resolution by the HTPC. Now comes the bad news, the GPU in this NUC is too slow to support anything except the Bilinear scaling. Bilinear in my opinion is fine for 720p to 1080p scaling, but for SD TV to full HD it produces quite a blocky picture. Especially diagonal lines look bad with bilinear scaling. Note that this is only a concern with SD content, for HD content no scaling is required.

100% crop from a video where SD content has been upscaled.

Deinterlacing

Deinterlacing comes into play if you are watching interlaced content. That is typically live TV content or content recorded by a live TV backend such as Tvheadend. Due to historical reasons TV is often broadcasted in a format where only every other line is drawn on the screen (ie. for 1920x1080i video there's only 540 lines of information at broadcasted at any given moment). This was fine with CRT screens, but modern LCD screens do not really support interlaced content. Thus it needs to be deinterlaced before it can be shown properly. Deinterlacing can be done in many ways and the more sophisticated ways consume more processing power but also provide a better picture.

The graphics drivers for the Intel HD Graphics on Linux are currently in an unfortunate state and the deinterlacing is not really working as it's supposed to work. Thus the alternative is to use CPU for performing the deinterlacing. This works ok for SD content, but for content broadcast in interlaced HD format (1080i) the feeble CPU in the NUC is not able to handle the deinterlacing. Only the plain BOB works, but that provides a jittery image.

Another, rather annoying issue with the software deinterlacing is that you need to enable the option Video - Acceleration - Use SW Filter for VAAPI and then you can choose even Yadif as deinterlacing method (Yadif equals to Deinterlace method De-interlace in the settings) which provides the best result and this is fine for the SD content. However, when you try to play non-interlaced 1080p content, the SW filter option will consume CPU even if there is no deinterlacing to be done. Thus you need to switch off that option if starting to watch a 1080p video.

Again, deinterlacing is probably only an issue if you are watching live TV with your HTPC. Almost all streamed content is in progressive mode and does not need to be deinterlaced. It seems that some work is being done to enable hardware accelerated deinterlacing on the Intel GPUs, so this situation might improve in future.

Live TV

I've successfully installed Tvheadend and watching SD live TV content is not a problem. Interlaced HD TV probably is an issue due to the interlacing woes mentioned above.

Conclusion

The DE3815TYKHE surprised me with its lively performance in the menus and good performance when playing full HD videos. It is totally silent and you do not need to add any storage media as there's an intenal eMMC storage built in. It's significantly faster than a Raspberry Pi for example (but that's an unfair comparison) and OpenELEC works smoothly out of the box on it (version 4.0.2 or newer required).

On the other hand both of the Bay Trail NUCs suffer from having only 4 execution units in their GPU. The DE3815TYKHE model reviewed here gets hit even more, as the GPU is only clocked at 400 MHz vs. the 756 MHz that the DN2820FYKH model does. As a result the upscaling and deinterlacing functionality with the current drivers leaves something to be desired. The same situation applies to all Bay Trail motherboards currently.

Considering that the DE3815TYKHE is sold for more or less the same price as the other Bay Trail NUC DN2820FYKH, I'd say unless you really desperately want a fanless system, go for the DN2820FYKH. Better yet, go for an i3 model and you don't need to ever worry about upscaling or deinterlacing. Don't get me wrong, this NUC is a fine small PC, but you should be aware of its limitations.
 

             

Tuesday, May 20, 2014

Part 1: First look at the fanless Atom NUC (DE3815TYKHE)


The Fanless NUC

The new DE3815TYKHE NUC is the first NUC to come without a fan. It's also the first NUC that is based on an Atom CPU. I'll have a look at the box and it's performance. It's available as a mainboard-only version (DE3815TYB) or a full standalone kit (DE3815TYKHE). As the kit is only 20-30 dollars or euros more expensive, it's rather good deal considering you get the case and the power supply for that price.

I'll have a look at the full kit here. In part 1 I will review the new hardware and in part 2 I'm going to look at the question: does it pack enough punch to be used as a HTPC or is it hopelessly underpowered? After all, a Raspberry Pi is able to run OpenELEC...

The case is a bit larger than the previous NUCs had.


Hardware


The processor is a 1.46 GHz Atom E3815 processor that is a member of the Bay Trail family. It is only a single core CPU but the TDP is only 5 watts. This means that this CPU does not need active cooling so it is possible to build a PC without any moving parts. The GPU is an HD Graphics GPU with 4 execution units that is clocked at 400 MHz and there is no boost available. The board will take a single DDR3 SODIMM with 1.35V voltage. Maximum amount of RAM is thus 8 Gb.

Old school VGA connector in the back.


The device is very much intended for embedded systems. There is even serial port header on the main board but the NUC kit does not have a physical serial port. However, the NUC has a physical VGA connector, which I have not seen on consumer PCs for some time already. For embedded systems that might come handy though. In addition to the VGA connector, there is a full size HDMI connector at the back of the NUC.

When it comes to attaching peripherals to the NUC you've got one USB 3.0 port on the front of the chassis and two USB 2.0 ports at the rear. There's also an internal header for two more USB 2.0 ports. In addition to the USB ports you've got a combined microphone/headphone jack. Internally there is one Mini PCIe half size slot that could be used to attach a WiFi adapter for example. The WiFi antennas are built into the case. Wired Gigabit Ethernet connectivity is provided by the integrated Realtek adapter.

Interestingly the device contains 4 GB internal eMMC flash memory. This is enough to install the OpenELEC media center OS on it, so in theory there would be no need to add a drive to the device - just plug in your memory module and you're ready to go. The chassis holds space for additional 2.5 inch SATA drive.


Features of the NUC

 

No components installed in this NUC yet.


The case can be opened by unfastening a couple of screws on the bottom of the case. Adding a memory module is straight forward.

Note the SATA connectors on the left side of the case.


In case you want to add an SSD or HDD drive, the SATA connector is prewired and there is no need to add a SATA cable.

Single 1.35V DDR3L SODIMM and a WiFi adapter installed.

Installing the memory module in to the case was easy after having done it with the i3 NUC. Just remember to buy 1.35V DDR3 SODIMMs (Amazon), 1.5-volt modules won't work! The antennas for the WiFi adapter are built in to the chassis, so adding a half size Mini PCIe WiFi adapter was straightforward.

The BIOS is the standard visual BIOS that Intel has shown us already with the other NUCs. For some reason the NUC did not boot initially. It gave me no chance to enter the BIOS and tried to PXE boot directly. I had to pull the yellow BIOS security jumper out, restart the NUC and reinstall the jumper in its place before the system booted up correctly. Don't know the reason for that really. After that the NUC has been ok and has booted up ok from USB2 flash sticks and USB3 external hard disk that I have.

Installing Linux

 

I booted a Lubuntu 14.04 installer from a USB stick and successfully installed Lubuntu on the internal eMMC storage that is built-in to the NUC. Booting up the system is not lightning fast, but not slow either. The window manager works nicely and surfing the net with Firefox was fine. Overall I was surprised how snappy the system was keeping in mind that it's powered by a meager single core Atom CPU. Opening several applications simultaneously turned the system into a sluggish mode.

This is what /proc/cpu tells about the CPU:

processor : 0
vendor_id : GenuineIntel
cpu family : 6
model  : 55
model name : Intel(R) Atom(TM) CPU  E3815  @ 1.46GHz
stepping : 3
microcode : 0x31e
cpu MHz  : 532.000
cache size : 512 KB
See the full output here.

The internal eMMC disk will show up as /dev/mmcblk0. The partitions on the eMMC will be /dev/mmcblk0p1, /dev/mmcblk0p2, /dev/mmcblk0p3 etc. The  /dev/mmcblk0 can be handled with all standard tools such as fdisk. In case you don't see the device you probably don't have the correct kernel modules either built-in to the kernel or loaded. In Ubuntu 14.04 this was taken care of though, no action was necessary.

If you decide to compile your own kernel, the following options should be enabled to support the eMMC disk:

CONFIG_MMC=y 
CONFIG_MMC_BLOCK=y 
CONFIG_MMC_SDHCI=y 
CONFIG_MMC_SDHCI_PCI=y

If you don't need to boot from the eMMC, you can configure these as modules and load them at boot.

eMMC Performance

 

In order to test the eMMC performance, I first wrote a 1-gigabyte file:

$ dd if=/dev/zero of=tempfile bs=1M count=1024 conv=fdatasync,notrunc
1024+0 records in
1024+0 records out
1073741824 bytes (1,1 GB) copied, 87,8031 s, 12,2 MB/s
As you can see, this took a while. I then rebooted the system to make sure no cached data exists and run the following:

dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1,1 GB) copied, 25,8199 s, 41,6 MB/s
Now I don't claim this to be a very comprehensive test for the read and write speed, but a read speed of around 40 megabytes per second and write speed of 12 megabytes per second isn't actually superfast these days. You can probably find USB memory sticks that are faster than that. Anyhow the performance is acceptable and as with all the other components in this NUC, it was not designed to be a performance king from the beginning.

Conclusion


Overall, it's this NUC is so clearly aimed for embedded device markets that it's a bit difficult to see much desktop use for this. The single core Atom CPU just is not going to cut it if you plan to do anything heavier. Some people might be interested in using it as a silent, fanless HTPC and in the part 2 of the article I'll evaluate how well it suits that purpose. However, I believe there are other products - even within the Intel NUC product line - that are a better match for that use as well. Since there are no mechanical moving parts in this NUC it would make a perfect worry free system for digital signage or a info kiosk running in a mall or airport for example.

Maybe this could be used to create a very low power home server, when the processing power needs are modest. Or it could serve some specific development purposes. I did not try Windows on the machine and I don't see this NUC as a good platform for running Windows. Intel claims to support Windows 8, Windows 8 Embedded and Linux.

The price of this NUC is pretty much on par with the DN2820FYKH (Amazon) - the Celeron Bay Trail NUC, so we cannot avoid making the comparison between these two. The DN2820FYKH sports a much more powerful 2.4 GHz dual core CPU and still has extremely low TDP of 7.5 watts.

Reasons to choose DN2820FYKH
  • Dual-core CPU packs more grunt
  • GPU clock of 756 MHz vs. 400 MHz
  • IR receiver is integrated
  • WiFi adapter included and preinstalled 
  • Smaller case

Reasons to choose DE3815TYKHE
  • No fans
  • Internal 4GB eMMC storage
  • VGA connector
  • Interfaces for embedded device use (serial ports, eDP, etc.)


             

Monday, May 5, 2014

OpenELEC 4.0 is here (XBMC 13 as well)

Following the release of XBMC 13 'Gotham' yesterday, OpenELEC 4.0 has been released. Get yours today, much has changed since the last 3.2.4 release.

Do note that manual update or a fresh installation is recommended as too many things have changed since 3.2.4 version.

Release notes

Saturday, May 3, 2014

Installing the Memory, SSD and a WiFi Card in the NUC

I planned to do this article already a long time ago, but better late than never. Anyway, I'll show you how simple it is to install the memory, an mSATA SSD disk and a WiFi adapter in the Intel NUC. My NUC is the Haswell Core i3 model without space for a 2.5 inch drive, so I will not be showing how the 2.5" drive is installed. Other than that, the installation is more or less the same regardless of the NUC model. Some models have only 1 slot for memory or no space for an mSATA drive, so this could be a bit different.

The instructions that come with the NUC are clear, but maybe you're just thinking about buying a NUC still or have misplaced the instructions. The installation takes 5-10 minutes and is really straightforward. However, use caution to not break anything when the box is open and do disconnect the power from the NUC before opening it.

My hardware is following:

If you are interested of building a NUC for yourself, have a look at the NUC configurator!

Tools Needed

 

To install the hardware you will need a screwdriver. Ideally 2 screwdrivers, but you can manage with one only. With the bigger one you will open the box and with the smaller one you will unfasten and fasten the screws that hold the Mini PCIe cards in place. I'm using Wera screwdrivers (Buy from Amazon) as it does not get better than that. Those of you who have used one, know what I'm talking about.

Opening the NUC

 

Start by unfastening the 4 screws inside the rubber feet of the NUC. One in each corner. Now you can pull the cover off. You might need to use your finger nails a knife or some other tool to carefully pull the cover a bit off.

Installing the WiFi Adapter


We start by installing the WiFi adapter as this is easiest to do when you don't have anything else on the way. Note that it is not mandatory to install a WiFi adapter and some models are shipped with the WiFi adapter preinstalled.


Now use the smaller screwdriver to unfasten the screw that is marked with a red arrow in the picture above.


Insert the WiFi card into the slot in a slight angle as shown in the picture above.


Hold down the card with your finger and replace the screw you took off a couple of steps earlier. The screw will hold the WiFi card in its place.


The  NUC chassis is shipped with WiFi antennas preinstalled. These need to be connected to the WiFi card that we just installed in its slot. Pull back the transparent plastic covers from the antennas...


... and connect the antennas into the small connectors on the WiFi card. The connectors are really small so this might be a little bit tricky. If you've got big fingers you might want to use tweezers or a small-fingered relative for this phase.

After the antennas are connected, the WiFi adapter is ready to be used.

mSATA SSD Installation

 


Next step is the mSATA disk. After the previous phase this is really easy. Just unfasten the screw that is highlighted with a red arrow in the picture above, insert the mSATA card into the Mini PCIe slot in the same way you did with the WiFi adapter and replace the screw. You're done.

Installing the RAM Memory Modules


I'm going to add two memory modules here. One is enough, but by adding two similar modules the dual channel is enabled. RAM in dual channel mode is marginally faster than single channel. Some NUC models only have a slot for a single memory module.



Start by inserting the module at an angle in to the lower memory slot as shown in the picture above. Then push down the module as indicated by the red arrow until the memory module is securely in its place. You will hear and feel a click when the module is correctly seated.


In the picture above you can see a single memory module installed in the NUC. If you have a second module, install it in the same way you did install the first one.



Now you have two DDR3L SODIMM memory modules, the mSATA drive and the WiFi adapter installed and ready to be used.

Wrap It Up

 


Now replace the cover. Make sure you put it back in a correct orientation. One easy way to see that is to look at the thermal pad marked with a red arrow in the picture above. That should come against your mSATA drive.

Fasten the four screws and you're done! Plug in the power and take your new NUC for a ride.



Thursday, May 1, 2014

New Beta Version BIOS for Haswell NUCs

Intel has released a beta version of a new BIOS firmware for Haswell NUCs. If you're feeling adventurous, download the latest BIOS from Intel's Download Center. This works only on Haswell models (D34010WYK and D54250WYK), so don't try to do this if you run a Bay Trail or Ivy Bridge NUC.

According to Intel, this BIOS version will resolve a shutdown problem in Linux installations. Some user reports confirm that it's not any more necessary to disable the Wake On LAN feature to make the shutdown/suspend work normally.