Filter results by

MIPI/LVDS/HDMI Display

All ARTIK Linux-based modules support display panels as follows.

ARTIK 520

The ARTIK 520 has a Mali 400MP2 (two pixel) GPU.

  • Supports MIPI display EH400WV: 480x800

ARTIK 530 and 710

The ARTIK 710 has a Mali 400MP4 (four pixel) GPU; the ARTIK 530 has a Mali 400MP2 (two pixel) GPU. The driver name is utgard and it supports OpenGL ES 1.1 and 2.0. The Mali utgard DDK supports fbdev, x11, and wayland backends (with installation of the appropriate packages).

  • Supports MIPI display at resolutions up to 1080x1920
  • Supports LVDS display at resolutions up to 1920x1080
  • Supports HDMI 1.4a displays at resolutions up to 1920x1080

ARTIK 1020

The ARTIK 1020 has a Mali 628MP6 (six pixel) GPU.

  • Supports MIPI display AMS499QP84: 1080x1920
  • Supports HDMI 1.4a monitors at resolutions up to 1920x1080

When multiple displays are attached, only one of the display outputs can be enabled at a time.

Preparation

  1. With power disconnected, connect the display to the ARTIK board as follows.

    • For an LVDS or MIPI display, place both boards upside down and attach
      • the flat cable end marked "PLATFORM Board" to the connector of the ARTIK board
      • the other end marked CONx to the display.

      The connectors snap together precisely, so align them carefully before applying pressure.

    • For an HDMI display (all except ARTIK 520), use an HDMI cable with micro HDMI on one end.
  2. Upgrade your system image to the July 2016 revision or newer as described here.

  3. Download a sample .mp4 movie file. For convenience, rename it to sample.mp4 (to be used in the commands below).

  4. With the display cable connected, power up the system. You should see:
    – Two to eight Linux® penguins (depending on GPU type) during boot
    tty1 console output on the display.

Blanking Display

You can block the initial screen display by setting U-Boot environment variables as follows.

setenv opts loglevel=0 logo.nologo vt.color=0x00 vt.global_cursor_default=0
saveenv
reset

Graphical User Interface

Optionally, for a complete stand-alone solution where you can interact using the console:

  • Attach a USB keyboard and mouse
  • Set up the board with your Wi-Fi network name and password as described here
  • Download and install X Windows and Firefox.

Controlling Display

  • Turn off (blank) display
    echo 1 > /sys/class/graphics/fb0/blank
  • Turn on (unblank) display
    – as above, but use echo 0
  • Disable cursor blink
    echo 0 > /sys/class/graphics/fbcon/cursor_blink
  • Enable cursor blink
    – as above, but use echo 1

Demonstrating Display

  1. Display a .jpg file on the screen.
    fbi -T 2 test.jpg

  2. Play a movie.

    • ARTIK 520 MIPI
      mplayer -vo fbdev2 -framedrop -vf rotate=2 sample.mp4

    • ARTIK 530/710/1020 MIPI
      mplayer -vo fbdev2 -framedrop -vf rotate=1 sample.mp4

    • ARTIK HDMI
      mplayer -vo fbdev2 -framedrop sample.mp4

Using X-Windows

You can run an X11 graphical user interface on all modules except the ARTIK 520 module. For the window environment we offer LXDE for Ubuntu and Fluxbox for Fedora. Have a USB keyboard and mouse available to plug into the USB 2.0 ports to take full advantage of your mini PC!

ARTIK Driver Setup

These instructions are for 32-bit Ubuntu platforms (ARTIK 520 and 530).

  1. Start as always with a general update.
    apt update
    apt upgrade
  2. Install base packages.
    apt install build-essential xorg
  3. Download the set of files to your development PC, then uncompress and copy them to your ARTIK root.

    ARTIK 520/530 (32-bit)

  4. Install graphics drivers.
    dpkg -i opengl-es-mali-utgard-x11_7.0-2.1_armhf.deb
    dpkg -i xserver-xorg-video-armsoc-nexell_1.4.0-0ubuntu2.1_armhf.deb


These instructions are for 64-bit Ubuntu platforms (ARTIK 710).

  1. Start as always with a general update.
    apt update
    apt upgrade
  2. Install base packages.
    apt install build-essential xorg
  3. Download the set of files to your development PC, then uncompress and copy them to your ARTIK root.

    ARTIK 710 (64-bit)

  4. Install graphics drivers.
    dpkg -i opengl-es-mali-utgard-x11_7.0-2.1_arm64.deb
    dpkg -i xserver-xorg-video-armsoc-nexell_1.4.0-0ubuntu2.1_arm64.deb


These instructions are for Fedora platforms.

Start as always with a general update.
dnf upgrade

X-Windows Installation

Install the following packages for basic cursor support.

apt install libxcb-cursor0

apt install xcursor-themes

apt install policykit-1

The remaining packages are optional.

apt install xserver-xorg-video-fbdev

apt install xkb-data

apt install policykit-desktop-privileges

Install the following packages.

dnf install xorg-x11-*

dnf install xorg-x11-drv-evdev.armv7hl

dnf install xinit

dnf install mesa*

Desktop Environment Installation

  1. Install a minimal LXDE desktop environment.

    apt install lxde
    apt install lubuntu-icon-theme
  2. Install Firefox version 45. Later versions may not be compatible.

    apt install firefox=45*
  1. Install the Fluxbox window manager.
    dnf install fluxbox
  2. Create a file /root/.xinitrc with the contents:
    exec /usr/bin/startfluxbox
  3. Install Firefox version 47. Later versions may not be compatible.
    dnf install firefox-47.0-4.fc24 --allowerasing
  4. Edit the ~/.fluxbox/menu file to enter the Firefox file path into the Fluxbox menu. After you edit the entry it should look like:
    [exec] (firefox) {/usr/bin/firefox}

X-Windows Operation

Launch the X-window program by running

startx

  • LXDE: Click the Web Browser icon (among those in the bottom left grouping) to run Firefox.

  • Fluxbox: Right-click the mouse to get to a menu where you can run Firefox.

If Firefox Internet access is blocked, you can configure it to go through your corporate proxy as noted here.

Using Qt

Qt for Embedded Linux is a cross-platform C++ application framework with widgets that provide GUI functionality. You can run a Qt graphical user interface on LVDS, MIPI, or HDMI (except ARTIK 520). A MIPI display with a built-in touch screen is the best way to see the results. There is no need to install the X11 environment (and you will encounter package conflicts if you try to install both).

Qt Package Installation

Qt does not supply a window system, so here we'll use the EGL platform plugin EGLFS.

These instructions are for 32-bit Ubuntu platforms (ARTIK 520 and 530).

  1. Download the set of files to your development PC, then uncompress and copy them to your ARTIK root.

    ARTIK 520/530 (32-bit)

  2. Start as always with a general update.
    apt update
    apt upgrade
  3. Install the DRM libraries. It's a large set, as the 'libdrm-dev' library has all sorts of GPU libraries as dependencies.
    dpkg -i libdrm*.deb
  4. Install the Wayland libraries.
    dpkg -i libwayland*.deb
  5. Install the required Qt5 packages.
    apt install qt5-default qtwayland5
    apt install qmlscene qml-module-qtgraphicaleffects
  6. Install Qt5 example files.
    apt install qtbase5-examples qtquick1-5-examples
    apt install qtdeclarative5-examples
  7. Install opengl libraries.
    dpkg -i opengl-es-mali-utgard-wayland_7.0-2.1_armhf.deb
    Failed to install? See below.
  8. Create a file 'kms.json' in your root directory or elsewhere to hold the configuration parameters.
    a) Put the following lines in it, editing out the unneeded display devices.
       UNKNOWN1 refers to the MIPI display.
    {
      "device": "/dev/dri/card0",
      "hwcursor": false,
      "outputs": [
        {
        "name": "LVDS1",
        "mode": "1024x600"
        },
        {
        "name": "UNKNOWN1",
        "mode": "1080x1920"
        },
        {
        "name": "HDMI1",
        "mode": "1920x1080"
        }
      ]
    }

    b) Add these lines to your /etc/profile or other start-up batch file to point Qt to the right parameters. Use the path you chose above for 'kms.json'.
    export QT_QPA_PLATFORM=eglfs
    export QT_QPA_EGLFS_KMS_CONFIG=~/kms.json


Now you can run some of the demonstration programs. Start with Cube.

cd /usr/lib/arm-linux-gnueabihf/qt5/examples/opengl/cube

./cube

Use the touch screen (MIPI/LVDS) or mouse (HDMI) to manipulate the cube.

Note: If you get an error message due to a previously installed opengl X11 driver, uninstall it:
dpkg -r opengl-es-mali-utgard-x11
then retry the Wayland opengl installation.

These instructions are for 64-bit Ubuntu platforms (ARTIK 710).

  1. Download the set of files to your development PC, then uncompress and copy them to your ARTIK root.

    ARTIK 710 (64-bit)

  2. Start as always with a general update.
    apt update
    apt upgrade
  3. Install the DRM libraries. It's a large set, as the 'libdrm-dev' library has all sorts of GPU libraries as dependencies.
    dpkg -i libdrm*.deb
    apt install -f
  4. Install the Qt5 base libraries.
    apt install qt5-default qtwayland5
  5. Install the Qt5 debs in a separate directory.
    tar xf qt5-debs.tar.gz
    cd qt5-debs
    dpkg -i *.deb
    apt install -f
    cd
  6. Install the Qt5 development libraries.
    apt install qmlscene qml-module-qtgraphicaleffects
  7. Install Qt5 example files in a separate directory.
    tar xf qt5-examples-debs.tar.gz
    cd qt5-examples-debs
    dpkg -i *.deb
    apt install -f
    cd
  8. Install opengl libraries.
    dpkg -i opengl-es-mali-utgard-wayland_7.0-2.1_arm64.deb
    Failed to install? See below.
  9. Create a file 'kms.json' in your root directory or elsewhere to hold the configuration parameters.
    a) Put the following lines in it, editing out the unneeded display devices.
       UNKNOWN1 refers to the MIPI display.
    {
      "device": "/dev/dri/card0",
      "hwcursor": false,
      "outputs": [
        {
        "name": "LVDS1",
        "mode": "1024x600"
        },
        {
        "name": "UNKNOWN1",
        "mode": "1080x1920"
        },
        {
        "name": "HDMI1",
        "mode": "1920x1080"
        }
      ]
    }

    b) Add these lines to your /etc/profile or other start-up batch file to point Qt to the right parameters. Use the path you chose above for 'kms.json'.
    export QT_QPA_PLATFORM=eglfs
    export QT_QPA_EGLFS_KMS_CONFIG=~/kms.json


Now you can run some of the demonstration programs. Start with Cube.

cd /usr/lib/aarch64-linux-gnu/qt5/examples/opengl/cube

./cube

Use the touch screen (MIPI/LVDS) or mouse (HDMI) to manipulate the cube.

Note: If you get an error message due to a previously installed opengl X11 driver, uninstall it:
dpkg -r opengl-es-mali-utgard-x11
then retry the Wayland opengl installation.

These instructions are for Fedora 24 platforms.

  1. Download the set of files to your development PC, then uncompress and copy them to your ARTIK root.

    ARTIK 520/530/710     

  2. Start as always with a general update.
    dnf upgrade
  3. Install the Qt5 libraries.
    tar xf qt5-5.6.2-rpms.tar.gz
    cd qt5-rpms
    dnf install *.rpm --allowerasing
    cd
  4. Install Qt5 development libraries.
    tar xf qt5-5.6.2-devel-rpms.tar.gz
    cd qt5-devel-rpms
    dnf install *.rpm --allowerasing
    cd
  5. Install Qt5 example files.
    tar xf qt5-5.6.2-examples-rpms.tar.gz
    cd qt5-examples-rpms
    dnf install *.rpm --allowerasing
    cd
  6. Install opengl libraries.
    rpm -ivh opengl-es-mali-utgard-wayland-7.0-0.armv7hl.rpm
  7. Create a file 'kms.json' in your root directory or elsewhere to hold the configuration parameters.
    a) Put the following lines in it, editing out the unneeded display devices.
       UNKNOWN1 refers to the MIPI display.
    {
      "device": "/dev/dri/card0",
      "hwcursor": false,
      "outputs": [
        {
        "name": "LVDS1",
        "mode": "1024x600"
        },
        {
        "name": "UNKNOWN1",
        "mode": "1080x1920"
        },
        {
        "name": "HDMI1",
        "mode": "1920x1080"
        }
      ]
    }

    b) Add these lines to your /etc/profile or other start-up batch file to point Qt to the right parameters. Use the path you chose above for 'kms.json'.
    export QT_QPA_PLATFORM=eglfs
    export QT_QPA_EGLFS_KMS_CONFIG=~/kms.json

Now you can run some of the demonstration programs. Start with Cube.

cd /usr/lib/qt5/examples/opengl/cube

./cube

Use the touch screen (MIPI/LVDS) or mouse (HDMI) to manipulate the cube.

HDMI EDID Workaround

The ARTIK 530, 710, and 1020 boards enable HDMI operation from boot time. Simply having an HDMI monitor plugged in before booting, and having the board updated to the latest firmware, should be sufficient to enable HDMI operation at boot – you should initially see Linux penguins on the screen, followed by a login prompt.

You can either use your normal terminal emulator (connected to the debug serial port) and its keyboard for command entry, or can plug in a USB keyboard and mouse to the stacked USB connectors on the ARTIK board to use the local port for standard input.

If your ARTIK board does not display anything on the HDMI output at boot time, follow the instructions below. This is typically an issue only on early version ARTIK 1020 boards built prior to 2016, but could happen on later boards if the board cannot correctly read the EDID ROM in the monitor.

  1. Enter the u-boot shell during countdown (at the "Hit any key…" line):

    Checking Boot Mode ... EMMC  
    .
    .
    Net: No ethernet found.  
    Hit any key to stop autoboot: 0
    ARTIK10 #
  2. Run the three commands below in sequence, specifying your monitor resolution within the first one (e.g. 1920x1080).

    setenv opts loglevel=4 drm_kms_helper.edid_firmware=HDMI-A-1:edid/1920x1080.bin

    saveenv

    reset

You should have normal HDMI operation on the next boot.

Last updated on: