GuruCE releases major new version of their iMX6 BSP

Document created by grantw on Jul 9, 2015Last modified by Diana Torres on Feb 28, 2017
Version 2Show Document
  • View in full screen mode

In this new version, the experts at GuruCE have achieved some major improvements in performance and added quite a lot of new functionality:

  • 4.75x faster than our previous release

This is >6x faster than our competitor's BSP...

  • Added full HDMI support, including display auto-detection, hot-plug and dynamic resolution changes in CE

This means you can plug in a 1360x768 monitor and have the CE desktop shown in that resolution, then unplug the monitor and plug in a 1920x1080 monitor and CE will dynamically change resolution and show the desktop in 1920x1080 resolution, all this of course without the purple line on the left (a long-standing problem in all the other iMX6 BSPs available).

  • HDMI, LVDS and LCD display output is now configurable in the bootloader

This means you can have one kernel image for all. Just go into the bootloader menu and select which display you are using at which resolution and launch the kernel. Simple as that!

  • Added support for DMA on all UARTs

Full RX & TX DMA support on UART1, 2, 3, 4 and 5.

  • Upgraded to the latest Vivante GPU GALCORE driver v5.0.11 (25762)

And we added all the tutorials and test code as well. Together with the amazing performance increase of this release you can now enjoy 110+ fps in full-screen 1920x1080 (and 350+ fps windowed) for OpenGL-ES 1.1/2.0! The OpenVG spinning tiger sample is now so fast you only see a blur, and we fully support OpenCL on Dual and Quad of course.

  • Now asynchronously loading drivers for faster boot
  • Added free downloadable demo kernel for Congatec-QMX6 (Dual/Quad, 1 GB module) on a QKIT-ARM
  • Maximum CPU temperature at rest: 45°C / 113°F
  • Maximum CPU temperature while running OpenGL-ES 2.0 reflecting ball: 65°C / 149°F

This is not nearly as low as we would like, but it's a lot better already. Our next release will focus on power consumption and heat generation reductions.

  • Improved network performance

The performance improvements also make Ethernet throughput a lot better. We're only halfway to reaching the theoretical maximum possible on the iMX6 of ~45 Mbyte/s (it's on our list of things to fix), but at least Ethernet speeds are out of the KByte range now (tested using NETIO on WEC7 & WEC2013):

NETIO - Network Throughput Benchmark, Version 1.32
(C) 1997-2012 Kai Uwe Rommel

TCP connection established.
Packet size 1k bytes: 19.11 MByte/s Tx, 19.22 MByte/s Rx.
Packet size 2k bytes: 21.22 MByte/s Tx, 20.38 MByte/s Rx.
Packet size 4k bytes: 22.44 MByte/s Tx, 20.85 MByte/s Rx.
Packet size 8k bytes: 23.06 MByte/s Tx, 22.43 MByte/s Rx.
Packet size 16k bytes: 20.67 MByte/s Tx, 19.38 MByte/s Rx.
Packet size 32k bytes: 20.79 MByte/s Tx, 20.58 MByte/s Rx.

UDP connection established.
Packet size 1k bytes: 13.84 MByte/s (0%) Tx, 13.76 MByte/s (0%) Rx.
Packet size 2k bytes: 15.97 MByte/s (0%) Tx, 15.97 MByte/s (0%) Rx.
Packet size 4k bytes: 20.25 MByte/s (0%) Tx, 19.83 MByte/s (0%) Rx.
Packet size 8k bytes: 22.39 MByte/s (0%) Tx, 22.49 MByte/s (0%) Rx.
Packet size 16k bytes: 19.34 MByte/s (0%) Tx, 17.95 MByte/s (0%) Rx.
Packet size 32k bytes: 21.78 MByte/s (0%) Tx, 21.17 MByte/s (0%) Rx.

Further details in the release notes.

Don't believe the hype? Try it yourself!

We've got free downloadable demo kernels for the RIoTboard, the SABRE-Lite, the Nitrogen6X, the Opal6, the ConnectCore6 and now also the Conga-QMX6.

GuruCE website:
iMX6 landing page:
Latest iMX6 BSP r474: